{"id":674,"date":"2026-08-30T00:54:47","date_gmt":"2026-08-30T00:54:47","guid":{"rendered":"https:\/\/sourceplurielle.be\/?page_id=674"},"modified":"2026-09-06T09:48:25","modified_gmt":"2026-09-06T09:48:25","slug":"674-2","status":"publish","type":"page","link":"https:\/\/sourceplurielle.be\/index.php\/674-2\/","title":{"rendered":"Reservation scolaire"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"674\" class=\"elementor elementor-674\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-4d0c54f2 e-flex e-con-boxed e-con e-parent\" data-id=\"4d0c54f2\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-66075eef elementor-widget elementor-widget-text-editor\" data-id=\"66075eef\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<style>.spf-public-school{--p:#6045f5;--ink:#16213a;--line:#e7eaf2;max-width:1240px;margin:24px auto;font-family:system-ui,-apple-system,BlinkMacSystemFont,\"Segoe UI\",sans-serif;color:var(--ink)}.spf-public-school .card{background:#fff;border:1px solid var(--line);border-radius:24px;padding:30px 32px;margin-bottom:20px;box-shadow:0 14px 36px rgba(31,41,55,.055)}.spf-public-school .step{display:flex;align-items:center;gap:14px;margin-bottom:14px}.spf-public-school .step i{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#eeeaff;color:var(--p);font-style:normal;font-weight:850;font-size:17px}.spf-public-school h3{margin:0;font-size:25px;letter-spacing:-.02em}.spf-public-school .grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 18px}.spf-public-school label{font-size:12.5px;font-weight:800;display:block;color:#3d4962;line-height:1.2}.spf-public-school input,.spf-public-school select,.spf-public-school textarea{width:100%;box-sizing:border-box;margin-top:7px;border:1px solid #d7ddea;border-radius:10px;padding:10px 12px;background:#fff;color:#172033;min-height:44px;font-size:15px;transition:border-color .15s,box-shadow .15s,background .15s}.spf-public-school input:focus,.spf-public-school select:focus,.spf-public-school textarea:focus{outline:none;border-color:#7663f6;box-shadow:0 0 0 3px rgba(96,69,245,.11);background:#fff}.spf-public-school .class-row{display:grid;grid-template-columns:minmax(190px,1.45fr) minmax(185px,1.25fr) minmax(130px,.9fr) minmax(185px,1.15fr) minmax(150px,1fr) minmax(120px,.72fr) 44px;gap:12px;align-items:end;padding:12px 14px;margin:8px 0;border:1px solid #edf0f6;border-radius:16px;background:#fbfcff}.spf-public-school .class-row:first-child{margin-top:14px}.spf-public-school .class-row input,.spf-public-school .class-row select{min-height:42px;padding:9px 11px}.spf-public-school button{border:0;border-radius:11px;padding:11px 16px;font-weight:800;cursor:pointer;transition:transform .15s,box-shadow .15s,background .15s}.spf-public-school button:hover{transform:translateY(-1px)}.spf-public-school .primary{background:var(--p);color:white;box-shadow:0 7px 18px rgba(96,69,245,.2)}.spf-public-school .secondary{background:#f0efff;color:#5548e8}.spf-public-school .remove{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#fff1f1;color:#d13a3a;padding:0;font-size:20px}.spf-public-school .summary{display:flex;gap:10px;flex-wrap:wrap;padding:14px 0 12px}.spf-public-school .summary span{padding:8px 13px;border-radius:999px;background:#f4f2ff;color:#5949df;font-weight:850;font-size:14px}.spf-public-school .money{display:flex;justify-content:space-between;align-items:center;background:linear-gradient(135deg,#f8f9ff,#fafcff);border:1px solid #eceefa;border-radius:18px;padding:18px 22px;margin-top:16px}.spf-public-school .money b{font-size:30px;letter-spacing:-.02em}.spf-public-school .money small{color:#707b92}.spf-public-school .hint{font-size:13px;color:#748099;margin:4px 0 0}.spf-public-school #spf-class-rows{margin-top:14px}@media(max-width:1100px){.spf-public-school{max-width:100%}.spf-public-school .class-row{grid-template-columns:repeat(3,minmax(0,1fr)) 44px}.spf-public-school .class-row label:nth-of-type(4),.spf-public-school .class-row label:nth-of-type(5),.spf-public-school .class-row label:nth-of-type(6){grid-row:2}.spf-public-school .class-row .remove{grid-row:1 \/ span 2;grid-column:4}}@media(max-width:760px){.spf-public-school .card{padding:22px 18px}.spf-public-school .grid,.spf-public-school .class-row{grid-template-columns:1fr}.spf-public-school .class-row .remove{grid-row:auto;grid-column:auto;justify-self:end}.spf-public-school .money{align-items:flex-start;gap:12px;flex-direction:column}}\n        <\/style>\n<form class=\"spf-public-school\" method=\"post\" action=\"https:\/\/sourceplurielle.be\/wp-admin\/admin-post.php\" id=\"spf-school-booking-form\"><input type=\"hidden\" name=\"action\" value=\"spf_public_school_reservation\"><input type=\"hidden\" name=\"year\" value=\"2027\"><input type=\"hidden\" name=\"unit_price\" value=\"6\"><input type=\"hidden\" id=\"spf_public_nonce\" name=\"spf_public_nonce\" value=\"4ec2ba85d8\" \/><input type=\"hidden\" name=\"_wp_http_referer\" value=\"\/index.php\/wp-json\/wp\/v2\/pages\/674\" \/>        <\/p>\n<div class=\"card\">\n<div class=\"step\"><i>1<\/i><\/p>\n<h3>\u00c9cole &#038; responsable de r\u00e9servation<\/h3>\n<\/div>\n<div class=\"grid\"><label>Nom de l\u2019\u00e9cole<input required name=\"school_name\"><\/label><label>Journ\u00e9e choisie<select required name=\"event_date\"><option value=\"\">Choisir\u2026<\/option><option value=\"2027-05-27\">jeudi 27 mai 2027 \u2014 Journ\u00e9e scolaire<\/option><option value=\"2027-05-28\">vendredi 28 mai 2027 \u2014 Journ\u00e9e scolaire<\/option><\/select><\/label><label>Rue \/ adresse<input required name=\"school_address\"><\/label><label>Code postal<input required name=\"school_postal_code\"><\/label><label>Commune \/ ville<input required name=\"school_city\"><\/label><label>T\u00e9l\u00e9phone \u00e9cole<input name=\"school_phone\"><\/label><label>Responsable de r\u00e9servation<input required name=\"reservation_contact_name\"><\/label><label>E-mail<input required type=\"email\" name=\"reservation_contact_email\"><\/label><label>T\u00e9l\u00e9phone<input required name=\"reservation_contact_phone\"><\/label><\/div>\n<\/div>\n<div class=\"card\">\n<div class=\"step\"><i>2<\/i><\/p>\n<h3>Pour le devis \/ la facture<\/h3>\n<\/div>\n<div class=\"grid\"><label>Organisme destinataire \/ payeur<input required name=\"billing_organisation\" placeholder=\"\u00c9cole, commune, pouvoir organisateur\u2026\"><\/label><label>E-mail facturation<input type=\"email\" name=\"billing_email\"><\/label><label>Rue \/ adresse de facturation<input required name=\"billing_address\"><\/label><label>Code postal<input required name=\"billing_postal_code\"><\/label><label>Ville<input required name=\"billing_city\"><\/label><\/div>\n<p class=\"hint\">Le num\u00e9ro de bon de commande pourra \u00eatre ajout\u00e9 plus tard, avant la transformation du devis en facture.<\/p>\n<\/div>\n<div class=\"card\">\n<div class=\"step\"><i>3<\/i><\/p>\n<h3>Classes participantes<\/h3>\n<\/div>\n<p class=\"hint\">Ajoutez chaque classe participante avec le nom de son enseignant\u00b7e, son niveau et son nombre d\u2019\u00e9l\u00e8ves.<\/p>\n<div id=\"spf-class-rows\">\n<div class=\"class-row\"><label>Classe de Mme \/ M.<input required name=\"classes[0][teacher_name]\" placeholder=\"Nom de l\u2019enseignant\u00b7e\"><\/label><label>E-mail du responsable<input type=\"email\" name=\"classes[0][teacher_email]\"><\/label><label>T\u00e9l\u00e9phone<input name=\"classes[0][teacher_phone]\"><\/label><label>Type d\u2019enseignement<select required class=\"spf-teaching-type\" name=\"classes[0][teaching_level]\"><option value=\"\" selected disabled>\u2014 Choisir le type \u2014<\/option><option value=\"Maternelle\">Maternelle<\/option><option value=\"Primaire\">Primaire<\/option><option value=\"Secondaire\">Secondaire<\/option><option value=\"Sp\u00e9cialis\u00e9\">Sp\u00e9cialis\u00e9<\/option><option value=\"Autre\">Autre<\/option><\/select><\/label><label>Niveau de la classe<select required class=\"spf-class-level\" name=\"classes[0][level_label]\" disabled><option value=\"\" selected disabled>\u2014 Choisir d\u2019abord le type \u2014<\/option><\/select><\/label><label>Nombre d\u2019\u00e9l\u00e8ves<input required type=\"number\" min=\"1\" name=\"classes[0][student_count]\" class=\"spf-student-count\"><\/label><button type=\"button\" class=\"remove\" title=\"Supprimer cette classe\">\u00d7<\/button><\/div>\n<\/div>\n<p><button type=\"button\" class=\"secondary\" id=\"spf-add-class\">+ Ajouter une classe<\/button> <button type=\"button\" class=\"secondary\" id=\"spf-duplicate-class\">\u29c9 Dupliquer la derni\u00e8re classe<\/button><\/p>\n<div class=\"summary\"><span id=\"spf-class-count\">1 classe<\/span><span id=\"spf-student-total\">0 enfant<\/span><\/div>\n<div class=\"money\"><span>Tarif : 6,00 \u20ac \/ \u00e9l\u00e8ve<\/span><\/p>\n<div><small>Total estim\u00e9<\/small><br \/><b id=\"spf-money-total\">0,00 \u20ac<\/b><\/div>\n<\/div>\n<\/div>\n<div class=\"card\">\n<div class=\"step\"><i>4<\/i><\/p>\n<h3>Informations compl\u00e9mentaires<\/h3>\n<\/div>\n<p><label>Accompagnant\u00b7e\u00b7s suppl\u00e9mentaires<input type=\"number\" min=\"0\" name=\"extra_chaperones\" value=\"0\"><\/label><label>Question ou remarque<textarea name=\"notes\" rows=\"4\" placeholder=\"Accessibilit\u00e9, besoins particuliers, informations utiles\u2026\"><\/textarea><\/label><\/p>\n<p><button class=\"primary\" type=\"submit\">Envoyer la r\u00e9servation<\/button><\/p>\n<\/div>\n<\/form>\n<p>        <script>(function(){const box=document.getElementById('spf-class-rows'),add=document.getElementById('spf-add-class'),dup=document.getElementById('spf-duplicate-class'),cc=document.getElementById('spf-class-count'),st=document.getElementById('spf-student-total'),mt=document.getElementById('spf-money-total');const price=6;let i=1;function renumber(row,n){row.querySelectorAll('[name]').forEach(el=>el.name=el.name.replace(\/classes\\[\\d+\\]\/,'classes['+n+']'));}function update(){const rows=[...box.querySelectorAll('.class-row')];cc.textContent=rows.length+' classe'+(rows.length>1?'s':'');let total=0;box.querySelectorAll('.spf-student-count').forEach(x=>total+=parseInt(x.value||0));st.textContent=total+' enfant'+(total>1?'s':'');mt.textContent=(total*price).toLocaleString('fr-BE',{minimumFractionDigits:2,maximumFractionDigits:2})+' \u20ac';rows.forEach((r,n)=>renumber(r,n));}const levels={Maternelle:['M1','M2','M3'],Primaire:['P1','P2','P3','P4','P5','P6'],Secondaire:['S1','S2','S3','S4','S5','S6'],Sp\u00e9cialis\u00e9:['Sp\u00e9cialis\u00e9'],Autre:['Autre']};function fillLevels(row,keep){const type=row.querySelector('.spf-teaching-type'),level=row.querySelector('.spf-class-level');if(!type||!level)return;const wanted=keep||'';level.innerHTML='<option value=\"\" disabled>\u2014 Choisir le niveau \u2014<\/option>';if(!type.value){level.disabled=true;level.value='';return;}level.disabled=false;(levels[type.value]||[]).forEach(v=>{const o=document.createElement('option');o.value=v;o.textContent=v;level.appendChild(o);});level.value=(wanted&&(levels[type.value]||[]).includes(wanted))?wanted:'';}function bind(row){const type=row.querySelector('.spf-teaching-type');if(type){type.addEventListener('change',()=>{fillLevels(row,'');update();});}row.querySelector('.remove').onclick=()=>{if(box.querySelectorAll('.class-row').length>1)row.remove();update();};row.querySelectorAll('input,select').forEach(x=>x.addEventListener('input',update));}add.onclick=()=>{const row=box.querySelector('.class-row').cloneNode(true);row.querySelectorAll('input').forEach(x=>x.value='');const type=row.querySelector('.spf-teaching-type');if(type)type.value='';fillLevels(row,'');renumber(row,i++);box.appendChild(row);bind(row);update();};dup.onclick=()=>{const src=[...box.querySelectorAll('.class-row')].pop();const row=src.cloneNode(true);const type=row.querySelector('.spf-teaching-type'),level=row.querySelector('.spf-class-level');const keep=level?level.value:'';fillLevels(row,keep);renumber(row,i++);box.appendChild(row);bind(row);update();};box.querySelectorAll('.class-row').forEach(r=>{bind(r);fillLevels(r,r.querySelector('.spf-class-level')?.value||'');});update();})();<\/script><\/p>\n\n<p class=\"wp-block-paragraph\">\u00a0<\/p>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>\u00a0<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"elementor_header_footer","meta":{"footnotes":""},"class_list":["post-674","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/sourceplurielle.be\/index.php\/wp-json\/wp\/v2\/pages\/674","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/sourceplurielle.be\/index.php\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/sourceplurielle.be\/index.php\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/sourceplurielle.be\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/sourceplurielle.be\/index.php\/wp-json\/wp\/v2\/comments?post=674"}],"version-history":[{"count":11,"href":"https:\/\/sourceplurielle.be\/index.php\/wp-json\/wp\/v2\/pages\/674\/revisions"}],"predecessor-version":[{"id":893,"href":"https:\/\/sourceplurielle.be\/index.php\/wp-json\/wp\/v2\/pages\/674\/revisions\/893"}],"wp:attachment":[{"href":"https:\/\/sourceplurielle.be\/index.php\/wp-json\/wp\/v2\/media?parent=674"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}