templates/base.html.twig line 1

Open in your IDE?
  1. <!DOCTYPE html>
  2. <html lang="fr">
  3.     <head>
  4.         <meta charset="UTF-8">
  5.         <title>{% block title %}TripUp{% endblock %}</title>
  6. <meta name="google-site-verification" content="la6glPw59cAFTruAoSTPq1qq4qS--RTwCWUQO_krZxI" />
  7.         
  8.     <meta name="viewport" content="width=device-width, initial-scale=1.0" />
  9.     <link rel="apple-touch-icon" sizes="57x57" href="{{ asset('img/apple-icon-57x57.png') }}">
  10. <link rel="apple-touch-icon" sizes="60x60" href="{{ asset('img/apple-icon-60x60.png') }}">
  11. <link rel="apple-touch-icon" sizes="72x72" href="{{ asset('img/apple-icon-72x72.png') }}">
  12. <link rel="apple-touch-icon" sizes="76x76" href="{{ asset('img/apple-icon-76x76.png') }}">
  13. <link rel="apple-touch-icon" sizes="114x114" href="{{ asset('img/apple-icon-114x114.png') }}">
  14. <link rel="apple-touch-icon" sizes="120x120" href="{{ asset('img/apple-icon-120x120.png') }}">
  15. <link rel="apple-touch-icon" sizes="144x144" href="{{ asset('img/apple-icon-144x144.png') }}">
  16. <link rel="apple-touch-icon" sizes="152x152" href="{{ asset('img/apple-icon-152x152.png') }}">
  17. <link rel="apple-touch-icon" sizes="180x180" href="{{ asset('img/apple-icon-180x180.png') }}">
  18. <link rel="icon" type="image/png" sizes="192x192"  href="{{ asset('img/android-icon-192x192.png') }}">
  19. <link rel="icon" type="image/png" sizes="32x32" href="{{ asset('img/favicon-32x32.png') }}">
  20. <link rel="icon" type="image/png" sizes="96x96" href="{{ asset('img/favicon-96x96.png') }}">
  21. <link rel="icon" type="image/png" sizes="16x16" href="{{ asset('img/favicon-16x16.png') }}">
  22. <link rel="manifest" href="{{ asset('img/manifest.json') }}">
  23. <meta name="msapplication-TileColor" content="#ffffff">
  24. <meta name="msapplication-TileImage" content="{{ asset('img/ms-icon-144x144.png') }}">
  25. <meta name="theme-color" content="#ffffffff">
  26.         <link rel="stylesheet" type="text/css" media="all" href="{{ asset('css/react-datepicker.css') }}">
  27.         <link rel="stylesheet" type="text/css" media="all" href="{{ asset('css/style.css') }}">
  28.         {% block stylesheets %}{% endblock %}
  29.         <!-- Global site tag (gtag.js) - Google Analytics -->
  30. <script async src="https://www.googletagmanager.com/gtag/js?id=G-BJ3LL516DG"></script>
  31. <script>
  32.   window.dataLayer = window.dataLayer || [];
  33.   function gtag(){dataLayer.push(arguments);}
  34.   gtag('js', new Date());
  35.   gtag('config', 'G-BJ3LL516DG');
  36. </script>
  37.     </head>
  38.     <body id="body">
  39. {% set route_name = app.request.attributes.get('_route') %}
  40. <div id="menuToggle"> 
  41.     <input id="burger" type="checkbox" /> 
  42.     <span></span>
  43.     <span></span>
  44.     <span></span>
  45.     </div>
  46.     <header id="header">
  47.         <div class="logo-container">
  48.             <a href="{{path('accueil')}}"><img src="{{asset('img/logo tripup.svg')}}" class="logoimg" height="41px" alt="logo"></a>
  49.             <h3><span>TRIP</span>orteurs <span>U</span>tilitaires de <span>P</span>roximité</h3>
  50.         </div>
  51.         <div class="keeplace"></div>
  52.         <div id="nav" class="nav">
  53.             <ul class="nav list-item">
  54.                 <li {% if route_name == 'accueil' %} class="item-menu active" {% else %} class="item-menu" {% endif %}>
  55.                     <a href="{{path('accueil')}}">Accueil</a>
  56.                 </li>
  57.                  <li {% if route_name == 'home' %} class="item-menu active" {% else %} class="item-menu" {% endif %}>
  58.                     <a href="{{path('home')}}">Nos véhicules</a>
  59.                 </li>
  60.                 <li {% if route_name == 'surmesure' %} class="item-menu active" {% else %} class="item-menu" {% endif %}>
  61.                     <a href="{{path('surmesure')}}">Sur-mesure</a>
  62.                 </li>
  63.                 <li {% if route_name == 'mariages' %} class="item-menu active" {% else %} class="item-menu" {% endif %}>
  64.                     <a href="{{path('mariages')}}">Mariages</a>
  65.                 </li>
  66.                 <li {% if route_name == 'blog' %} class="item-menu active" {% else %} class="item-menu" {% endif %}>
  67.                     <a href="{{path('blog')}}">Blog</a>
  68.                 </li>
  69.                 <li {% if route_name == 'faq' %} class="item-menu active" {% else %} class="item-menu" {% endif %}>
  70.                     <a href="{{path('faq')}}">FAQ</a>
  71.                 </li>
  72.                 <li {% if route_name == 'about' %} class="item-menu active" {% else %} class="item-menu" {% endif %}>
  73.                     <a href="{{path('about')}}">A propos</a>
  74.                 </li>
  75.                 <li {% if route_name == 'contact' %} class="item-menu active" {% else %} class="item-menu" {% endif %}>
  76.                     <a href="{{path('contact')}}">Contactez-nous !</a>
  77.                 </li>
  78.                 <li {% if route_name == 'sdfsdf' %} class="item-menu active img-head" {% else %} class="item-menu img-head" {% endif %}>
  79.                    {% if app.user %}
  80.                     <a href="javascript:ardconn()" ><img src="{{asset('img/users.png')}}" width="22px" alt="Page utilisateur"></a>
  81.                     {% else %}
  82.                     <a href="javascript:cnx()" ><img src="{{asset('img/users.png')}}" width="22px" alt="Connexion"></a>
  83.                     {% endif %}    
  84.                 </li>
  85.                 <li {% if route_name == 'sdfsfd' %} class="item-menu active" {% else %} class="item-menu" {% endif %}>
  86.                     <a href="javascript:void()"><img src="{{asset('img/fr.png')}}" class="img-drap" alt="Langue française"></a>
  87.                 </li>
  88.                 
  89.             </ul>
  90.         </div>
  91.         <div class="reseaux">
  92.         <ul>
  93.                     <li class="item-menu img-head">
  94.                         <a href="https://twitter.com/TRIPUP2" rel="noreferrer" target="_blank"><img src="{{asset('img/logos tweeter.svg')}}"  alt="Twitter"></a>
  95.                     </li>
  96.             <li class="item-menu img-head">
  97.                         <a href="https://www.facebook.com/Tripup-Rickshaws-Taxi-Bikes-and-Advertising-Company-774123479276251" rel="noreferrer" target="_blank"><img src="{{asset('img/logos f.svg')}}" alt="Facebook" ></a>
  98.                     </li>
  99.                     <li class="item-menu img-head">
  100.                         <a href="https://www.instagram.com/tripup.fr/" rel="noreferrer" target="_blank"><img src="{{asset('img/logos insta.svg')}}"  alt="Instagram"></a>
  101.                     </li>
  102.                     <li class="item-menu img-head">
  103.                         <a href="https://www.pinterest.fr/Tripup75/_created/" rel="noreferrer" target="_blank"><img src="{{asset('img/logos pin.svg')}}"  alt="Pinterest"></a>
  104.                     </li>
  105.                     <li class="item-menu img-head">
  106.                         <a href="https://www.linkedin.com/company/tripup/" rel="noreferrer" target="_blank"><img src="{{asset('img/logos link.svg')}}"  alt="Linkedin"></a>
  107.                     </li>
  108.             </ul>
  109.         </div>
  110.     </header>
  111.     <div class="logodiv"><img src="{{ asset('img/logodevis.jpg') }}" class="logoimg" alt="Logo tripup"></div>
  112.     <nav id="menu" class="">
  113.         <a href="{{ path('home_log') }}" class="usersimg" id="myBtn"></a>
  114.     </nav>
  115.     {% if devisval is defined %}
  116.         {% if devisval == true %}
  117.             <div id="mod" data-devisval="true"></div>
  118.         {% else %}
  119.             <div id="mod"></div>
  120.         {% endif %}
  121.     {% else %}
  122.         <div id="mod"></div>
  123.     {% endif %}
  124.     <div id="modalinfo" style="display: none;">
  125.     <div id="modal_info">
  126.     <span class="close" onclick="closeinfo()">X</span>
  127.     <h4>Besoin d'informations</h4>
  128.     <h6>VOS COORDONNÉES </h6> 
  129.     <form id="forminfo" name="forminfo" action="">
  130. <div class="demileft">
  131.     <label for="">Nom</label><br \="">
  132.     <input type="text" name="form_nom">
  133. </div>
  134.    <div class="demiright">
  135.     <label for="">Prénom</label><br \="">
  136.     <input type="text" name="form_prenom">
  137. </div>
  138. <div class="demileft">
  139.     <label for="">Email *</label><br \="">
  140.     <input type="text" name="form_email" required="">
  141. <div id="error_form_email_info" class="error"><p>Merci de renseigner votre Email</p></div>
  142. </div>
  143.    <div class="demiright">
  144.     <label for="">Téléphone *</label><br \="">
  145.     <input type="text" name="form_tel" required="">
  146. <div id="error_form_tel_info" class="error"><p>Merci de renseigner votre numéro de téléphone</p></div>
  147. </div>
  148. <div>
  149.     <label for="">Précisez votre question</label><br \="">
  150.     <textarea name="votre_projet" id="" cols="30" rows="10" required=""></textarea>
  151. </div>
  152. <div id="massageenvoye_info"></div>
  153. <p>* Champs requis pour effectuer la demande</p>
  154. <input type="submit" onclick="sendemandeinfo(event)" value="Envoyer la demande">
  155.     
  156.     </form>
  157.     </div>
  158.     </div>
  159.     <div id="modalreduc">
  160.     <div id="modal_reduc">
  161.     <span class="close" onclick="closereduc()">X</span>
  162.     <h4>Demande de réduction</h4>
  163.     <p>Merci de ne remplir que les catégories qui vous intéressent</p>
  164.     <form id="formreduc" name="formreduc" action="">
  165.     <h6 class="cliquable" id="title_1" onclick="openreducelem(1)">VOUS AVEZ TROUVÉ DES PRIX MOINS CHERS AILLEURS</h6>
  166.     <div class="elem1">
  167.     <label for="">Indiquez un lien web avec des tarifs moins chers pour des produits similaires et/ou joignez 1 ou des devis de confrères</label> 
  168.     <input type="text" name="lienweb" placeholder="" />
  169.     </div>
  170.     <h6 class="cliquable" id="title_2" onclick="openreducelem(2)">MODELES, DATES ET NOMBRE DE VEHICULES *</h6>
  171.     <div class="elem2">
  172.     <label for="">Etes-vous plutôt intéressé par de la location ou de l'achat ? *</label><br \>
  173.     <input type="radio" name="achatouloc" id="achatouloc_ach" value="Achat" required/><label for="achatouloc_ach" id="achatouloc_ach_name">Achat</label>
  174.     <input type="radio" name="achatouloc" id="achatouloc_loc" value="location" required/><label for="achatouloc_loc" id="achatouloc_loc_name">Location</label>
  175. <br \>
  176. <div id="error_achatouloc" class="error"><p>Merci de préciser si vous souhaitez louer ou acheter nos véhicules</p></div>
  177.     <label for="">Indiquez le nom du ou des véhicule(s) qui vous intéresse(nt) sur notre site</label><br \>
  178.     <input type="text" name="vehicvoulu" />
  179. <br \>
  180.     <label for="">Si vous avez besoin d'un véhicule qui n'est pas sur notre site, décrivez-le et envoyez nous des croquis, liens web…</label><br \>
  181.     <textarea name="infovehicule" id="" cols="30" rows="10"></textarea>
  182. <br \>
  183. <div class="demileft"><label for="">Si c'est pour de la location et que vous ne connaissez pas encore vos dates, indiquez le nombre de jours souhaités *</label><br \><input type="number" name="nb_de_jours"></div>
  184.    <div class="demiright">
  185.    <label for="">Le nombre de véhicules *</label><br \>
  186.     <input type="number" name="nb_vehicules" required/>
  187. <div id="error_nb_vehicules" class="error"><p>Merci d'indiquer le nombre de véhicules que vous souhaitez</p></div>
  188.    </div>
  189. <div class="demileft"><label for="">Ou la date de début, sur le modèle : JJ/MM/AAAA , que ce soit pour de la location ou de l'achat *</label><br \>
  190.     <input type="date" name="date_debut" />
  191. </div>
  192.    <div class="demiright">
  193.     <label for="">Et la date de fin, sur le modèle :  JJ/MM/AAAA , uniquement si c'est pour de la location *</label><br \>
  194.     <input type="date" name="date_fin" />
  195. </div>
  196.    
  197. <div id="error_nd_jours" class="error"><p>Merci d'indiquer un nombre de jours ou une date de début et de fin pour la location.</p></div>
  198. </div>
  199.     <h6 class="cliquable" id="title_3" onclick="openreducelem(3)">VOTRE BUDGET *</h6>
  200.     <div class="elem3">
  201.     <label for="">Indiquez votre budget TTC, en tapant simplement un nombre, sans le signe euro (€), et pour l'ensemble des véhicules *</label><br \>
  202.     <input type="number" name="budget_location" required/>
  203. <div id="error_budget_location" class="error"><p>Merci d'indiquer le budget dont vous disposez</p></div>
  204. </div>
  205.     <h6 class="cliquable" id="title_4" onclick="openreducelem(4)">EQUIPEMENTS (réfrigérateurs, assistance électrique…) *</h6>
  206.     <div class="elem4">
  207.     <label for="">Avez-vous besoin d’une assistance électrique ? *</label><br \>
  208.     <input type="radio" name="assiselect" id="assiselect_oui" value="Oui" required/><label for="assiselect_oui" id="assiselect_oui_name">Oui</label>
  209.     <input type="radio" name="assiselect" id="assiselect_non" value="Non" required/><label for="assiselect_non" id="assiselect_non_name">Non</label>
  210.     <br />
  211. <div id="error_assiselect" class="error"><p>Merci de préciser si vous souhaitez un véhicules équipé d'une assistance électrique</p></div>
  212.      <label for="">Indiquez simplement les équipements dont vous auriez besoin, la quantité... :</label><br \>
  213.     <textarea name="equipements_voulu" id="" cols="30" rows="10"></textarea>
  214. <br \>
  215.     <label for="">Indiquez votre budget pour les équipements, en tapant simplement un nombre, sans le signe euro (€)</label><br \>
  216.     <input type="number" name="budget_equipement" />
  217. </div>
  218.     <h6 class="cliquable" id="title_5" onclick="openreducelem(5)">HABILLAGE PUBLICITAIRE </h6>
  219.     <div class="elem5">
  220.     <label for="">Avez-vous besoin d'un total covering ou est-ce qu'un simple covering partiel pourrait convenir ?</label><br \>
  221.     <input type="text" name="besoin_cover" />
  222.     <label for="">Indiquez votre budget pour l'habillage publicitaire, en tapant simplement un nombre, sans le signe euro (€).</label><br \>
  223.     <input type="text" name="budget_pub" />
  224.     <label for="">Précisez si ce budget serait pour un total covering ou pour un covering partiel</label><br \>
  225.     <input type="text" name="info_cover" />
  226. </div>
  227.     <h6 class="cliquable" id="title_6" onclick="openreducelem(6)">PERSONNEL (pilote, hôtesses…) </h6>
  228.     <div class="elem6">
  229.     <label for="">De quel type de personnel auriez-vous besoin ?</label><br \>
  230.     <input type="text" name="besoin_perso" />
  231.     <label for="">Pour combien de jours et pendant combien d'heures par jour ?</label><br \>
  232.     <input type="text" name="nb_jours_perso" />
  233.     <p>Indiquez la date de début et la date de fin sur le modèle JJ/MM/AAAA, et si possible les horaires de début et de fin sur le modèle HH:MM</p>
  234. <div class="demileft">
  235.     <label for="">Date de début (si possible)</label><br \>
  236.     <input type="date" name="date_debut_perso" />
  237. </div>
  238.    <div class="demiright">
  239.     <label for="">Date de fin (si possible)</label><br \>
  240.     <input type="date" name="date_fin_perso" />
  241. </div>
  242. <div class="demileft">
  243.     <label for="">Horaires de début (si possible)</label><br \>
  244.     <input type="time" name="horaire_debut_perso" />
  245. </div>
  246.    <div class="demiright">
  247.     <label for="">Horaires de fin (si possible)</label><br \>
  248.     <input type="time" name="horaire_fin_perso" />
  249. </div>
  250.  
  251.     <label for="">Indiquez votre budget pour du personnel, en tapant simplement un nombre, sans le signe euro (€)</label><br \>
  252.     <input type="number" name="budget_perso" />
  253. </div>
  254.     <h6 class="cliquable" id="title_7" onclick="openreducelem(7)">LIVRAISON ET/OU REPRISE DES VEHICULES ET/OU DES EQUIPEMENTS</h6>
  255.     <div class="elem7">
  256. <div class="demileft">
  257. <label for="">Indiquez le nom de la ville où livrer le matériel, si vous souhaitez que l'on se charge de la livraison</label><br \>
  258.     <input type="text" name="ville_livraison" />
  259. </div>
  260.    <div class="demiright"> 
  261.    <label for="">Indiquez votre budget pour la livraison du matériel (si vous souhaitez que l'on s'en charge) en tapant simplement un nombre, sans le signe euro (€)</label><br \>
  262.     <input type="number" name="budget_livraison" />
  263. </div>
  264. <div class="demileft"> 
  265. <label for="">Indiquez le nom de la ville dans laquelle retirer le matériel, si vous souhaitez que l'on se charge de la reprise</label><br \>
  266.     <input type="text" name="ville_reprise" />
  267. </div>
  268.    <div class="demiright"> 
  269.    <label for="">Indiquez votre budget pour la reprise du matériel (si vous souhaitez que l'on s'en charge) en tapant simplement un nombre, sans le signe euro (€)</label><br \>
  270.     <input type="number" name="budget_reprise" />
  271. </div>
  272. </div>
  273.     <h6 class="cliquable" id="title_8" onclick="openreducelem(8)">VOTRE PROJET + EVENTUELLES CONTREPARTIES *</h6>
  274.     <div class="elem8">
  275.     <label for="">Votre projet, en quelques mots *</label><br \>
  276.     <textarea name="votre_projet" id="" cols="30" rows="10" required></textarea>
  277. <div id="error_votre_projet" class="error"><p>Merci d'indiquer pour quel projet/besoin vous souhaiter ce(s) véhicules</p></div>
  278.     <label for="">Quelles seraient les éventuelles contreparties (échange marchandise) que vous pourriez nous proposer en échange d’une remise ? Ex : des plats si vous êtes un restaurant, de la visibilité publicitaire… *</label><br \>
  279.     <textarea name="contrepartie_projet" id="" cols="30" rows="10" required></textarea>
  280. <div id="error_contrepartie_projet" class="error"><p>Merci de donner plus d'informations sur d'éventuels contreparties</p></div>
  281. </div>
  282.     <h6>VOS COORDONNÉES </h6> 
  283. <div class="demileft">
  284.     <label for="">Nom</label><br \>
  285.     <input type="text" name="form_nom" />
  286. </div>
  287.    <div class="demiright">
  288.     <label for="">Prénom</label><br \>
  289.     <input type="text" name="form_prenom" />
  290. </div>
  291. <div class="demileft">
  292.     <label for="">Email *</label><br \>
  293.     <input type="text" name="form_email" required />
  294. <div id="error_form_email" class="error"><p>Merci de renseigner votre Email</p></div>
  295. </div>
  296.    <div class="demiright">
  297.     <label for="">Téléphone *</label><br \>
  298.     <input type="text" name="form_tel" required />
  299. <div id="error_form_tel" class="error"><p>Merci de renseigner votre numéro de téléphone</p></div>
  300. </div>
  301. <div id="massageenvoye"></div>
  302. <p>* Champs requis pour effectuer la demande</p>
  303. <input type="submit" onclick="sendemande(event)" value="Envoyer la demande">
  304.     
  305.     </form>
  306.     </div>
  307.     </div>
  308.     
  309.         {% block body %}{% endblock %}
  310.         <div id="footer">
  311.         <a href="{{path('mentionslegales')}}" class="mentionsleg" target="_blank">Mentions légales</a>
  312.         </div>
  313.         <div id="footercoock">
  314.         </div>
  315.         {% block javascripts %}{% endblock %}
  316.         
  317.         <script src="{{ asset('js/front.js') }}"></script>  
  318.         <link rel="stylesheet" href="{{ asset('css/purecookie.css') }}">   
  319.  <script defer async src="{{ asset('js/purecookie.js') }}"></script>
  320.          <script>
  321.     function ardconn(){
  322.         document.getElementById('mod').innerHTML = '<div id="myModal" class="modalreg"><div class="modalreg2" onclick="closebut()"></div> <div class="modal-content"><span class="close" onclick="closebut()">X</span><div id="connexion"><h3>Vous êtes déjà connecté<br /><a href="{{path('securedamin_logout')}}" class="btn btn-danger">Déconnexion</a></h3></div></div></div>'; 
  323.     }
  324.     function cnx(){
  325.         console.log('load modal')
  326.         
  327.         let http = ''
  328.       if (location.protocol == 'https:')
  329.         {
  330.           http = 'https:' 
  331.         }else{
  332.           http = 'http:' 
  333.         }
  334.       let urlreq = http+'//'+window.location.host +`/login`;
  335.       fetch (urlreq, {
  336.         method: 'GET', 
  337.         credentials: 'include'
  338.         }) 
  339.       .then(function(response) {
  340.         // When the page is loaded convert it to text
  341.         return response.text()
  342.     })
  343.     .then(function(html) {
  344.         // Initialize the DOM parser
  345.         var parser = new DOMParser();
  346.         // Parse the text
  347.      //   var doc = parser.parseFromString(html, "text/html");
  348.         // You can now even select part of that html as you would in the regular DOM 
  349.         // Example:
  350.         // var docArticle = doc.querySelector('article').innerHTML;
  351.      //   console.log(doc);
  352.         document.getElementById('mod').innerHTML = html; 
  353.     })
  354.     .catch(function(err) {  
  355.         console.log('Failed to fetch page: ', err);  
  356.     });
  357.         
  358.     }
  359.     
  360. function registr() {
  361. let connexion = document.getElementById("connexion");
  362. let registration = document.getElementById("registration"); 
  363.   registration.style.display = "block";
  364.   connexion.style.display = "none";
  365. }
  366. function cnxion() {
  367. let connexion = document.getElementById("connexion");
  368. let registration = document.getElementById("registration"); 
  369.   registration.style.display = "none";
  370.   connexion.style.display = "block";
  371.  
  372. function seltyp() {
  373. let users_Type = document.getElementById("users_Type");
  374.   let radsel = ''
  375.   if(users_Type){
  376.  for (let item of  users_Type.children) {
  377.     if( item.checked == true){
  378.     radsel = item.value 
  379.     }
  380.   }
  381.  
  382. }
  383. let entrepr = document.getElementsByClassName("entre");
  384. let partic = document.getElementsByClassName("partic");
  385. let collect = document.getElementsByClassName("collec");
  386. let associ = document.getElementsByClassName("assoc"); 
  387. if( radsel == 'Entreprise' ){
  388. for (let itementre_part of  partic) { 
  389.     itementre_part.parentNode.style.display = "none"; 
  390. }
  391. for (let itementre_collect of  collect) {
  392.     itementre_collect.parentNode.style.display = "none";
  393. }
  394. for (let itementre_associ of  associ) {
  395.     itementre_associ.parentNode.style.display = "none";
  396. }
  397. for (let itementre_entrepr of  entrepr) {
  398.     itementre_entrepr.parentNode.style.display = "block";
  399. }
  400. }else if( radsel == 'Particulier' ){
  401. for (let itementre_collect of  collect) {
  402.     itementre_collect.parentNode.style.display = "none";
  403. }
  404. for (let itementre_associ of  associ) {
  405.     itementre_associ.parentNode.style.display = "none";
  406. }
  407. for (let itementre_entrepr of  entrepr) {
  408.     itementre_entrepr.parentNode.style.display = "none";
  409. }
  410. for (let itementre_part of  partic) {
  411.     itementre_part.parentNode.style.display = "block";
  412. }
  413. }else if( radsel == 'Collectivité' ){
  414. for (let itementre_part of  partic) {
  415.     itementre_part.parentNode.style.display = "none";
  416. }
  417. for (let itementre_associ of  associ) {
  418.     itementre_associ.parentNode.style.display = "none";
  419. }
  420. for (let itementre_entrepr of  entrepr) {
  421.     itementre_entrepr.parentNode.style.display = "none";
  422. }
  423. for (let itementre_collect of  collect) {
  424.     itementre_collect.parentNode.style.display = "block";
  425. }
  426. }else if( radsel == 'Association' ){
  427. for (let itementre_part of  partic) {
  428.     itementre_part.parentNode.style.display = "none";
  429. }
  430. for (let itementre_collect of  collect) {
  431.     itementre_collect.parentNode.style.display = "none";
  432. }
  433. for (let itementre_entrepr of  entrepr) {
  434.     itementre_entrepr.parentNode.style.display = "none";
  435. }
  436. for (let itementre_associ of  associ) {
  437.     itementre_associ.parentNode.style.display = "block";
  438. }
  439. }  
  440. }
  441. function closebut(){
  442. var modal = document.getElementById("myModal");
  443.     modal.style.display = "none"; 
  444. }
  445. function closereduc(){
  446. var modal = document.getElementById("modalreduc");
  447.     modal.style.display = "none"; 
  448. }
  449. function openreduc(){
  450. var modal = document.getElementById("modalreduc");
  451.     modal.style.display = "block"; 
  452. }
  453. function openinfo(){
  454. var modal = document.getElementById("modalinfo");
  455.     modal.style.display = "block"; 
  456. }
  457. function closeinfo(){
  458. var modal = document.getElementById("modalinfo");
  459.     modal.style.display = "none"; 
  460. }
  461. function openreducelem(trg){
  462.     var element = document.getElementById("title_"+trg);
  463.     if ( (" " + element.className + " ").replace(/[\n\t]/g, " ").indexOf("turnelem") > -1 ){
  464.   element.classList.remove("turnelem");
  465.     }else{
  466.   element.classList.add("turnelem");
  467.     }
  468.    var modal = document.getElementsByClassName("elem"+trg );
  469.    if(modal[0].style.height == "auto"){
  470.     modal[0].style.height = "0"; 
  471.    }else{
  472.     modal[0].style.height = "auto"; 
  473.    }
  474. }
  475. function validateEmail(email) {
  476.   const re = /^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
  477.   return re.test(email);
  478. }
  479. function sendemande(event){
  480.     event.preventDefault()
  481.     let formreduc = document.getElementById('formreduc')
  482.     let error = 0
  483.     formData = new FormData(formreduc); 
  484.     if( !validateEmail(document.formreduc.form_email.value) ){
  485.         document.formreduc.form_email.classList.add("notvalide");
  486.         error = 1
  487.         document.getElementById('error_form_email').style.display = "block"; 
  488.     }else{
  489.         document.formreduc.form_email.classList.remove("notvalide");
  490.         document.getElementById('error_form_email').style.display = "none"; 
  491.         
  492.     }
  493.     if(document.formreduc.achatouloc.value == ''){
  494. document.getElementsByClassName("elem2" )[0].style.height = "auto"; 
  495.         document.getElementById('achatouloc_ach_name').classList.add("notvalide");
  496.         document.getElementById('achatouloc_loc_name').classList.add("notvalide");
  497.         document.getElementById('error_achatouloc').style.display = "block"; 
  498.         error = 1
  499.     }else{
  500.         document.getElementById('achatouloc_ach_name').classList.remove("notvalide");
  501.         document.getElementById('achatouloc_loc_name').classList.remove("notvalide");
  502.         document.getElementById('error_achatouloc').style.display = "none"; 
  503.     }
  504.     if(document.formreduc.achatouloc.value  == 'location'){
  505.         if(document.formreduc.nb_de_jours.value == '' && document.formreduc.date_debut.value == '' && document.formreduc.date_fin.value == '' ){
  506.             
  507. document.formreduc.nb_de_jours.classList.add("notvalide"); 
  508. document.formreduc.date_debut.classList.add("notvalide"); 
  509. document.formreduc.date_fin.classList.add("notvalide");  
  510. document.getElementsByClassName("elem2" )[0].style.height = "auto"; 
  511.         document.getElementById('error_nd_jours').style.display = "block"; 
  512.         error = 1
  513.         }else if( document.formreduc.nb_de_jours.value != '' && document.formreduc.date_debut.value == '' && document.formreduc.date_fin.value == '' ){
  514.         document.formreduc.nb_de_jours.classList.remove("notvalide");
  515.         document.formreduc.date_debut.classList.remove("notvalide");
  516.         document.formreduc.date_fin.classList.remove("notvalide");
  517.         document.getElementById('error_nd_jours').style.display = "none"; 
  518.         }else if( document.formreduc.nb_de_jours.value == '' && document.formreduc.date_debut.value != '' && document.formreduc.date_fin.value == '' ){
  519. document.formreduc.date_fin.classList.add("notvalide");  
  520. document.getElementsByClassName("elem2" )[0].style.height = "auto"; 
  521.         document.getElementById('error_nd_jours').style.display = "block"; 
  522.         error = 1
  523.         }else if( document.formreduc.nb_de_jours.value == '' && document.formreduc.date_debut.value == '' && document.formreduc.date_fin.value != '' ){
  524. document.formreduc.date_debut.classList.add("notvalide"); 
  525. document.getElementsByClassName("elem2" )[0].style.height = "auto"; 
  526.         document.getElementById('error_nd_jours').style.display = "block"; 
  527.         error = 1
  528.         }else{
  529.         document.formreduc.nb_de_jours.classList.remove("notvalide");
  530.         document.formreduc.date_debut.classList.remove("notvalide");
  531.         document.formreduc.date_fin.classList.remove("notvalide");
  532.         document.getElementById('error_nd_jours').style.display = "none"; 
  533.         }
  534.     }
  535.     
  536.     if(document.formreduc.nb_vehicules.value == ''){
  537. document.formreduc.nb_vehicules.classList.add("notvalide");  
  538. document.getElementsByClassName("elem2" )[0].style.height = "auto"; 
  539.         document.getElementById('error_nb_vehicules').style.display = "block"; 
  540.         error = 1
  541.     }else{
  542.         document.formreduc.budget_location.classList.remove("notvalide");
  543.         document.getElementById('error_budget_location').style.display = "none"; 
  544.     }
  545.     if(document.formreduc.budget_location.value == ''){
  546. document.formreduc.budget_location.classList.add("notvalide");  
  547. document.getElementsByClassName("elem3" )[0].style.height = "auto"; 
  548.         document.getElementById('error_budget_location').style.display = "block"; 
  549.         error = 1
  550.     }else{
  551.         document.formreduc.budget_location.classList.remove("notvalide");
  552.         document.getElementById('error_budget_location').style.display = "none"; 
  553.     }
  554.     if(document.formreduc.assiselect.value == ''){
  555. document.getElementsByClassName("elem4" )[0].style.height = "auto"; 
  556.         document.getElementById('assiselect_oui_name').classList.add("notvalide");
  557.         document.getElementById('assiselect_non_name').classList.add("notvalide");
  558.         document.getElementById('error_assiselect').style.display = "block"; 
  559.         error = 1
  560.     }else{
  561.         document.getElementById('assiselect_oui_name').classList.remove("notvalide");
  562.         document.getElementById('assiselect_non_name').classList.remove("notvalide");
  563.         document.getElementById('error_assiselect').style.display = "none"; 
  564.     }
  565.     if(document.formreduc.votre_projet.value == ''){
  566. document.formreduc.votre_projet.classList.add("notvalide");   
  567. document.getElementsByClassName("elem8" )[0].style.height = "auto"; 
  568.         document.getElementById('error_votre_projet').style.display = "block"; 
  569.         error = 1
  570.     }else{
  571.         document.formreduc.votre_projet.classList.remove("notvalide");
  572.         document.getElementById('error_votre_projet').style.display = "none"; 
  573.     }
  574.     if(document.formreduc.contrepartie_projet.value == ''){
  575. document.formreduc.contrepartie_projet.classList.add("notvalide");   
  576. document.getElementsByClassName("elem8" )[0].style.height = "auto"; 
  577.         document.getElementById('error_contrepartie_projet').style.display = "block"; 
  578.         error = 1
  579.     }else{
  580.         document.formreduc.contrepartie_projet.classList.remove("notvalide");
  581.         document.getElementById('error_contrepartie_projet').style.display = "none"; 
  582.     }
  583.     if(document.formreduc.form_tel.value == ''){
  584. document.formreduc.form_tel.classList.add("notvalide");   
  585.         document.getElementById('error_form_tel').style.display = "block"; 
  586.         error = 1
  587.     }else{
  588.         document.formreduc.form_tel.classList.remove("notvalide");
  589.         document.getElementById('error_form_tel').style.display = "none"; 
  590.     }
  591.     
  592.     if( error == 1){
  593.     return false;
  594.     }
  595.   /*  const formData = new FormData();
  596.        Object.keys(filtres).map(function(key) {
  597.       formData.set( key , filtres[key] ) 
  598.       });
  599.       formData.set( 'start' , this.state.start ) 
  600. */
  601.       let http = ''
  602.       if (location.protocol == 'https:')
  603.         {
  604.           http = 'https:' 
  605.         }else{
  606.           http = 'http:' 
  607.         }
  608.       let urlreq = http +'//'+window.location.host +`/api/demandereduc/`;
  609.       fetch (urlreq, {
  610.         method: 'POST',
  611.         body: formData,
  612.         credentials: 'include'
  613.         })
  614.       .then (res => res.json ())
  615.       .then (json =>{
  616.           if(json.mail == 'ok'){
  617.               document.getElementById('massageenvoye').innerHTML = 'Votre demande a bien été envoyée'
  618.               document.getElementById("formreduc").reset();
  619.           }else{
  620.               document.getElementById('massageenvoye').innerHTML = "Votre demande n'a pas pu être envoyée"
  621.           }
  622.       })
  623.    
  624. }
  625. function sendemandeinfo(event){
  626.     event.preventDefault()
  627.     let forminfo = document.getElementById('forminfo')
  628.     let error = 0
  629.     formData = new FormData(forminfo);  
  630.     if( !validateEmail(document.forminfo.form_email.value) ){
  631.         document.forminfo.form_email.classList.add("notvalide");
  632.         error = 1
  633.         document.getElementById('error_form_email_info').style.display = "block"; 
  634.     }else{
  635.         document.forminfo.form_email.classList.remove("notvalide");
  636.         document.getElementById('error_form_email_info').style.display = "none"; 
  637.         
  638.     }
  639.     if(document.forminfo.form_tel.value == ''){
  640. document.forminfo.form_tel.classList.add("notvalide");   
  641.         document.getElementById('error_form_tel_info').style.display = "block"; 
  642.         error = 1
  643.     }else{
  644.         document.forminfo.form_tel.classList.remove("notvalide");
  645.         document.getElementById('error_form_tel_info').style.display = "none"; 
  646.     }
  647.     
  648.     if( error == 1){
  649.     return false;
  650.     }
  651.   /*  const formData = new FormData();
  652.        Object.keys(filtres).map(function(key) {
  653.       formData.set( key , filtres[key] ) 
  654.       });
  655.       formData.set( 'start' , this.state.start ) 
  656. */
  657.       let http = ''
  658.       if (location.protocol == 'https:')
  659.         {
  660.           http = 'https:' 
  661.         }else{
  662.           http = 'http:' 
  663.         }
  664.       let urlreq = http +'//'+window.location.host +`/api/demandeinfo/`;
  665.       fetch (urlreq, {
  666.         method: 'POST',
  667.         body: formData,
  668.         credentials: 'include'
  669.         })
  670.       .then (res => res.json ())
  671.       .then (json =>{
  672.           if(json.mail == 'ok'){
  673.               document.getElementById('massageenvoye_info').innerHTML = 'Votre demande a bien été envoyée'
  674.               document.getElementById("forminfo").reset();
  675.           }else{
  676.               document.getElementById('massageenvoye_info').innerHTML = "Votre demande n'a pas pu être envoyée"
  677.           }
  678.       })
  679.    
  680. }
  681. function setCookiex(name,value,days){var expires="";if(days){var date=new Date();date.setTime(date.getTime()+(days*24*60*60*1000));expires="; SameSite=Lax; Secure expires="+date.toUTCString();}
  682. document.cookie=name+"="+(value||"")+expires+"; path=/";}
  683. function getCookiex(name){var nameEQ=name+"=";var ca=document.cookie.split(';');for(var i=0;i<ca.length;i++){var c=ca[i];while(c.charAt(0)==' ')c=c.substring(1,c.length);if(c.indexOf(nameEQ)==0)return c.substring(nameEQ.length,c.length);}
  684. return null;}
  685. /*
  686. function betaview(){
  687.     if(!getCookiex('masqbeta')){
  688.       //  document.getElementById('beta').classList.remove("hidbeta");
  689.     } 
  690. }
  691. function masqbeta(){setCookie('masqbeta','1',7); document.getElementById('beta').classList.add("hidbeta"); }
  692. function showbeta(){ document.getElementById('beta').classList.remove("hidbeta"); }
  693. */
  694. window.onload=function(){
  695.    // $('#header').height( $('.logo-container').height() )
  696.   if( window.innerWidth <= 768){ 
  697.      document.getElementById("header").style.height = document.getElementsByClassName("logo-container")[0].offsetHeight + 'px';
  698. document.getElementById("formulaire").style.marginTop = document.getElementsByClassName("logo-container")[0].offsetHeight + 'px';
  699.   } /*else{
  700.       document.getElementById("header").style.height = 'auto'
  701.   }*/
  702.     if( document.getElementById("burger").checked == true){
  703.         document.getElementById("header").classList.add("headshow") 
  704.     }else{
  705.         document.getElementById("header").classList.remove("headshow")  
  706.     }
  707.    // betaview();
  708. cookieConsent();
  709.     };
  710. /*$(document).scroll(function () { 
  711.         let positop = $('.logo-container').height();
  712.         if(  $(document).scrollTop() >= positop ){
  713.                   $('.keeplace').height( $('#nav').height())
  714.                 $('#nav').addClass('fixedtop');
  715.                 $('#header').addClass('fixedhead');
  716.         }else{
  717.                   $('.keeplace').height( 0)
  718.                  $('#nav').removeClass('fixedtop');
  719.                 $('#header').removeClass('fixedhead');
  720.         }
  721.       
  722. }); */
  723. document.addEventListener('scroll', (event) => {
  724. let positop = document.getElementsByClassName("logo-container")[0].offsetHeight
  725. if(  window.scrollY >= positop ){
  726.                  document.getElementsByClassName("keeplace")[0].style.height =  document.getElementById("nav").offsetHeight + 'px'
  727.                  document.getElementById("nav").classList.add('fixedtop') 
  728.                  document.getElementById("header").classList.add('fixedhead') 
  729.         }else{
  730.             document.getElementsByClassName("keeplace")[0].style.height = 0
  731.                  document.getElementById("nav").classList.remove('fixedtop')
  732.                  document.getElementById("header").classList.remove('fixedhead') 
  733.         }
  734. }, false)
  735. document.getElementById("burger").addEventListener("change", () => { 
  736.    if( document.getElementById("burger").checked == true){
  737.         document.getElementById("header").classList.add("headshow") 
  738.     }else{
  739.         document.getElementById("header").classList.remove("headshow")  
  740.     }
  741.     }, false);
  742. </script>
  743. <!-- Global site tag (gtag.js) - Google Analytics -->
  744. <script async src="https://www.googletagmanager.com/gtag/js?id=UA-191273736-1">
  745. </script>
  746. <script>
  747.   window.dataLayer = window.dataLayer || [];
  748.   function gtag(){dataLayer.push(arguments);}
  749.   gtag('js', new Date());
  750.   gtag('config', 'UA-191273736-1');
  751.   gtag('config', 'AW-352701664');
  752.   gtag('config', 'AW-352701664/5jWqCKUFEOCZl6gB', {
  753.     'phone_conversion_number': '0698806933'
  754.   });
  755. </script>
  756. <script type="text/javascript">
  757. _linkedin_partner_id = "3674785";
  758. window._linkedin_data_partner_ids = window._linkedin_data_partner_ids || [];
  759. window._linkedin_data_partner_ids.push(_linkedin_partner_id);
  760. </script><script type="text/javascript">
  761. (function(){var s = document.getElementsByTagName("script")[0];
  762. var b = document.createElement("script");
  763. b.type = "text/javascript";b.async = true;
  764. b.src = "https://snap.licdn.com/li.lms-analytics/insight.min.js";
  765. s.parentNode.insertBefore(b, s);})();
  766. </script>
  767. <noscript>
  768. <img height="1" width="1" style="display:none;" alt="" src="https://px.ads.linkedin.com/collect/?pid=3674785&fmt=gif" />
  769. </noscript>
  770.     </body>
  771. </html>