{"id":5,"date":"2026-04-19T08:50:21","date_gmt":"2026-04-19T08:50:21","guid":{"rendered":"https:\/\/schoolbus.tropitech.cloud\/?page_id=5"},"modified":"2026-04-19T08:50:23","modified_gmt":"2026-04-19T08:50:23","slug":"bus-scolaire-2026-2027","status":"publish","type":"page","link":"https:\/\/schoolbus.tropitech.cloud\/en\/","title":{"rendered":"School bus 2026\/2027"},"content":{"rendered":"    <div id=\"edn-bus-survey-app\" class=\"edn-bus-wrap\">\n      <section class=\"edn-bus-hero\">\n        <div class=\"edn-bus-hero-inner\">\n          <div class=\"edn-bus-badge\">Commission Transport EDN<\/div>\n          <h1>Am\u00e9lioration du service de bus scolaire \u2013 Rentr\u00e9e 2026\/2027<\/h1>\n          <p class=\"edn-bus-lead\">\n            Afin d\u2019am\u00e9liorer le service de bus scolaire \u00e0 partir de la rentr\u00e9e 2026\/2027,\n            nous avons besoin des informations ci-dessous. Cela nous sera d\u2019une grande aide\n            pour proposer un service de transport plus s\u00e9curis\u00e9, plus rationnalis\u00e9 et plus transparent.\n          <\/p>\n\n          <div class=\"edn-bus-benefits\">\n            <div class=\"edn-benefit-card\">\n              <strong>Plus s\u00e9curis\u00e9<\/strong>\n              <span>Maximum 1 \u00e9l\u00e8ve par si\u00e8ge avec ceinture de s\u00e9curit\u00e9<\/span>\n            <\/div>\n            <div class=\"edn-benefit-card\">\n              <strong>Plus rationnalis\u00e9<\/strong>\n              <span>Des trajets moins longs gr\u00e2ce \u00e0 un regroupement g\u00e9ographique pr\u00e9cis<\/span>\n            <\/div>\n            <div class=\"edn-benefit-card\">\n              <strong>Plus transparent<\/strong>\n              <span>Une meilleure lisibilit\u00e9 sur les prix<\/span>\n            <\/div>\n          <\/div>\n        <\/div>\n      <\/section>\n\n      <section class=\"edn-bus-card\">\n        <form id=\"edn-bus-form\" novalidate>\n\n          <div class=\"edn-required-note\">\n            Les champs <strong>Nom \/ pr\u00e9nom<\/strong>, <strong>nombre d\u2019enfants<\/strong>,\n            <strong>niveau scolaire<\/strong> et <strong>g\u00e9olocalisation<\/strong> sont obligatoires.\n          <\/div>\n\n          <div class=\"edn-grid-2\">\n            <div class=\"edn-field\">\n              <label for=\"parent_name\">Nom \/ Pr\u00e9nom du parent <span class=\"edn-required\">*<\/span><\/label>\n              <input type=\"text\" id=\"parent_name\" name=\"parent_name\" placeholder=\"Votre nom\" required>\n            <\/div>\n\n            <div class=\"edn-field\">\n              <label for=\"children_count\">Combien d\u2019enfants seraient susceptibles de prendre le bus ? <span class=\"edn-required\">*<\/span><\/label>\n              <select id=\"children_count\" name=\"children_count\" required>\n                <option value=\"\">S\u00e9lectionnez<\/option>\n                <option value=\"1\">1<\/option>\n                <option value=\"2\">2<\/option>\n                <option value=\"3\">3<\/option>\n                <option value=\"4\">4<\/option>\n                <option value=\"5\">5<\/option>\n              <\/select>\n            <\/div>\n\n            <div class=\"edn-field\">\n              <label for=\"email\">Email<\/label>\n              <input type=\"email\" id=\"email\" name=\"email\" placeholder=\"exemple@email.com\">\n            <\/div>\n\n            <div class=\"edn-field\">\n              <label for=\"phone\">T\u00e9l\u00e9phone<\/label>\n              <input type=\"text\" id=\"phone\" name=\"phone\" placeholder=\"230 52 53 54 55\">\n            <\/div>\n\n            <input type=\"hidden\" id=\"address_text\" name=\"address_text\" value=\"\">\n          <\/div>\n\n          <div class=\"edn-question-block\">\n            <label class=\"edn-question\">Est-ce que votre ou vos enfants prennent le bus cette ann\u00e9e ?<\/label>\n            <div class=\"edn-choice-row\">\n              <label><input type=\"radio\" name=\"current_bus_use\" value=\"Oui\" required> <span>Oui<\/span><\/label>\n              <label><input type=\"radio\" name=\"current_bus_use\" value=\"Non\"> <span>Non<\/span><\/label>\n            <\/div>\n          <\/div>\n\n          <div class=\"edn-question-block\" id=\"satisfaction-block\">\n            <label class=\"edn-question\">Si oui, \u00eates-vous satisfait du service actuel ?<\/label>\n            <div class=\"edn-choice-grid\">\n              <label><input type=\"radio\" name=\"current_satisfaction\" value=\"Tr\u00e8s satisfait\"> <span>Tr\u00e8s satisfait<\/span><\/label>\n              <label><input type=\"radio\" name=\"current_satisfaction\" value=\"Plut\u00f4t satisfait\"> <span>Plut\u00f4t satisfait<\/span><\/label>\n              <label><input type=\"radio\" name=\"current_satisfaction\" value=\"Peu satisfait\"> <span>Peu satisfait<\/span><\/label>\n              <label><input type=\"radio\" name=\"current_satisfaction\" value=\"Pas du tout satisfait\"> <span>Pas du tout satisfait<\/span><\/label>\n            <\/div>\n          <\/div>\n\n          <div class=\"edn-question-block\">\n            <label class=\"edn-question\" for=\"comments\">Remarque compl\u00e9mentaire<\/label>\n            <textarea id=\"comments\" name=\"comments\" rows=\"5\" placeholder=\"Votre remarque...\"><\/textarea>\n          <\/div>\n\n          <div class=\"edn-question-block\">\n            <label class=\"edn-question\">\n              Allez-vous faire appel au service de bus l\u2019ann\u00e9e prochaine,\n              sachant que les conditions de s\u00e9curit\u00e9 et de dur\u00e9e de trajets vont \u00eatre am\u00e9lior\u00e9es ?\n            <\/label>\n            <div class=\"edn-choice-row\">\n              <label><input type=\"radio\" name=\"next_year_interest\" value=\"Oui\" required> <span>Oui<\/span><\/label>\n              <label><input type=\"radio\" name=\"next_year_interest\" value=\"Non\"> <span>Non<\/span><\/label>\n              <label><input type=\"radio\" name=\"next_year_interest\" value=\"Peut-\u00eatre\"> <span>Peut-\u00eatre<\/span><\/label>\n            <\/div>\n          <\/div>\n\n          <div class=\"edn-question-block\">\n            <label class=\"edn-question\">\n              Quel sera le niveau de votre ou vos enfants \u00e0 la rentr\u00e9e 2026\/2027 ? <span class=\"edn-required\">*<\/span>\n            <\/label>\n            <p class=\"edn-help\">Vous pouvez s\u00e9lectionner plusieurs niveaux.<\/p>\n\n            <div class=\"edn-levels-wrap\">\n              <div class=\"edn-level-group\">\n                <h4>Maternelle<\/h4>\n                <label><input type=\"checkbox\" name=\"levels[]\" value=\"PS\"><span>PS<\/span><\/label>\n                <label><input type=\"checkbox\" name=\"levels[]\" value=\"MS\"><span>MS<\/span><\/label>\n                <label><input type=\"checkbox\" name=\"levels[]\" value=\"GS\"><span>GS<\/span><\/label>\n              <\/div>\n\n              <div class=\"edn-level-group\">\n                <h4>Primaire<\/h4>\n                <label><input type=\"checkbox\" name=\"levels[]\" value=\"CP\"><span>CP<\/span><\/label>\n                <label><input type=\"checkbox\" name=\"levels[]\" value=\"CE1\"><span>CE1<\/span><\/label>\n                <label><input type=\"checkbox\" name=\"levels[]\" value=\"CE2\"><span>CE2<\/span><\/label>\n                <label><input type=\"checkbox\" name=\"levels[]\" value=\"CM1\"><span>CM1<\/span><\/label>\n                <label><input type=\"checkbox\" name=\"levels[]\" value=\"CM2\"><span>CM2<\/span><\/label>\n              <\/div>\n\n              <div class=\"edn-level-group\">\n                <h4>Coll\u00e8ge<\/h4>\n                <label><input type=\"checkbox\" name=\"levels[]\" value=\"6e\"><span>6e<\/span><\/label>\n                <label><input type=\"checkbox\" name=\"levels[]\" value=\"5e\"><span>5e<\/span><\/label>\n                <label><input type=\"checkbox\" name=\"levels[]\" value=\"4e\"><span>4e<\/span><\/label>\n                <label><input type=\"checkbox\" name=\"levels[]\" value=\"3e\"><span>3e<\/span><\/label>\n              <\/div>\n            <\/div>\n          <\/div>\n\n          <div class=\"edn-question-block\">\n            <label class=\"edn-question\">\n              \u00c0 pr\u00e9sent, merci d\u2019indiquer sur la carte votre domicile afin d\u2019optimiser le remplissage des bus. <span class=\"edn-required\">*<\/span>\n            <\/label>\n            <p class=\"edn-help\">\n              Deux options sont possibles : cliquez sur <strong>Utiliser ma position actuelle<\/strong> sur mobile,\n              ou <strong>cliquez directement sur la carte<\/strong> pour positionner manuellement votre domicile.\n            <\/p>\n\n            <div class=\"edn-map-actions\">\n              <button type=\"button\" id=\"edn-geolocate-btn\" class=\"edn-btn edn-btn-secondary\">\n                Utiliser ma position actuelle\n              <\/button>\n              <div id=\"edn-map-status\" class=\"edn-map-status\">\n                <span style=\"color:#b42318; font-weight:700;\">Vous pouvez cliquer manuellement sur la carte pour s\u00e9lectionner votre domicile.<\/span>\n              <\/div>\n            <\/div>\n\n            <div id=\"edn-map\"><\/div>\n\n            <div class=\"edn-grid-2 edn-latlng-grid\">\n              <div class=\"edn-field\">\n                <label for=\"latitude\">Latitude <span class=\"edn-required\">*<\/span><\/label>\n                <input type=\"text\" id=\"latitude\" name=\"latitude\" readonly required>\n              <\/div>\n              <div class=\"edn-field\">\n                <label for=\"longitude\">Longitude <span class=\"edn-required\">*<\/span><\/label>\n                <input type=\"text\" id=\"longitude\" name=\"longitude\" readonly required>\n              <\/div>\n            <\/div>\n          <\/div>\n\n          <div class=\"edn-submit-wrap\">\n            <button type=\"submit\" class=\"edn-btn edn-btn-primary\">Envoyer le questionnaire<\/button>\n            <div id=\"edn-submit-status\" class=\"edn-submit-status\"><\/div>\n          <\/div>\n\n          <div class=\"edn-closing-note\">\n            Nous comptons sur votre participation pour que la rentr\u00e9e 2026\/2027 soit encore plus belle et vous remercions vivement.\n            <strong>Commission Transport EDN<\/strong>\n          <\/div>\n        <\/form>\n      <\/section>\n\n      <section class=\"edn-site-footer-image\">\n        <img decoding=\"async\" src=\"https:\/\/schoolbus.tropitech.cloud\/wp-content\/uploads\/2026\/04\/bandeau-site-bus-scaled.png\" alt=\"Tropitech Robot Logo\">\n      <\/section>\n\n      <div class=\"edn-credit-footer\">\n        \u00a9 2026 \u2014 Site con\u00e7u et maintenu par\n        <a href=\"https:\/\/tropitech.cloud\/\" target=\"_blank\" rel=\"noopener\">\n          <strong>TropiTech<\/strong>\n        <\/a>\n      <\/div>\n    <\/div>\n\n    <style>\n      .edn-bus-wrap{\n        --bg:#f5f8fc;\n        --card:#ffffff;\n        --text:#0f172a;\n        --muted:#5b6474;\n        --line:rgba(15,23,42,.08);\n        --primary:#133a63;\n        --primary-2:#1d5b97;\n        --accent:#caa85c;\n        --ok:#0f7b53;\n        --danger:#b42318;\n        max-width:1100px;\n        margin:40px auto 0;\n        padding:0 18px 24px;\n        color:var(--text);\n        font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,\"Segoe UI\",Roboto,sans-serif;\n      }\n\n      .edn-bus-hero{\n        background:\n          radial-gradient(circle at top left, rgba(29,91,151,.20), transparent 35%),\n          radial-gradient(circle at bottom right, rgba(202,168,92,.18), transparent 35%),\n          linear-gradient(135deg, #0f2e4e 0%, #163f68 100%);\n        border-radius:28px;\n        padding:42px 34px;\n        color:#fff;\n        box-shadow:0 24px 70px rgba(10,23,45,.18);\n      }\n\n      .edn-bus-badge{\n        display:inline-flex;\n        align-items:center;\n        padding:8px 14px;\n        border-radius:999px;\n        background:rgba(255,255,255,.12);\n        border:1px solid rgba(255,255,255,.18);\n        font-size:13px;\n        font-weight:700;\n        letter-spacing:.04em;\n        text-transform:uppercase;\n        margin-bottom:18px;\n      }\n\n      .edn-bus-hero h1{\n        margin:0 0 12px;\n        font-size:clamp(30px, 4vw, 48px);\n        line-height:1.06;\n        color:#fff;\n      }\n\n      .edn-bus-lead{\n        margin:0;\n        font-size:17px;\n        line-height:1.7;\n        max-width:860px;\n        color:rgba(255,255,255,.92);\n      }\n\n      .edn-bus-benefits{\n        display:grid;\n        grid-template-columns:repeat(3,minmax(0,1fr));\n        gap:16px;\n        margin-top:28px;\n      }\n\n      .edn-benefit-card{\n        background:rgba(255,255,255,.1);\n        border:1px solid rgba(255,255,255,.16);\n        border-radius:18px;\n        padding:18px;\n        backdrop-filter: blur(12px);\n      }\n\n      .edn-benefit-card strong{\n        display:block;\n        font-size:16px;\n        margin-bottom:6px;\n      }\n\n      .edn-benefit-card span{\n        display:block;\n        font-size:14px;\n        line-height:1.55;\n        color:rgba(255,255,255,.88);\n      }\n\n      .edn-bus-card{\n        margin-top:24px;\n        background:var(--card);\n        border:1px solid var(--line);\n        border-radius:28px;\n        padding:30px 24px 28px;\n        box-shadow:0 18px 50px rgba(15,23,42,.06);\n      }\n\n      .edn-required-note{\n        margin-bottom:24px;\n        padding:14px 16px;\n        border-radius:14px;\n        background:#f8fafc;\n        border:1px solid rgba(19,58,99,.10);\n        color:#334155;\n        line-height:1.6;\n        font-size:14px;\n      }\n\n      .edn-required{\n        color:var(--danger);\n        font-weight:800;\n      }\n\n      .edn-grid-2{\n        display:grid;\n        grid-template-columns:repeat(2,minmax(0,1fr));\n        gap:18px;\n      }\n\n      .edn-field{\n        margin-bottom:18px;\n      }\n\n      .edn-field-full{\n        grid-column:1 \/ -1;\n      }\n\n      .edn-field label{\n        display:block;\n        margin-bottom:8px;\n        font-size:14px;\n        font-weight:700;\n        color:var(--text);\n      }\n\n      .edn-field input,\n      .edn-field textarea,\n      .edn-field select{\n        width:100%;\n        border:1px solid rgba(15,23,42,.12);\n        background:#fff;\n        border-radius:14px;\n        padding:14px 15px;\n        font-size:15px;\n        color:var(--text);\n        transition:border-color .2s ease, box-shadow .2s ease;\n        box-sizing:border-box;\n      }\n\n      .edn-field input:focus,\n      .edn-field textarea:focus,\n      .edn-field select:focus{\n        outline:none;\n        border-color:rgba(29,91,151,.55);\n        box-shadow:0 0 0 4px rgba(29,91,151,.08);\n      }\n\n      .edn-question-block{\n        padding:22px 0;\n        border-top:1px solid var(--line);\n      }\n\n      .edn-question-block:first-of-type{\n        border-top:none;\n      }\n\n      .edn-question-block textarea{\n        width:100%;\n        box-sizing:border-box;\n      }\n\n      .edn-question{\n        display:block;\n        font-size:18px;\n        line-height:1.5;\n        font-weight:800;\n        margin-bottom:12px;\n      }\n\n      .edn-help{\n        margin:-4px 0 14px;\n        color:var(--muted);\n        line-height:1.6;\n        font-size:14px;\n      }\n\n      .edn-choice-row,\n      .edn-choice-grid{\n        display:flex;\n        flex-wrap:wrap;\n        gap:12px;\n      }\n\n      .edn-choice-grid label,\n      .edn-choice-row label{\n        position:relative;\n        display:inline-flex;\n        align-items:center;\n        gap:10px;\n        min-height:48px;\n        padding:12px 16px;\n        border:1px solid rgba(15,23,42,.12);\n        background:#fff;\n        border-radius:14px;\n        cursor:pointer;\n        transition:all .2s ease;\n        font-weight:600;\n      }\n\n      .edn-choice-grid label:hover,\n      .edn-choice-row label:hover{\n        border-color:rgba(29,91,151,.35);\n        transform:translateY(-1px);\n      }\n\n      .edn-choice-grid input,\n      .edn-choice-row input{\n        accent-color:var(--primary-2);\n      }\n\n      .edn-levels-wrap{\n        display:grid;\n        grid-template-columns:repeat(3,minmax(0,1fr));\n        gap:18px;\n      }\n\n      .edn-level-group{\n        background:#fbfcff;\n        border:1px solid rgba(15,23,42,.08);\n        border-radius:18px;\n        padding:18px;\n      }\n\n      .edn-level-group h4{\n        margin:0 0 12px;\n        font-size:16px;\n      }\n\n      .edn-level-group label{\n        display:flex;\n        align-items:center;\n        gap:10px;\n        margin:10px 0;\n        cursor:pointer;\n        font-weight:600;\n      }\n\n      .edn-map-actions{\n        display:flex;\n        flex-wrap:wrap;\n        align-items:center;\n        gap:14px;\n        margin-bottom:14px;\n      }\n\n      .edn-btn{\n        display:inline-flex;\n        align-items:center;\n        justify-content:center;\n        min-height:48px;\n        padding:0 18px;\n        border-radius:14px;\n        border:none;\n        cursor:pointer;\n        font-size:15px;\n        font-weight:800;\n        transition:transform .2s ease, opacity .2s ease, box-shadow .2s ease;\n      }\n\n      .edn-btn:hover{ transform:translateY(-1px); }\n\n      .edn-btn-primary{\n        background:linear-gradient(135deg, var(--primary) 0%, var(--primary-2) 100%);\n        color:#fff;\n        box-shadow:0 14px 30px rgba(19,58,99,.22);\n      }\n\n      .edn-btn-secondary{\n        background:#fff;\n        color:var(--primary);\n        border:1px solid rgba(19,58,99,.16);\n      }\n\n      .edn-map-status,\n      .edn-submit-status{\n        font-size:14px;\n        color:var(--muted);\n        line-height:1.5;\n      }\n\n      #edn-map{\n        width:100%;\n        height:520px;\n        border-radius:22px;\n        overflow:hidden;\n        border:1px solid rgba(15,23,42,.1);\n        box-shadow:0 16px 40px rgba(15,23,42,.08);\n        cursor:crosshair;\n      }\n\n      .edn-latlng-grid{\n        margin-top:16px;\n      }\n\n      .edn-submit-wrap{\n        display:flex;\n        flex-direction:column;\n        gap:12px;\n        padding-top:12px;\n      }\n\n      .edn-closing-note{\n        margin-top:22px;\n        padding:18px 20px;\n        border-radius:18px;\n        background:#f7f9fc;\n        color:var(--text);\n        line-height:1.7;\n        border:1px solid rgba(15,23,42,.06);\n      }\n\n      .edn-site-footer-image{\n        width:100vw;\n        margin-left:calc(50% - 50vw);\n        margin-right:calc(50% - 50vw);\n        margin-top:36px;\n        line-height:0;\n      }\n\n      .edn-site-footer-image img{\n        display:block;\n        width:100%;\n        height:auto;\n      }\n\n      .edn-credit-footer{\n        text-align:center;\n        padding:22px 16px 10px;\n        font-size:14px;\n        color:#445066;\n        line-height:1.7;\n      }\n\n      .edn-credit-footer a{\n        color:#133a63;\n        text-decoration:none;\n        transition:all .2s ease;\n      }\n\n      .edn-credit-footer a:hover{\n        color:#1d5b97;\n        text-shadow:0 0 12px rgba(29,91,151,.18);\n      }\n\n      .edn-credit-footer a strong{\n        font-weight:800;\n      }\n\n      @media (max-width: 900px){\n        .edn-bus-benefits,\n        .edn-levels-wrap,\n        .edn-grid-2{\n          grid-template-columns:1fr;\n        }\n        #edn-map{\n          height:420px;\n        }\n      }\n\n      @media (max-width: 640px){\n        .edn-bus-hero,\n        .edn-bus-card{\n          border-radius:22px;\n          padding:22px 18px;\n        }\n        .edn-question{\n          font-size:17px;\n        }\n        #edn-map{\n          height:360px;\n          border-radius:18px;\n        }\n      }\n    <\/style>\n\n    <script>\n      window.EDN_BUS_SURVEY_CONFIG = {\n        appsScriptUrl: \"https:\\\/\\\/script.google.com\\\/macros\\\/s\\\/AKfycbxav7mBQuISbIIC7fxIpl9aaBAz7qPeWlDpPKoARAjZEjA2pSh3Rkrc0BIMbZRTCg0X2w\\\/exec\",\n        mauritiusCenter: { lat: -20.348404, lng: 57.552152 }\n      };\n    <\/script>\n\n    <script>\n      (function() {\n        let map;\n        let marker;\n        let geocoder;\n\n        const form = document.getElementById('edn-bus-form');\n        const geolocateBtn = document.getElementById('edn-geolocate-btn');\n        const mapStatus = document.getElementById('edn-map-status');\n        const submitStatus = document.getElementById('edn-submit-status');\n        const latInput = document.getElementById('latitude');\n        const lngInput = document.getElementById('longitude');\n        const addressInput = document.getElementById('address_text');\n\n        function setStatus(message, isOk = false, allowHtml = false) {\n          if (allowHtml) {\n            mapStatus.innerHTML = message;\n            mapStatus.style.color = '';\n          } else {\n            mapStatus.textContent = message;\n            mapStatus.style.color = isOk ? '#0f7b53' : '#5b6474';\n          }\n        }\n\n        function setSubmitStatus(message, isOk = false, isError = false) {\n          submitStatus.textContent = message;\n          submitStatus.style.color = isError ? '#b42318' : (isOk ? '#0f7b53' : '#5b6474');\n        }\n\n        function updateMarkerPosition(latLng) {\n          if (!marker) {\n            marker = new google.maps.Marker({\n              position: latLng,\n              map: map,\n              title: 'Domicile s\u00e9lectionn\u00e9'\n            });\n          } else {\n            marker.setPosition(latLng);\n          }\n\n          latInput.value = Number(latLng.lat).toFixed(6);\n          lngInput.value = Number(latLng.lng).toFixed(6);\n\n          if (geocoder) {\n            geocoder.geocode({ location: latLng }, function(results, status) {\n              if (status === 'OK' && results && results[0]) {\n                if (!addressInput.value) {\n                  addressInput.value = results[0].formatted_address;\n                }\n                setStatus('Position s\u00e9lectionn\u00e9e avec succ\u00e8s.', true);\n              } else {\n                setStatus('Position s\u00e9lectionn\u00e9e avec succ\u00e8s.', true);\n              }\n            });\n          } else {\n            setStatus('Position s\u00e9lectionn\u00e9e avec succ\u00e8s.', true);\n          }\n        }\n\n        window.initEdnBusMap = function() {\n          geocoder = new google.maps.Geocoder();\n\n          map = new google.maps.Map(document.getElementById(\"edn-map\"), {\n            center: window.EDN_BUS_SURVEY_CONFIG.mauritiusCenter,\n            zoom: 10,\n            streetViewControl: false,\n            mapTypeControl: false,\n            fullscreenControl: true\n          });\n\n          map.addListener(\"click\", function(e) {\n            updateMarkerPosition({\n              lat: e.latLng.lat(),\n              lng: e.latLng.lng()\n            });\n          });\n\n          setStatus('<span style=\"color:#b42318; font-weight:700;\">Vous pouvez cliquer manuellement sur la carte pour s\u00e9lectionner votre domicile.<\/span>', false, true);\n        };\n\n        geolocateBtn.addEventListener('click', function() {\n          if (!navigator.geolocation) {\n            setStatus(\"La g\u00e9olocalisation n'est pas prise en charge par votre navigateur. Cliquez directement sur la carte.\");\n            return;\n          }\n\n          setStatus(\"Recherche de votre position...\");\n\n          navigator.geolocation.getCurrentPosition(\n            function(position) {\n              const latLng = {\n                lat: position.coords.latitude,\n                lng: position.coords.longitude\n              };\n\n              map.setCenter(latLng);\n              map.setZoom(16);\n              updateMarkerPosition(latLng);\n            },\n            function() {\n              setStatus(\"Impossible d'obtenir votre position. Cliquez directement sur la carte pour placer votre domicile.\");\n            },\n            {\n              enableHighAccuracy: true,\n              timeout: 10000,\n              maximumAge: 0\n            }\n          );\n        });\n\n        form.addEventListener('submit', async function(e) {\n          e.preventDefault();\n\n          if (!window.EDN_BUS_SURVEY_CONFIG.appsScriptUrl) {\n            setSubmitStatus(\"Le formulaire n'est pas encore connect\u00e9 \u00e0 Google Sheets. La carte fonctionne, mais l'envoi n'est pas encore activ\u00e9.\", false, true);\n            return;\n          }\n\n          const formData = new FormData(form);\n          const levels = formData.getAll('levels[]');\n\n          if (!formData.get('children_count')) {\n            setSubmitStatus(\"Merci d'indiquer le nombre d\u2019enfants concern\u00e9s.\", false, true);\n            return;\n          }\n\n          if (levels.length === 0) {\n            setSubmitStatus(\"Merci de s\u00e9lectionner au moins un niveau scolaire.\", false, true);\n            return;\n          }\n\n          if (!latInput.value || !lngInput.value) {\n            setSubmitStatus(\"Merci d'indiquer votre domicile sur la carte avant d'envoyer.\", false, true);\n            return;\n          }\n\n          const payload = {\n            submitted_at: new Date().toISOString(),\n            parent_name: formData.get('parent_name') || '',\n            children_count: formData.get('children_count') || '',\n            email: formData.get('email') || '',\n            phone: (formData.get('phone') || '').replace(\/\\s+\/g, '').replace(\/^\\+\/, '00'),\n            address_text: formData.get('address_text') || '',\n            current_bus_use: formData.get('current_bus_use') || '',\n            current_satisfaction: formData.get('current_satisfaction') || '',\n            next_year_interest: formData.get('next_year_interest') || '',\n            levels: levels,\n            comments: formData.get('comments') || '',\n            latitude: formData.get('latitude') || '',\n            longitude: formData.get('longitude') || '',\n            google_maps_link: `https:\/\/www.google.com\/maps?q=${formData.get('latitude')},${formData.get('longitude')}`\n          };\n\n          setSubmitStatus(\"Envoi en cours...\");\n\ntry {\n  await fetch(window.EDN_BUS_SURVEY_CONFIG.appsScriptUrl, {\n    method: 'POST',\n    mode: 'no-cors',\n    body: JSON.stringify(payload),\n    headers: {\n      'Content-Type': 'text\/plain;charset=utf-8'\n    }\n  });\n\n  setSubmitStatus(\"Merci, votre r\u00e9ponse a bien \u00e9t\u00e9 enregistr\u00e9e.\", true, false);\n  form.reset();\n  latInput.value = '';\n  lngInput.value = '';\n  if (marker) {\n    marker.setMap(null);\n    marker = null;\n  }\n  setStatus('<span style=\"color:#b42318; font-weight:700;\">Vous pouvez cliquer manuellement sur la carte pour s\u00e9lectionner votre domicile.<\/span>', false, true);\n  map.setCenter(window.EDN_BUS_SURVEY_CONFIG.mauritiusCenter);\n  map.setZoom(10);\n\n} catch (err) {\n  setSubmitStatus(\"Une erreur est survenue pendant l'envoi. Merci de r\u00e9essayer.\", false, true);\n}\n        });\n      })();\n    <\/script>\n\n    <script async\n      src=\"https:\/\/maps.googleapis.com\/maps\/api\/js?key=AIzaSyAlkZegWoOUjS7o-yg9XsTKY4w19SuGbkA&callback=initEdnBusMap\">\n    <\/script>\n    \n","protected":false},"excerpt":{"rendered":"","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-5","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/schoolbus.tropitech.cloud\/en\/wp-json\/wp\/v2\/pages\/5","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/schoolbus.tropitech.cloud\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/schoolbus.tropitech.cloud\/en\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/schoolbus.tropitech.cloud\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/schoolbus.tropitech.cloud\/en\/wp-json\/wp\/v2\/comments?post=5"}],"version-history":[{"count":1,"href":"https:\/\/schoolbus.tropitech.cloud\/en\/wp-json\/wp\/v2\/pages\/5\/revisions"}],"predecessor-version":[{"id":7,"href":"https:\/\/schoolbus.tropitech.cloud\/en\/wp-json\/wp\/v2\/pages\/5\/revisions\/7"}],"wp:attachment":[{"href":"https:\/\/schoolbus.tropitech.cloud\/en\/wp-json\/wp\/v2\/media?parent=5"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}