templates/souscription/indexHabitation.html.twig line 1

  1. {% extends 'base.html.twig' %}
  2. {% block title %}{% endblock %}
  3. {% block body %}
  4.     <!-- Customized Bootstrap Stylesheet -->
  5.     <link href="{{asset('assets/css/form/formHabitation.css')}}" rel="stylesheet"/>
  6.     <script src="https://common.olemiss.edu/_js/sweet-alert/sweet-alert.min.js"></script>
  7.     <link
  8.     rel="stylesheet" type="text/css" href="https://common.olemiss.edu/_js/sweet-alert/sweet-alert.css">
  9.     <!-- google font -->
  10.     <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.6.1/jquery.js"></script>
  11.     <link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.0.3/css/font-awesome.css" rel="stylesheet"/>
  12.     <link href="/assets/profile/plugins/global/plugins.bundle.css" rel="stylesheet" type="text/css"/>
  13.     <script src="/assets/profile/js/scripts.bundle.js"></script>
  14.     {% for flashMessage in app.session.flashbag.get('noTarif') %}
  15.         <script>
  16.             window.onload = function () {
  17.             Swal.fire({
  18.             text:"{{ flashMessage }}",
  19.             icon: "error",
  20.             buttonsStyling: false,
  21.             confirmButtonText: "Ok",
  22.               background: '#f8f9fa', // Couleur d'arrière-plan personnalisée
  23.             customClass: {
  24.             confirmButton: "btn btn-danger"
  25.             }
  26.             });
  27.             };
  28.         </script>
  29.     {% endfor %}
  30.     {% for flashMessage in app.session.flashbag.get('attentePaiement') %}
  31.             <script>
  32.             window.onload = function () {
  33.             Swal.fire({
  34.             text:"{{ flashMessage }}",
  35.             icon: "error",
  36.             buttonsStyling: false,
  37.             confirmButtonText: "Ok",
  38.               background: '#f8f9fa', // Couleur d'arrière-plan personnalisée
  39.             customClass: {
  40.             confirmButton: "btn btn-danger"
  41.             }
  42.             });
  43.             };
  44.         </script>
  45.     {% endfor %}
  46.     {% for flashMessage in app.session.flashbag.get('validiter') %}
  47.         <script>
  48.             window.onload = function () {
  49.             Swal.fire({
  50.             text:"{{ flashMessage }}",
  51.             icon: "error",
  52.             buttonsStyling: false,
  53.             confirmButtonText: "Ok",
  54.               background: '#f8f9fa', // Couleur d'arrière-plan personnalisée
  55.             customClass: {
  56.             confirmButton: "btn btn-danger"
  57.             }
  58.             });
  59.             };
  60.         </script>
  61.     {% endfor %}
  62.     <style>
  63. .custom-img {
  64.   width: 100%; /* Remplir toute la largeur disponible */
  65.   height: 40vh; /* Remplir la moitié de la hauteur de la fenêtre du navigateur */
  66.   object-fit: cover; /* L'image couvre la zone sans déformation */
  67. }
  68. </style>
  69. <!-- Carousel Start -->
  70. <div class="container-fluid p-0 mb-0 wow fadeIn" data-wow-delay="0.1s">
  71.       <div id="header-carousel" class="carousel slide" data-bs-ride="carousel">
  72.         <div class="carousel-inner">
  73.           <div class="carousel-item active">
  74.             {# <img class="h-50 w-80" src="{{asset('assets/img/IMAGE4.jpg')}}" alt="Image" /> #}
  75.             <img class="custom-img" src="{{asset('assets/img/IMAGE4.jpg')}}" alt="Image" />
  76.             <div class="absolute-div">
  77.               <div class="carousel-caption">
  78.                           <!-- Service Start -->
  79.     <div class="container-xl py-5 mb-5">
  80.       <div class="container">
  81.         <div class="text-center mx-auto">
  82.           <h1 class="display-5 mb-0 text-white " id="heading">
  83.             Souscription assurance habitation
  84.           </h1>
  85.         </div>
  86.        
  87.       </div>
  88.     </div>
  89.     <!-- Service End -->
  90.               </div>
  91.             </div>
  92.           </div>
  93.         </div>
  94.       </div>
  95.     </div>
  96.     <!-- Carousel End -->
  97.     <!--begin::Wrapper container-->
  98.     <div
  99.         class="app-container container-xxl d-flex">
  100.         <!--begin::Main-->
  101.         <div
  102.             class="app-main flex-column flex-row-fluid" id="kt_app_main">
  103.             <!--begin::Content wrapper-->
  104.             <div
  105.                 class="d-flex flex-column flex-column-fluid">
  106.                 <!--begin::Content-->
  107.                 <div
  108.                     id="kt_app_content" class="app-content">
  109.                     <!--begin::About card-->
  110.                     <div
  111.                         class="card">
  112.                         <!--begin::Body-->
  113.                         <div
  114.                             class="card-body p-lg-30">
  115.                             <!--begin::About-->
  116.                             <div
  117.                                 class="mb-18">
  118.                                 <!--begin::Wrapper-->
  119.                                 <div
  120.                                     class="mb-10">
  121.                                     <!--begin::Overlay-->
  122.                                     {# <div
  123.                                         class="overlay">
  124.                                         <!--begin::Image-->
  125.                                         <img
  126.                                         class="w-100 card-rounded" src="{{asset('assets/img/img3.jpg')}}" height="50%" alt=""/>
  127.                                     <!--end::Image-->
  128.                                     </div> #}
  129.                                     <div class="container-fluid">
  130.                                         <div class="row justify-content-center">
  131.                                             <div class="col-12 col-sm-12 col-md-12 col-lg-10 col-xxl-9 text-center p-0 mt-3 mb-2">
  132.                                                 <div class="card px-3 pt-4 pb-0 mt-3 mb-3 border border-light rounded">
  133.                                                     <h2 id="heading">Commandez votre assurance habitation en quelques minutes</h2>
  134.                                                     <p>Veuillez choisir votre formule</p>
  135.                                                     <form
  136.                                                         id="msform" method="POST" action="{{path('app_souscription_Habitation')}}">
  137.                                                         <!-- progressbar -->
  138.                                                         <ul id="progressbar">
  139.                                                             <li class="active" id="home">
  140.                                                                 <strong class="d-none d-md-block">Formules assurance</strong>
  141.                                                             </li>
  142.                                                             <li id="personal">
  143.                                                                 <strong class="d-none d-md-block">Informations personnelles</strong>
  144.                                                             </li>
  145.                                                         </ul>
  146.                                                         <div class="progress">
  147.                                                             <div class="progress-bar progress-bar-striped progress-bar-animated" role="progressbar" aria-valuemin="0" aria-valuemax="100"></div>
  148.                                                         </div>
  149.                                                         <br>
  150.                                                         <!-- fieldsets -->
  151.                                                         <fieldset>
  152.                                                             <div class="form-card">
  153.                                                                 <div class="row">
  154.                                                                     <div class="col-6">
  155.                                                                         <h2 class="fs-title"></h2>
  156.                                                                     </div>
  157.                                                                     <div class="col-6">
  158.                                                                         <h2 class="steps">Etape 1 - 2</h2>
  159.                                                                     </div>
  160.                                                                 </div>
  161.                                                                 <div class="row mt-5">
  162.                                                                     {% for liste in formules %}
  163.                                                                         <div class="col-sm-6 col-md-3 border border-1 rounded-3 m-2">
  164.                                                                             <div class="img-boxF text-center">
  165.                                                                                 <label>
  166.                                                                                     <input class="mt-3" id="f1{{liste.id}}" name="formule" type="radio" style="width: 80px;" value="{{liste.id}}" onclick="getCheckboxVal()"/>
  167.                                                                                     {% if liste.id == 1 %}
  168.                                                                                         <img class=" d-none d-md-block border border-1 rounded-top " src="/assets/img/formule/h1.jpg" style="width:110%;margin-left:-12px;" alt="">
  169.                                                                                         <img
  170.                                                                                         class=" d-block d-md-none border border-1 rounded-top " src="/assets/img/formule/h1.jpg" style="width:107%;margin-left:-12px;" alt="">
  171.                                                                                         {# <img class="border border-1 rounded-top d-sm-block d-md-none" src="/assets/img/formule/h1.jpg" style="width:100%;margin-left:-12px;" alt=""> #}
  172.                                                                                         <span class="mt-3">
  173.                                                                                             <strong>FORMULE 1</strong>
  174.                                                                                         </span>
  175.                                                                                     {% elseif liste.id == 2 %}
  176.                                                                                         <img class=" d-none d-md-block border border-1 rounded-top " src="/assets/img/formule/h2.jpg" style="width:110%;margin-left:-12px;" alt="">
  177.                                                                                         <img class=" d-block d-md-none border border-1 rounded-top " src="/assets/img/formule/h2.jpg" style="width:107%;margin-left:-12px;" alt="">
  178.                                                                                         <span class="mt-3">
  179.                                                                                             <strong>FORMULE 2</strong>
  180.                                                                                         </span>
  181.                                                                                         {# <img src="/assets/img/formule/f2.jpg" alt=""> #}
  182.                                                                                     {% elseif liste.id == 3 %}
  183.                                                                                         <img class=" d-none d-md-block border border-1 rounded-top " src="/assets/img/formule/h3.jpg" style="width:110%;margin-left:-12px;" alt="">
  184.                                                                                         <img class=" d-block d-md-none border border-1 rounded-top " src="/assets/img/formule/h3.jpg" style="width:107%;margin-left:-12px;" alt="">
  185.                                                                                         <span class="mt-3">
  186.                                                                                             <strong>FORMULE 3</strong>
  187.                                                                                         </span>
  188.                                                                                         {# <img src="/assets/img/formule/f3.jpg" alt=""> #}
  189.                                                                                     {% endif %}
  190.                                                                                 </label>
  191.                                                                                 {% if liste.id == 1 %}
  192.                                                                                     <span class="fw-semibold text-gray-600 fs-6 mb-8 d-block mt-2 text-start" style="font-size:10px;">
  193.                                                                                         Pour une prime de 40.000 F CFA par an, obtenez une couverture allant jusqu'à 20.000.000 de F CFA pour votre bâtiment et 5.000.000 F CFA pour le contenu.
  194.                                                                                     </span>
  195.                                                                                 {% elseif liste.id == 2 %}
  196.                                                                                     <span class="fw-semibold text-gray-600 fs-6 mb-8 d-block mt-2 text-start">
  197.                                                                                         Pour une prime de 50.000 F CFA par an, obtenez une couverture allant jusqu'à 30.000.000 de F CFA pour votre bâtiment et 10.000.000 F CFA pour le contenu.
  198.                                                                                     </span>
  199.                                                                                 {% elseif liste.id == 3 %}
  200.                                                                                     <span class="fw-semibold text-gray-600 fs-6 mb-8 d-block mt-2 text-start">
  201.                                                                                         Pour une prime de 90.000 F CFA par an, obtenez. une couverture allant jusqu'à 50.000.000 de F CFA pour votre bâtiment et 15.000.000 F CFA pour le contenu.
  202.                                                                                     </span>
  203.                                                                                 {% endif %}
  204.                                                                             </div>
  205.                                                                         </div>
  206.                                                                     {% endfor %}
  207.                                                                     <div class="col-sm-12 col-md-2 border border-1 rounded-3 m-2">
  208.                                                                         <div class="img-boxF text-center row">
  209.                                                                             <label class="col-sm-6 col-md-12 ">
  210.                                                                                 <input class="mt-3" id="fs" name="formule" type="radio" style="width: 80px;" value="4" onclick="getCheckboxVal()"/>
  211.                                                                                 <img class=" d-none d-md-block border border-1 rounded-top " src="/assets/img/formule/h4.jpg" style="width:117%;margin-left:-12px;height:108%;" alt="">
  212.                                                                                 <img class=" d-block d-md-none border border-1 rounded-top " src="/assets/img/formule/h4.jpg" style="width:107%;margin-left:-12px;height:80%;" alt="">
  213.                                                                                 <span class="mt-3">
  214.                                                                                     <strong>TARIF SUR MESURE</strong>
  215.                                                                                 </span>
  216.                                                                             </label>
  217.                                                                             <span
  218.                                                                                 class="fw-semibold text-gray-600 fs-6 mb-8 d-block mt-5 col-sm-6 col-md-12 text-start" style="margin-bottom:-80px;">{# Tarif sur mesure #}
  219.                                                                             </span>
  220.                                                                         </div>
  221.                                                                     </div>
  222.                                                                 </div>
  223.                                                             </div>
  224.                                                             <input type="button" style="display:none" id="form" name="next" class="next action-button" value="Suivant"/>
  225.                                                             <div style="display:none" id="formS"></div>
  226.                                                         </fieldset>
  227.                                                         <fieldset>
  228.                                                             <div class="form-card">
  229.                                                                 <div class="row">
  230.                                                                     <div class="col-6">
  231.                                                                         <h2 class="fs-title"></h2>
  232.                                                                     </div>
  233.                                                                     <div class="col-6">
  234.                                                                         <h2 class="steps">Etape 2 - 2</h2>
  235.                                                                     </div>
  236.                                                                 </div>
  237.                                                                 <div class="row">
  238.                                                                     <div class="col-12 col-md-4">
  239.                                                                         <label class="fieldlabels">Nom: <span class="text-danger">*</span></label>
  240.                                                                         <input type="text" name="nom" placeholder="Votre nom"/>
  241.                                                                     </div>
  242.                                                                     <div class="col-12 col-md-4">
  243.                                                                         <label class="fieldlabels">Prénom: <span class="text-danger">*</span></label>
  244.                                                                         <input type="text" name="prenom" placeholder="Votre prénom"/>
  245.                                                                     </div>
  246.                                                                     <div class="col-12 col-md-4">
  247.                                                                         <label class="fieldlabels">Email:
  248.                                                                         </label>
  249.                                                                         <input type="text" name="email" placeholder="Votre email"/>
  250.                                                                     </div>
  251.                                                                     <div class="col-12 col-md-4">
  252.                                                                         <label class="fieldlabels">Quartier: <span class="text-danger">*</span>
  253.                                                                         </label>
  254.                                                                         <input type="text" name="quartier" placeholder="Quartier de résidence"/>
  255.                                                                     </div>
  256.                                                                     <div class="col-12 col-md-4">
  257.                                                                         <label class="fieldlabels">Téléphone: <span class="text-danger">*</span></label>
  258.                                                                         <input type="text" name="phone" placeholder="N° de téléphone" maxlength="8" onkeypress="chiffres(event)"/>
  259.                                                                     </div>
  260.                                                                     <div class="col-12 col-md-4">
  261.                                                                         <label class="fieldlabels">N° Ilot: <span class="text-danger">*</span></label>
  262.                                                                         <input type="number" name="ilot" placeholder="N° ilot"/>
  263.                                                                     </div>
  264.                                                                 </div>
  265.                                                                 <div class="row">
  266.                                                                     <div class="col-12 col-md-4">
  267.                                                                         <label class="fieldlabels">N° parcelle: <span class="text-danger">*</span></label>
  268.                                                                         <input type="text" name="parcelle" placeholder="N°  parcelle"/>
  269.                                                                     </div>
  270.                                                                 </div>
  271.                                                             </div>
  272.                                                             <input type="button" class="valider" value="Valider " onclick="verif(this);"/>
  273.                                                             <input type="button" name="previous" class="previous action-button-previous" value="Précédent"/>
  274.                                                         </fieldset>
  275.                                                     </form>
  276.                                                 </div>
  277.                                             </div>
  278.                                         </div>
  279.                                     </div>
  280.                                     <!--end::Overlay-->
  281.                                 </div>
  282.                                 <!--end::Wrapper-->
  283.                             </div>
  284.                             <!--end::About-->
  285.                         </div>
  286.                         <!--end::Body-->
  287.                     </div>
  288.                     <!--end::About card-->
  289.                 </div>
  290.                 <!--end::Content-->
  291.             </div>
  292.             <!--end::Content wrapper-->
  293.         </div>
  294.         <!--end::Main-->
  295.     </div>
  296.     <!--end::Wrapper container-->
  297.     <script>
  298.         jQuery.noConflict()(function ($) {
  299. $(document).ready(function () {
  300. var current_fs,
  301. next_fs,
  302. previous_fs; // fieldsets
  303. var opacity;
  304. var current = 1;
  305. var steps = $("fieldset").length;
  306. setProgressBar(current);
  307. $(".next").click(function () {
  308. current_fs = $(this).parent();
  309. next_fs = $(this).parent().next();
  310. // Add Class Active
  311. $("#progressbar li").eq($("fieldset").index(next_fs)).addClass("active");
  312. // show the next fieldset
  313. next_fs.show();
  314. // hide the current fieldset with style
  315. current_fs.animate({
  316. opacity: 0
  317. }, {
  318. step: function (now) { // for making fielset appear animation
  319. opacity = 1 - now;
  320. current_fs.css({'display': 'none', 'position': 'relative'});
  321. next_fs.css({'opacity': opacity});
  322. },
  323. duration: 500
  324. });
  325. setProgressBar(++ current);
  326. });
  327. $(".previous").click(function () {
  328. current_fs = $(this).parent();
  329. previous_fs = $(this).parent().prev();
  330. // Remove class active
  331. $("#progressbar li").eq($("fieldset").index(current_fs)).removeClass("active");
  332. // show the previous fieldset
  333. previous_fs.show();
  334. // hide the current fieldset with style
  335. current_fs.animate({
  336. opacity: 0
  337. }, {
  338. step: function (now) { // for making fielset appear animation
  339. opacity = 1 - now;
  340. current_fs.css({'display': 'none', 'position': 'relative'});
  341. previous_fs.css({'opacity': opacity});
  342. },
  343. duration: 500
  344. });
  345. setProgressBar(-- current);
  346. });
  347. function setProgressBar(curStep) {
  348. var percent = parseFloat(100 / steps) * curStep;
  349. percent = percent.toFixed();
  350. $(".progress-bar").css("width", percent + "%")
  351. }
  352. $(".submit").click(function () {
  353. return false;
  354. })
  355. });
  356. });
  357. function verif(bouton) {
  358. form = bouton.form;
  359. if ((form.formule.value == "")) {
  360.         event.preventDefault(); // Empêche la soumission du formulaire
  361.     Swal.fire({
  362.         icon: 'warning',
  363.         title: 'Attention',
  364.         text: 'Veuillez selectionnez votre formule.',
  365.         confirmButtonColor: '#3085d6',
  366.         confirmButtonText: 'OK',
  367.         background: '#f8f9fa' // Couleur d'arrière-plan personnalisée
  368.     });
  369. return false;
  370. } else {
  371. if ((form.nom.value == "")) {
  372.         event.preventDefault(); // Empêche la soumission du formulaire
  373.     Swal.fire({
  374.         icon: 'warning',
  375.         title: 'Attention',
  376.         text: 'Veuillez remplir le champ nom au niveau des informations personnelles.',
  377.         confirmButtonColor: '#3085d6',
  378.         confirmButtonText: 'OK',
  379.         background: '#f8f9fa' // Couleur d'arrière-plan personnalisée
  380.     });
  381. return false;
  382. } else {
  383. if ((form.prenom.value == "")) {
  384.         event.preventDefault(); // Empêche la soumission du formulaire
  385.     Swal.fire({
  386.         icon: 'warning',
  387.         title: 'Attention',
  388.         text: 'Veuillez remplir le champ prénom au niveau des informations personnelles.',
  389.         confirmButtonColor: '#3085d6',
  390.         confirmButtonText: 'OK',
  391.         background: '#f8f9fa' // Couleur d'arrière-plan personnalisée
  392.     });
  393. return false;
  394. } else {
  395. if ((form.phone.value == "")) {
  396.         event.preventDefault(); // Empêche la soumission du formulaire
  397.     Swal.fire({
  398.         icon: 'warning',
  399.         title: 'Attention',
  400.         text: 'Veuillez remplir le champ téléphone au niveau des informations personnelles.',
  401.         confirmButtonColor: '#3085d6',
  402.         confirmButtonText: 'OK',
  403.         background: '#f8f9fa' // Couleur d'arrière-plan personnalisée
  404.     });
  405. return false;
  406. } else {
  407. if ((form.quartier.value == "")) {
  408.         event.preventDefault(); // Empêche la soumission du formulaire
  409.     Swal.fire({
  410.         icon: 'warning',
  411.         title: 'Attention',
  412.         text: 'Veuillez remplir le champ quartier au niveau des informations personnelles.',
  413.         confirmButtonColor: '#3085d6',
  414.         confirmButtonText: 'OK',
  415.         background: '#f8f9fa' // Couleur d'arrière-plan personnalisée
  416.     });
  417. return false;
  418. } else {
  419. if ((form.ilot.value == "")) {
  420.         event.preventDefault(); // Empêche la soumission du formulaire
  421.     Swal.fire({
  422.         icon: 'warning',
  423.         title: 'Attention',
  424.         text: 'Veuillez remplir le n° du ilot au niveau des informations personnelles.',
  425.         confirmButtonColor: '#3085d6',
  426.         confirmButtonText: 'OK',
  427.         background: '#f8f9fa' // Couleur d'arrière-plan personnalisée
  428.     });
  429. return false;
  430. } else {
  431. if ((form.parcelle.value == "")) {
  432.         event.preventDefault(); // Empêche la soumission du formulaire
  433.     Swal.fire({
  434.         icon: 'warning',
  435.         title: 'Attention',
  436.         text: 'Veuillez remplir le n° du parcelle au niveau des informations personnelles.',
  437.         confirmButtonColor: '#3085d6',
  438.         confirmButtonText: 'OK',
  439.         background: '#f8f9fa' // Couleur d'arrière-plan personnalisée
  440.     });
  441. return false;
  442. } else {
  443. form.submit();
  444. }
  445. }
  446. }
  447. }
  448. }
  449. }
  450. }
  451. }
  452. function getCheckboxVal() {
  453. var lang1 = document.querySelector('input[type=radio]:checked');
  454. console.log(lang1.value);
  455. if (lang1.value != "4") {
  456. document.getElementById('form').style.display = "none";
  457. document.getElementById('formS').style.display = "none";
  458. $(document).ready(function () {
  459. $('#form').trigger("click");
  460. });
  461. } else {
  462. document.getElementById('form').style.display = "none";
  463. document.getElementById('formS').style.display = "block";
  464. swal.setDefaults({confirmButtonColor: '#2a1266'});
  465. swal({title: "Information!", text: 'Pour un tarif sur mesure veuillez contacter le 96265109.'})
  466. }
  467. }
  468.     </script>
  469. {% endblock %}