templates/layout_website.html.twig line 1

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