PageSourceSearch

https://vpdive.com/_nuxt/Bjexh57m.js

js vpdive.com collected 2026-09-24 12:19:34 UTC 68,932 bytes, 1 lines download raw bytes

1import{ad as Pe,w as je,B as S,d as $e,c as x,l as r,t as k,g as C,k as E,j as g,Q as qe,m as Ze,F as te,r as re,p as ye,aK as Ve,y as at,i as Ce,f as W,v as it,h as U,a5 as Ge,L as nt,M as ot,e as Xe,aj as et,an as Le,a2 as Ke,q as We,a1 as lt,Y as ut,J as ct,b as dt,av as mt,o as ft,R as Je,ba as He,af as Ee,ag as vt}from"./CiKtckVa.js";import{i as gt}from"./CnigN51C.js";import{n as Ye}from"./CqGKZf02.js";import{m as pt}from"./aoQ9pqBB.js";import{S as tt,a as _t,b as yt,_ as ht,i as bt}from"./Bt_bXDsV.js";import{u as rt}from"./DidJpSs-.js";import{u as xt}from"./Drx3cB6G.js";import{_ as ce}from"./5DDz-OcZ.js";import"./CPiWm1qT.js";import"./xfwMVxXA.js";import"./DjYJYkEl.js";import"./CgrWSzAG.js";import"./B4Fyizo2.js";import"./8jDGFeVN.js";import"./CHCaeQPP.js";import"./D1bnLdWG.js";import"./C0vEuSDC.js";import"./j8TV5qon.js";import"./B09e4LRr.js";import"./CLDHYhVZ.js";import"./DxSatWAq.js";function wt(D){const h=S(null),N=S(!1),I=S(null),s=Pe();async function V(R=!1){if(s.currentEvent?.id===D&&!R)return h.value=s.currentEvent,h.value;N.value=!0,I.value=null;try{const F=await s.fetchEvent(D,R);if(F)return h.value=F,h.value;throw s.error?s.error:new Error("Événement non trouvé")}catch(F){return I.value=F,console.error("useEventDetails - Erreur:",F),null}finally{N.value=!1}}async function n(R){try{s.currentEvent||h.value||await V();const A=s.currentEvent||h.value;if(!A)return{isRegistered:!1,payment:null,userRegistrationData:null};const _=A.user_registered||{};let m=null;if(A.payments&&(m=A.payments[0]||null),R){const f=String(R),b=f in _,B=_[f]||null;return{isRegistered:b,payment:m,userRegistrationData:B}}return{isRegistered:Object.keys(_).length>0,payment:m,userRegistrationData:null}}catch(F){return console.error("Erreur lors de la vérification de l'inscription:",F),{isRegistered:!1,payment:null,userRegistrationData:null}}}async function $(){try{throw new Error("Fonctionnalité non implémentée")}catch(R){return I.value=R,!1}}return V(),je(()=>s.currentEvent,R=>{R&&R.id===D&&(h.value=R)}),{event:h,loading:N,error:I,loadEventDetails:V,checkRegistration:n,registerToEvent:$}}const kt={class:"flex items-center mb-6"},Dt={class:"text-2xl font-bold text-gray-800"},St={key:0,class:"text-sm text-gray-600 mt-1"},Ct=$e({__name:"PageHeader",props:{activityId:{type:String,required:!0},isRegistered:{type:Boolean,default:!1},assignmentChildName:{type:String,default:""},modification:{type:Boolean,default:!1}},setup(D){const h=D,N=E(()=>h.modification?"Modifier mon inscription":h.isRegistered?"Récapitulatif d'inscription":h.assignmentChildName?`Inscrire ${h.assignmentChildName}`:"Inscription à l'activité");return(I,s)=>(g(),x("div",kt,[r("button",{onClick:s[0]||(s[0]=V=>I.$router.push(`/app/activities/${D.activityId}`)),class:"mr-3 text-blue-600 hover:text-blue-800"},[...s[1]||(s[1]=[r("svg",{xmlns:"http://www.w3.org/2000/svg",class:"h-6 w-6",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[r("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M15 19l-7-7 7-7"})],-1)])]),r("div",null,[r("h1",Dt,k(N.value),1),D.assignmentChildName?(g(),x("p",St," Pour "+k(D.assignmentChildName),1)):C("",!0)])]))}}),jt={},$t={class:"animate-pulse"},At={class:"bg-white p-6 rounded-lg shadow-sm mb-6"},Rt={class:"space-y-5"};function It(D,h){return g(),x("div",$t,[h[2]||(h[2]=Ze('<div class="bg-white p-6 rounded-lg shadow-sm mb-6"><div class="border-b border-gray-200 pb-3 mb-4"><div class="h-5 w-40 bg-gray-200 rounded"></div><div class="h-3 w-64 bg-gray-100 rounded mt-2"></div></div><div class="grid grid-cols-1 sm:grid-cols-2 gap-3"><div class="h-16 bg-gray-100 rounded-lg"></div><div class="h-16 bg-gray-100 rounded-lg"></div></div></div><div class="bg-white p-6 rounded-lg shadow-sm mb-6"><div class="border-b border-gray-200 pb-3 mb-4"><div class="h-5 w-48 bg-gray-200 rounded"></div><div class="h-3 w-72 bg-gray-100 rounded mt-2"></div></div><div class="h-10 w-full bg-gray-100 rounded-md"></div></div>',2)),r("div",At,[h[1]||(h[1]=r("div",{class:"border-b border-gray-200 pb-3 mb-4"},[r("div",{class:"h-5 w-56 bg-gray-200 rounded"})],-1)),r("div",Rt,[(g(),x(te,null,re(4,N=>r("div",{key:N},[...h[0]||(h[0]=[r("div",{class:"h-3 w-32 bg-gray-200 rounded mb-2"},null,-1),r("div",{class:"h-10 w-full bg-gray-100 rounded-md"},null,-1)])])),64))])]),h[3]||(h[3]=r("div",{class:"flex justify-end"},[r("div",{class:"h-11 w-44 bg-gray-200 rounded-md"})],-1))])}const Qe=qe(jt,[["render",It]]),Ft={key:0,class:"space-y-4"},Tt={key:0,class:"bg-white rounded-lg shadow-sm border border-gray-200 overflow-hidden"},Et={class:"p-4"},Ot={class:"space-y-3"},Nt={class:"flex justify-between items-start"},Mt={class:"text-sm text-gray-500 font-medium"},zt={class:"text-gray-800 font-medium ml-4 text-right break-words"},Ut={key:1,class:"bg-white rounded-lg shadow-sm border border-gray-200 overflow-hidden"},Vt={class:"p-4"},Pt={class:"space-y-3"},qt={class:"flex justify-between items-start"},Bt={class:"text-sm text-gray-500 font-medium"},Lt={class:"text-gray-800 font-medium ml-4 text-right break-words"},Kt={key:2,class:"bg-white rounded-lg shadow-sm border border-gray-200 overflow-hidden"},Wt={class:"p-4"},Jt={class:"space-y-3"},Ht={class:"flex justify-between items-start"},Yt={class:"text-sm text-gray-500 font-medium"},Qt={class:"text-gray-800 font-medium ml-4 text-right break-words"},Zt={key:3,class:"bg-white rounded-lg shadow-sm border border-gray-200 overflow-hidden"},Gt={class:"bg-gray-50 border-b border-gray-200 px-4 py-3 flex items-center justify-between"},Xt={key:0,class:"text-xs text-gray-500 bg-gray-200 px-2 py-1 rounded"},er={class:"p-4"},tr={class:"space-y-3"},rr={class:"flex justify-between items-start"},sr={class:"text-sm text-gray-500 font-medium"},ar={class:"text-gray-800 font-medium ml-4 text-right break-words"},ir={key:4,class:"bg-white rounded-lg shadow-sm border border-gray-200 overflow-hidden"},nr={class:"bg-gray-50 border-b border-gray-200 px-4 py-3 flex items-center justify-between"},or={class:"text-xs text-gray-500 bg-gray-200 px-2 py-1 rounded"},lr={class:"p-4"},ur={class:"space-y-3"},cr={class:"flex justify-between items-start"},dr={class:"text-sm text-gray-500 font-medium"},mr={class:"text-gray-800 font-medium ml-4 text-right break-words"},fr={key:5,class:"bg-gray-50 border border-gray-200 rounded-lg p-4 text-center text-gray-500 italic"},vr=$e({__name:"FormDataSummary",props:{formData:{type:Object,required:!0},formBlocks:{type:Array,default:()=>[]},fieldMappings:{type:Object,default:()=>({})}},setup(D){const h=D,N=_=>_.getHours()===0&&_.getMinutes()===0&&_.getSeconds()===0?new Intl.DateTimeFormat("fr-FR",{day:"2-digit",month:"2-digit",year:"numeric"}).format(_):new Intl.DateTimeFormat("fr-FR",{day:"2-digit",month:"2-digit",year:"numeric",hour:"2-digit",minute:"2-digit"}).format(_),I=_=>!!(_.startsWith("material_")||_.startsWith("choice_")||tt.has(_)||["entity_id","updated_at","created_at","id","token","uuid","_token","_method","_action","csrf_token","timestamp","session_id","user_id","event_id","calendar_id"].some(p=>_===p||_.endsWith("_"+p))||_.length>50||_.length>20&&/^[A-Za-z0-9]{20,}$/.test(_)||_.startsWith("_")||_.includes("system")||_.includes("internal")),s=_=>{if(_==="tariff_plan")return"Plan tarifaire";if(_==="comment"||_==="commentaire")return"Commentaire";if(_==="people")return"Nombre de personnes";if(h.fieldMappings&&h.fieldMappings[_]&&h.fieldMappings[_].question)return h.fieldMappings[_].question;if(h.formBlocks&&Array.isArray(h.formBlocks)){const f=h.formBlocks.find(b=>b.token===_);if(f&&f.question)return f.question}const m={nom:"Nom de famille",prenom:"Prénom",firstname:"Prénom",lastname:"Nom de famille",mail:"Adresse email",email:"Adresse email",tel:"Téléphone",telephone:"Téléphone",phone:"Téléphone",adresse:"Adresse postale",address:"Adresse postale",ville:"Ville",city:"Ville",postal:"Code postal",zip:"Code postal",pays:"Pays",country:"Pays",date_naissance:"Date de naissance",date_arrivee:"Date d'arrivée",date_depart:"Date de départ",birthdate:"Date de naissance",niveau:"Niveau de plongée",level:"Niveau",licence:"Numéro de licence",license:"Numéro de licence",club:"Club de plongée",experience:"Expérience",certification:"Certification",document:"Document",file:"Fichier",photo:"Photo",justificatif:"Justificatif",comment:"Commentaire",commentaire:"Commentaire",message:"Message",note:"Note",observation:"Observation"},p=_.toLowerCase();if(m[p])return m[p];for(const[f,b]of Object.entries(m))if(p.includes(f))return b;return V(_)},V=_=>{if(!_||typeof _!="string"||_.length>20&&/[A-Za-z0-9]{20,}/.test(_))return"Champ";let m=_.replace(/[_\-\.]/g," ");return m=m.charAt(0).toUpperCase()+m.slice(1),m.length>30&&(m=m.substring(0,27)+"..."),m},n=E(()=>!h.formData||typeof h.formData!="object"?!1:Object.keys(h.formData).filter(m=>{const p=h.formData[m],f=p!=null&&p!==""&&!(Array.isArray(p)&&p.length===0),b=s(m)!=="Champ",B=!I(m);return f&&b&&B}).length>0),$=(_,m)=>{if(m==null||m==="")return"Non renseigné";if(m instanceof Date)return N(m);if(typeof m=="boolean")return m?"✓ Oui":"✗ Non";if(typeof m=="number")return _.includes("prix")||_.includes("price")||_.includes("montant")||_.includes("euro")?`${m.toFixed(2).replace(".",",")} €`:m.toString();if(Array.isArray(m)){if(m.length===0)return"Aucun document";if(_.includes("document")||_.includes("file")||_.includes("justif")){const f=m.map(b=>typeof b=="object"&&b.name?b.name:typeof b=="string"?b.split("/").pop()||b:"Fichier");return f.length===1?f[0]:`${f.length} fichiers (${f.slice(0,2).join(", ")}${f.length>2?"...":""})`}return`${m.length} élément${m.length>
11?"s":""}`}if(_==="tariff_plan")return"Plan tarifaire sélectionné";if(typeof m=="string")return m.length>100?m.substring(0,97)+"...":m.startsWith("http://")||m.startsWith("https://")?"🔗 Lien fourni":(m.includes("@")&&m.includes("."),m);const p=h.formBlocks.find(f=>f.token===_);if(p&&p.type==="choice"&&p.value?.choices){const f=p.value.choices;if(typeof m=="string"&&m in f){const b=f[m];if(typeof b=="object"&&"choice"in b)return b.choice;if(typeof b=="string")return b}}return typeof m=="object"?m.name?m.name:m.label?m.label:m.title?m.title:"Données structurées":String(m)},R=()=>Object.entries(h.formData).some(([_,m])=>Array.isArray(m)&&(_.includes("document")||_.includes("file")||_.includes("justif")||_.includes("upload")||_.includes("piece")||_.includes("attach"))),F=()=>Object.keys(h.formData).filter(m=>{const p=h.formData[m];return Array.isArray(p)&&(m.includes("document")||m.includes("file")||m.includes("justif")||m.includes("upload")||m.includes("piece")||m.includes("attach"))}),A=_=>{if(!h.formData||typeof h.formData!="object")return[];const m=Object.keys(h.formData).filter(p=>{const f=h.formData[p],b=f!=null&&f!==""&&!(Array.isArray(f)&&f.length===0),B=s(p),G=B&&B!=="Champ",de=!I(p);return b&&G&&de});if(_==="personal")return m.filter(p=>{const f=p.toLowerCase();return f.includes("nom")||f.includes("prenom")||f.includes("mail")||f.includes("email")||f.includes("club")||f.includes("licence")||f.includes("telephone")||f.includes("tel")||f.includes("responsable")||f.includes("adresse")||f.includes("ville")||f.includes("postal")||f.includes("pays")||f.includes("identity")||f.includes("contact")});if(_==="diving")return m.filter(p=>{const f=p.toLowerCase();return f.includes("niveau")||f.includes("plongee")||f.includes("plongées")||f.includes("plongeur")||f.includes("technique")||f.includes("nombre")||f.includes("material")||f.includes("équipement")||f.includes("equipment")||f.includes("certification")||f.includes("brevets")||f.includes("experience")});if(_==="dates")return m.filter(p=>{const f=p.toLowerCase();return f.includes("date")||f.includes("periode")||f.includes("au")||f.includes("souhaitées")||f.includes("arrivee")||f.includes("arrivée")||f.includes("depart")||f.includes("départ")||f.includes("naissance")||f.includes("when")||f.includes("time")});if(_==="other"){const p=/(nom|prenom|firstname|lastname|mail|email|tel|telephone|phone|adresse|address|ville|city|postal|zip|pays|country|identity|contact)/i,f=/(niveau|level|plongee|plongées|plongeur|technique|nombre|material|équipement|equipment|certification|brevets|experience)/i,b=/(date|periode|naissance|arrivee|arrivée|depart|départ|when|time)/i;return m.filter(B=>{const G=B.toLowerCase(),de=p.test(G),we=f.test(G),M=b.test(G),se=/(document|file|justif|upload|piece|attach)/i.test(G);return!de&&!we&&!M&&!se&&B!=="tariff_plan"})}return[]};return(_,m)=>n.value?(g(),x("div",Ft,[A("personal").length>0?(g(),x("div",Tt,[m[0]||(m[0]=r("div",{class:"bg-gray-50 border-b border-gray-200 px-4 py-3"},[r("h4",{class:"text-base font-semibold text-gray-800 flex items-center"},[r("svg",{class:"h-5 w-5 text-gray-500 mr-2",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[r("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M16 7a4 4 0 11-8 0 4 4 0 018 0zM12 14a7 7 0 00-7 7h14a7 7 0 00-7-7z"})]),ye(" Informations personnelles ")])],-1)),r("div",Et,[r("div",Ot,[(g(!0),x(te,null,re(A("personal"),p=>(g(),x("div",{key:p,class:"bg-gray-50 p-3 rounded-lg"},[r("div",Nt,[r("span",Mt,k(s(p)),1),r("span",zt,k($(p,D.formData[p])),1)])]))),128))])])])):C("",!0),A("diving").length>0?(g(),x("div",Ut,[m[1]||(m[1]=r("div",{class:"bg-gray-50 border-b border-gray-200 px-4 py-3"},[r("h4",{class:"text-base font-semibold text-gray-800 flex items-center"},[r("svg",{class:"h-5 w-5 text-gray-500 mr-2",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[r("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M13 10V3L4 14h7v7l9-11h-7z"})]),ye(" Informations de plongée ")])],-1)),r("div",Vt,[r("div",Pt,[(g(!0),x(te,null,re(A("diving"),p=>(g(),x("div",{key:p,class:"bg-gray-50 p-3 rounded-lg"},[r("div",qt,[r("span",Bt,k(s(p)),1),r("span",Lt,k($(p,D.formData[p])),1)])]))),128))])])])):C("",!0),A("dates").length>0?(g(),x("div",Kt,[m[2]||(m[2]=r("div",{class:"bg-gray-50 border-b border-gray-200 px-4 py-3"},[r("h4",{class:"text-base font-semibold text-gray-800 flex items-center"},[r("svg",{class:"h-5 w-5 text-gray-500 mr-2",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[r("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M8 7V3m8 4V3m-9 8h10M5 21h14a2 2 0 002-2V7a2 2 0 00-2-2H5a2 2 0 00-2 2v12a2 2 0 002 2z"})]),ye(" Dates et périodes ")])],-1)),r("div",Wt,[r("div",Jt,[(g(!0),x(te,null,re(A("dates"),p=>(g(),x("div",{key:p,class:"bg-gray-50 p-3 rounded-lg"},[r("div",Ht,[r("span",Yt,k(s(p)),1),r("span",Qt,k($(p,D.formData[p])),1)])]))),128))])])])):C("",!0),A("other").length>0?(g(),x("div",Zt,[r("div",Gt,[m[3]||(m[3]=r("h4",{class:"text-base font-semibold text-gray-800 flex items-center"},[r("svg",{class:"h-5 w-5 text-gray-500 mr-2",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[r("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M9 12h6m-6 4h6m2 5H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z"})]),ye(" Autres informations ")],-1)),A("other").length>3?(g(),x("span",Xt,k(A("other").length)+" champs ",1)):C("",!0)]),r("div",er,[r("div",tr,[(g(!0),x(te,null,re(A("other"),p=>(g(),x("div",{key:p,class:"bg-gray-50 p-3 rounded-lg"},[r("div",rr,[r("span",sr,k(s(p)),1),r("span",ar,k($(p,D.formData[p])),1)])]))),128))])])])):C("",!0),R()?(g(),x("div",ir,[r("div",nr,[m[4]||(m[4]=r("h4",{class:"text-base font-semibold text-gray-800 flex items-center"},[r("svg",{class:"h-5 w-5 text-gray-500 mr-2",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[r("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M9 12h6m-6 4h6m2 5H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z"})]),ye(" Documents soumis ")],-1)),r("span",or,k(F().length)+" "+k(F().length>1?"documents":"document"),1)]),r("div",lr,[r("div",ur,[(g(!0),x(te,null,re(F(),p=>(g(),x("div",{key:p,class:"bg-gray-50 p-3 rounded-lg"},[r("div",cr,[r("span",dr,k(s(p)),1),r("span",mr,k($(p,D.formData[p])),1)])]))),128))])])])):C("",!0),n.value?C("",!0):(g(),x("div",fr," Aucune donnée supplémentaire n'a été requise pour cette inscription. "))])):C("",!0)}}),gr={class:"space-y-6"},pr={class:"bg-white rounded-lg shadow-sm p-5"}
1,_r={class:"flex flex-wrap items-start justify-between gap-x-4 gap-y-2"},yr={class:"min-w-0"},hr={class:"text-lg font-semibold text-navy-500"},br={key:0,class:"mt-0.5 text-sm text-gray-500"},xr={key:0,class:"mt-3 text-sm text-gray-600"},wr={class:"mt-3 text-xs text-gray-400"},kr={class:"bg-white rounded-lg shadow-sm p-5"},Dr={class:"grid gap-x-10 sm:grid-cols-2"},Sr={class:"flex items-baseline justify-between gap-4 border-b border-gray-100 py-2.5"},Cr={key:0,class:"flex items-baseline justify-between gap-4 border-b border-gray-100 py-2.5"},jr={key:1,class:"flex items-baseline justify-between gap-4 border-b border-gray-100 py-2.5"},$r={class:"text-sm font-semibold text-navy-500 text-right tabular-nums"},Ar={key:2,class:"flex items-baseline justify-between gap-4 border-b border-gray-100 py-2.5"},Rr={class:"text-sm font-semibold text-navy-500 text-right tabular-nums"},Ir={class:"flex items-baseline justify-between gap-4 border-b border-gray-100 py-2.5"},Fr={class:"bg-white rounded-lg shadow-sm p-5"},Tr={key:0,class:"text-center py-6"},Er={class:"flex flex-col items-center"},Or={class:"w-12 h-12 bg-primary-tint rounded-full flex items-center justify-center mb-3"},Nr={key:1,class:"divide-y divide-gray-100"},Mr={class:"flex items-baseline gap-3"},zr={class:"flex-1 min-w-0 text-sm font-semibold text-navy-500"},Ur=["onClick"],Vr={class:"mt-2 space-y-3"},Pr={class:"text-sm text-gray-500 leading-snug"},qr={class:"mt-0.5"},Br=["src","alt"],Lr={key:1,class:"text-sm font-medium text-navy-500"},Kr={key:3,class:"mt-6"},Wr={class:"flex items-center space-x-3 mb-4"},Jr={class:"text-base font-semibold text-navy-500"},Hr={class:"text-sm text-gray-500"},Yr={class:"grid gap-3 md:grid-cols-2"},Qr={class:"flex items-start justify-between space-x-3"},Zr={class:"flex items-start space-x-3 flex-1 min-w-0"},Gr={class:"flex-1 min-w-0"},Xr={class:"text-sm font-medium text-gray-900 leading-tight"},es={key:4,class:"mt-6"},ts={class:"flex items-center space-x-3 mb-4"},rs={class:"text-sm text-gray-500"},ss={class:"grid gap-3 md:grid-cols-2"},as={class:"flex items-start space-x-3"},is={key:0,class:"flex-shrink-0 w-8 h-8 bg-primary-tint rounded-full flex items-center justify-center"},ns={class:"text-sm font-bold text-primary"},os={key:1,class:"flex-shrink-0 w-2 h-2 rounded-full bg-primary mt-2"},ls={class:"flex-1 min-w-0"},us={class:"text-sm font-medium text-gray-900 leading-tight"},cs={key:0,class:"text-xs text-gray-500 mt-1"},ds={key:5,class:"mt-6"},ms={class:"mt-2 border-l-2 border-gray-200 pl-3 text-sm text-navy-500 leading-relaxed"},fs={key:6,class:"mt-6"},vs={class:"bg-white p-4 rounded-lg border border-amber-100 relative"},gs={class:"text-gray-700 leading-relaxed pl-8"},ps={class:"bg-white rounded-lg shadow-sm p-4"},_s={class:"flex flex-col sm:flex-row sm:items-center gap-3"},ys={class:"text-sm text-center text-gray-500 mt-4 p-3 bg-gray-50 rounded-lg"},hs={key:0,class:"flex items-center justify-center"},bs={key:1,class:"flex items-center justify-center"},xs={key:2,class:"flex items-center justify-center"},ws={key:3,class:"flex items-center justify-center"},ks={key:4,class:"flex items-center justify-center"},Ds={key:5,class:"flex items-center justify-center"},Ss={class:"bg-white rounded-lg shadow-xl max-w-md w-full mx-4 p-6"},Cs={key:0,class:"mb-4 p-3 bg-red-50 border border-red-200 rounded-lg"},js={class:"text-red-800 text-sm"},$s={key:1,class:"mb-4 p-3 bg-primary-tint border border-gray-100 rounded-lg"},As={class:"text-primary text-sm"},Rs={class:"flex gap-3"},Is=$e({__name:"RegistrationSummary",props:{event:{type:Object,required:!0},activityId:{type:String,required:!0},registrationDate:{type:Date,required:!0},paymentStatus:{type:String,default:"unpaid"},selectedTariff:{type:String,default:null},formData:{type:Object,required:!0},formBlocks:{type:Array,default:()=>[]},fieldMappings:{type:Object,default:()=>({})},getActiveTariffLabel:{type:Function,required:!0},getActiveTariffPrice:{type:Function,required:!0},userId:{type:[String,Number],default:1},modification:{type:Boolean,default:!1},uctToken:{type:String,default:null},apiFormResponses:{type:Object,default:null},adminMode:{type:Boolean,default:!1}},emits:["update:modification"],setup(D,{emit:h}){const N=et(),I=Pe(),{mergedEventData:s}=Ve(I),{t:V}=at(),n=D,$=h,R=S(!1),F=S(!1),A=S(""),_=S(""),m=S(n.modification);function p(o){m.value=o,$("update:modification",o)}const f=S([]);function b(o,i){return i<=3?!0:f.value[o]===!1}function B(o){f.value[o]=f.value[o]!==!1}const G=E(()=>n.event),{isAlreadyRegistered:de,canUnregister:we,modificationAllowed:M,unregister:se,unregisterAssignmentChild:me,canUnregisterAssignmentChild:L,isAccountRegistered:J,errorMessage:fe,successMessage:ve}=rt(G,n.activityId),H=E(()=>n.uctToken?J(n.uctToken):de.value),X=E(()=>n.uctToken?L(n.uctToken):we.value),y=E(()=>
1{if(n.adminMode)return!0;if(n.uctToken){const o=n.event?.can_modification_assignement?.[n.uctToken];if(o)return o.allow===!0}return M.value});function T(o){if(!o.price)return!0;if(typeof o.price=="string"||typeof o.price=="number"){const i=parseFloat(String(o.price).replace(",","."));return i===0||isNaN(i)}if(typeof o.price=="object"){const i=Object.values(o.price);return i.length===0||i.every(d=>{const c=parseFloat(String(d).replace(",","."));return c===0||isNaN(c)})}return!0}const ne=o=>{const i=[];return Object.entries(o).forEach(([d,c])=>{(d.startsWith("material_")||d.startsWith("choice_"))&&c&&c!==""&&i.push(c)}),i},O=()=>{if(!n.userId)return null;const o=String(n.userId);return s.value?.user_registered?.[o]?s.value.user_registered[o]:n.event?.user_registered?.[o]?n.event.user_registered[o]:n.formData&&Object.keys(n.formData).length>0?{name:`${n.formData.prenom||n.formData.first_name||""} ${n.formData.nom||n.formData.last_name||""}`.trim()||"Participant",material:ne(n.formData),comment:n.formData.comment||"",tariff_plan:n.selectedTariff||"",roles:[]}:null},ae=()=>{const o=O();if(!o)return{token:n.selectedTariff||null,label:n.getActiveTariffLabel&&n.getActiveTariffLabel()||"Tarif",price:n.getActiveTariffPrice&&n.getActiveTariffPrice()||0};const i=o.tariff_plan_token,d=o.tariff_plan;if(!i||!n.event.price)return{token:i||null,label:d||"Tarif",price:0};const c=n.event.price[i]||0,t=d||n.event.tariff_plans?.[i]||"Tarif";return{token:i,label:t,price:c}},Q=E(()=>{const o=ae();return`${o.label} - ${Ne(o.price)} €`}),Ae=()=>O()?.people||1,Re=E(()=>Ae()>1);function z(o){if(o.payment_mandatory!==!0)return!1;const i=parseFloat(String(ae().price??0).replace(",","."));return!(!i||i<=0||oe()==="paid")}const ie=E(()=>O()?.waitingList===!0);function j(){return ie.value?"bg-navy-50 text-navy-500":z(n.event)?"bg-orange-50 text-orange-700":"bg-primary-tint text-primary"}function he(){return ie.value?"Liste d'attente":z(n.event)?"Paiement requis":"Inscription validée"}function ge(){return ie.value?z(n.event)?"Votre inscription est enregistrée en liste d'attente : votre place n'est pas garantie. Finalisez votre paiement pour la conserver.":"Votre inscription est enregistrée en liste d'attente : votre place n'est pas garantie, vous serez inscrit si une place se libère.":z(n.event)?"Votre inscription est enregistrée. Finalisez votre paiement pour la valider définitivement.":"Votre inscription à cette activité est confirmée et validée."}function ee(){return z(n.event)?"text-orange-600 font-normal":oe()==="paid"?"text-primary font-normal":"text-orange-600 font-normal"}function oe(){return n.event.payments&&n.event.payments.length>0?n.event.payments.find(i=>i.status==="paid")?"paid":"unpaid":n.paymentStatus}function K(){const o=n.event?.token,i=o&&o.length>10&&isNaN(Number(o))?o:n.activityId;N.push(`/app/activities/${i}`)}async function Oe(){try{F.value=!0,A.value="",_.value="",n.uctToken?await me(n.uctToken):await se(),fe.value?A.value=fe.value:ve.value&&(_.value=ve.value,setTimeout(()=>{R.value=!1,K()},2e3))}catch{A.value="Erreur lors de la désinscription"}finally{F.value=!1}}function le(){N.push("/app/panier")}const ue=E(()=>{const o=n.event;return o?.place||o?.title||""}),ke=E(()=>{const o=n.event,i=Le(o?.fromDate||o?.from_date||o?.start),d=[];return i&&d.push(new Intl.DateTimeFormat("fr-FR",{weekday:"long",day:"numeric",month:"long",hour:"2-digit",minute:"2-digit"}).format(i)),o?.city&&d.push(o.city),d.join(" · ")}),Ie=o=>new Intl.DateTimeFormat("fr-FR",{day:"2-digit",month:"2-digit",year:"numeric",hour:"2-digit",minute:"2-digit"}).format(o),Ne=o=>{if(o==null)return"0,00";const i=o.toString().normalize("NFKC").replace(/[^\d.,\-+]/g,"").trim(),d=parseFloat(i.replace(",","."));return isNaN(d)?"0,00":d.toFixed(2).replace(".",",")},be=()=>{if(s.value&&s.value.user_registered&&n.userId){const i=String(n.userId),d=s.value.user_registered[i];if(d&&d.comment&&typeof d.comment=="string"&&d.comment.trim())return d.comment.trim()}const o=O();if(o&&o.comment&&typeof o.comment=="string"&&o.comment.trim())return o.comment.trim();if(n.event&&n.event.user_calendar_form&&n.userId){const i=n.event.user_calendar_form,d=n.userId.toString(),c=i.responses?.[d];if(c){const t=["comment","commentaire","message","note","observation"];for(const e of t)if(c[e]&&typeof c[e]=="string"&&c[e].trim())return c[e].trim()}}return n.formData&&n.formData.comment&&typeof n.formData.comment=="string"&&n.formData.comment.trim()?n.formData.comment.trim():null},xe=()=>{if(n.formData&&n.formData.comment&&typeof n.formData.comment=="string"&&n.formData.comment.trim())return n.formData.comment.trim();const o=["commentaire","message","note","observation"];for(const i of o)if(n.formData&&n.formData[i]&&typeof n.formData[i]=="string"&&n.formData[i].trim())return n.formData[i].trim();return null},De=E(()=>Fe().length>0),Me=E(()=>Y().length>0||Z().length>0||!!be()||!!xe()||n.formData&&Object.keys(n.formData).length>0),Fe=()=>{if(!n.userId)return[];const o=n.userId.toString(),i=n.event?.user_calendar_form;
1if(n.apiFormResponses&&Object.keys(n.apiFormResponses).length>0&&i?.forms&&i?.cols)return Object.entries(i.forms).map(([d,c])=>{const t=c.name||`Section ${d}`,e=i.cols?.[d]||{},a=Object.entries(e).map(([u,l])=>{const v=n.apiFormResponses[u];return v!==""&&v!==null&&v!==void 0?{fieldToken:u,fieldName:typeof l=="string"?l:u,value:v}:null}).filter(u=>u!==null);return{formId:d,formName:t,responses:a}}).filter(d=>d.responses.length>0);if(i?.responses?.[o]){const d=i.responses[o];return Object.entries(i.forms||{}).map(([c,t])=>{const e=t.name||`Section ${c}`,a=i.cols?.[c]||{},u=Object.entries(a).map(([l,v])=>{const w=d[l];return w!==""&&w!==null&&w!==void 0?{fieldToken:l,fieldName:typeof v=="string"?v:l,value:w}:null}).filter(l=>l!==null);return{formId:c,formName:e,responses:u}}).filter(c=>c.responses.length>0)}if(n.formData&&Object.keys(n.formData).length>0){const d=[];if(Object.entries(n.formData).forEach(([c,t])=>{if(t&&t!==""&&!tt.has(c)&&!c.startsWith("material_")&&!c.startsWith("choice_")){const e=n.fieldMappings?.[c];e&&d.push({fieldToken:c,fieldName:e.question||c,value:t})}}),d.length>0)return[{formId:"fallback",formName:"Informations d'inscription",responses:d}]}return[]},ze=o=>typeof o=="string"&&/^data:image\/[a-z+]+;base64,/i.test(o),Ue=o=>{if(o==null||o==="")return"Non renseigné";if(Array.isArray(o)&&o.length>0)return o[0]&&typeof o[0]=="object"&&o[0].path?o.map(i=>i.path.split("/").pop()||i.path).join(", "):o.join(", ");if(Array.isArray(o))return"Aucun élément disponible";if(typeof o=="boolean")return o?"Oui":"Non";if(o instanceof Date||typeof o=="string"&&/^\d{4}-\d{2}-\d{2}/.test(o))try{const i=o instanceof Date?o:Le(o)||new Date(o);return new Intl.DateTimeFormat("fr-FR",{day:"2-digit",month:"2-digit",year:"numeric"}).format(i)}catch{return String(o)}return String(o)},Y=()=>{const o=[],i=new Set,d=(c,t,e)=>{const a=c.toLowerCase().trim();i.has(a)||(i.add(a),o.push({role:c,status:t,statusClass:e}))};if(s.value&&s.value.user_registered&&n.userId){const c=String(n.userId),t=s.value.user_registered[c],e=t?.roles||t?.role;e&&Array.isArray(e)&&e.forEach(a=>{if(a&&typeof a=="object"){const u=a.role||a.name||"Rôle";let l="En attente",v="bg-orange-100 text-orange-800";"authorized"in a&&a.authorized===!0&&(l="Confirmé",v="bg-primary-tint text-primary"),d(u,l,v)}})}if(o.length===0&&n.event?.user_registered&&n.userId){const c=String(n.userId),t=n.event.user_registered[c],e=t?.roles||t?.role;e&&Array.isArray(e)&&e.forEach(a=>{if(a&&typeof a=="object"){const u=a.role||a.name||"Rôle";let l="En attente",v="bg-orange-100 text-orange-800";"authorized"in a&&a.authorized===!0&&(l="Confirmé",v="bg-primary-tint text-primary"),d(u,l,v)}})}if(o.length===0&&n.formData){const c=new Set;n.formData.selected_role&&typeof n.formData.selected_role=="string"&&c.add(n.formData.selected_role),n.formData.selected_roles&&Array.isArray(n.formData.selected_roles)&&n.formData.selected_roles.forEach(e=>c.add(e));const t=Array.from(c);if(t.length>0){const e=n.event?.available_roles||[];t.forEach(a=>{let u=a;if(Array.isArray(e)){const l=e.find(v=>v.id===a||v.token===a);l&&(u=l.role||l.name||a)}else typeof e=="object"&&e!==null&&e[a]&&(u=e[a]);d(u,"En attente","bg-orange-100 text-orange-800")})}}return o},Z=()=>{const o=[];if(s.value&&s.value.user_registered&&n.userId){const i=String(n.userId),d=s.value.user_registered[i];d&&d.material&&(typeof d.material=="object"&&d.material!==null&&!Array.isArray(d.material)?Object.values(d.material).forEach(c=>{Array.isArray(c)?o.push(...c.filter(t=>typeof t=="string"&&t.trim())):typeof c=="string"&&c.trim()&&o.push(c.trim())}):Array.isArray(d.material)&&o.push(...d.material.filter(c=>typeof c=="string"&&c.trim())))}if(o.length===0&&n.event&&n.event.user_registered){const i=Object.values(n.event.user_registered);if(i.length>0){const d=i[0];d&&d.materials&&Array.isArray(d.materials)&&o.push(...d.materials),d&&d.material&&(typeof d.material=="object"&&d.material!==null&&!Array.isArray(d.material)?Object.values(d.material).forEach(c=>{Array.isArray(c)?o.push(...c.filter(t=>typeof t=="string"&&t.trim())):typeof c=="string"&&c.trim()&&o.push(c.trim())}):Array.isArray(d.material)&&o.push(...d.material.filter(c=>typeof c=="string"&&c.trim()))),d&&d.material_selected&&(Array.isArray(d.material_selected)?o.push(...d.material_selected):typeof d.material_selected=="str
1ing"&&o.push(d.material_selected))}}if(o.length===0&&n.formData){const i=["material","materials","materiel","equipement","equipment"];for(const d of i)n.formData[d]&&(Array.isArray(n.formData[d])?o.push(...n.formData[d]):typeof n.formData[d]=="string"&&o.push(n.formData[d]));n.formData&&typeof n.formData=="object"&&!Array.isArray(n.formData)&&Object.entries(n.formData).forEach(([d,c])=>{(d.toLowerCase().includes("material")||d.toLowerCase().includes("materiel")||d.toLowerCase().includes("equipement"))&&(Array.isArray(c)?o.push(...c.filter(t=>typeof t=="string")):typeof c=="string"&&c.trim()&&o.push(c))})}return[...new Set(o.filter(i=>i&&typeof i=="string"&&i.trim()))]},pe=o=>{const i=o.match(/^(\d+)\s+(.+)$/);return i?{quantity:parseInt(i[1],10),name:i[2].trim()}:{quantity:null,name:o}};return(o,i)=>{const d=it;return g(),x("div",gr,[r("div",pr,[r("div",_r,[r("div",yr,[r("h2",hr,k(ue.value||"Votre inscription"),1),ke.value?(g(),x("p",br,k(ke.value),1)):C("",!0)]),r("span",{class:Ce(["inline-flex shrink-0 items-center gap-1.5 rounded-full px-2.5 py-1 text-xs font-semibold",j()])},[ie.value?(g(),W(d,{key:0,name:"heroicons:clock",class:"h-3.5 w-3.5"})):z(D.event)?(g(),W(d,{key:1,name:"heroicons:credit-card",class:"h-3.5 w-3.5"})):(g(),W(d,{key:2,name:"heroicons:check-circle",class:"h-3.5 w-3.5"})),ye(" "+k(he()),1)],2)]),ie.value||z(D.event)?(g(),x("p",xr,k(ge()),1)):C("",!0),r("p",wr,"Inscrit le "+k(Ie(D.registrationDate)),1)]),r("div",kr,[i[10]||(i[10]=r("h3",{class:"text-base font-semibold text-navy-500 mb-3"},"Détails de l'inscription",-1)),r("dl",Dr,[r("div",Sr,[i[5]||(i[5]=r("dt",{class:"text-sm text-gray-500"},"Type d'activité",-1)),r("dd",{class:Ce(["text-sm font-semibold text-right",T(D.event)?"text-primary":"text-navy-500"])},k(T(D.event)?"Gratuite":"Payante"),3)]),T(D.event)?C("",!0):(g(),x("div",Cr,[i[6]||(i[6]=r("dt",{class:"text-sm text-gray-500"},"Paiement",-1)),r("dd",{class:Ce(["text-sm font-semibold text-right",ee()])},k(oe()==="paid"?"Payé":z(D.event)?"En attente":"Non obligatoire"),3)])),ae().token?(g(),x("div",jr,[i[7]||(i[7]=r("dt",{class:"text-sm text-gray-500"},"Tarif",-1)),r("dd",$r,k(Q.value),1)])):C("",!0),Re.value?(g(),x("div",Ar,[i[8]||(i[8]=r("dt",{class:"text-sm text-gray-500"},"Participants",-1)),r("dd",Rr,k(Ae()),1)])):C("",!0),r("div",Ir,[i[9]||(i[9]=r("dt",{class:"text-sm text-gray-500"},"Désinscription",-1)),r("dd",{class:Ce(["text-sm font-semibold text-right",X.value?"text-primary":"text-red-500"])},k(X.value?"Autorisée":"Non autorisée"),3)])])]),r("div",Fr,[i[20]||(i[20]=r("h3",{class:"text-base font-semibold text-navy-500 mb-3"},"Vos réponses",-1)),!De.value&&!Me.value?(g(),x("div",Tr,[r("div",Er,[r("div",Or,[U(d,{name:"heroicons:check",class:"w-6 h-6 text-primary"})]),i[11]||(i[11]=r("p",{class:"text-gray-600 mb-2"},"Votre inscription a été enregistrée avec succès.",-1)),i[12]||(i[12]=r("p",{class:"text-sm text-gray-500"},"Les détails complets de votre inscription sont disponibles auprès de l'organisateur.",-1))])])):C("",!0),De.value?(g(),x("div",Nr,[(g(!0),x(te,null,re(Fe(),(c,t)=>(g(),x("section",{key:c.formId,class:"py-4 first:pt-0 last:pb-0"},[r("div",Mr,[r("h4",zr,k(c.formName||`Section ${t+1}`),1),c.responses.length>3?(g(),x("button",{key:0,type:"button",class:"shrink-0 text-xs font-medium text-gray-400 hover:text-navy-500",onClick:e=>B(t)},k(b(t,c.responses.length)?"Replier":`Voir les ${c.responses.length} réponses`),9,Ur)):C("",!0)]),nt(r("dl",Vr,[(g(!0),x(te,null,re(c.responses,e=>(g(),x("div",{key:e.fieldToken},[r("dt",Pr,k(e.fieldName),1),r("dd",qr,[ze(e.value)?(g(),x("img",{key:0,src:e.value,alt:e.fieldName||"Signature",class:"max-h-24 max-w-full bg-white border border-gray-200 rounded"},null,8,Br)):(g(),x("span",Lr,k(Xe(V)(Ue(e.value))),1))])]))),128))],512),[[ot,b(t,c.responses.length)]])]))),128))])):(g(),W(vr,{key:2,"form-data":D.formData,"form-blocks":D.formBlocks,"field-mappings":D.fieldMappings},null,8,["form-data","form-blocks","field-mappings"])),Y().length>0?(g(),x("div",Kr,[r("div",Wr,[i[13]||(i[13]=r("div",{class:"flex-shrink-0 w-8 h-8 bg-gray-50 rounded-full flex items-center justify-center"},[r("svg",{class:"w-4 h-4 text-gray-400",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[r("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M17 20h5v-2a3 3 0 00-5.356-1.857M17 20H7m10 0v-2c0-.656-.126-1.283-.356-1.857M7 20H2v-2a3 3 0 015.356-1.857M7 20v-2c0-.656.126-1.283.356-1.857m0 0a5.002 5.002 0 019.288 0M15 7a3 3 0 11-6 0 3 3 0 016 0zm6 3a2 2 0 11-4 0 2 2 
10 014 0zM7 10a2 2 0 11-4 0 2 2 0 014 0z"})])],-1)),r("div",null,[r("h5",Jr,"Rôle"+k(Y().length>1?"s":"")+" souscrit"+k(Y().length>1?"s":""),1),r("p",Hr,k(Y().length)+" rôle"+k(Y().length>1?"s":"")+" sélectionné"+k(Y().length>1?"s":""),1)])]),r("div",Yr,[(g(!0),x(te,null,re(Y(),c=>(g(),x("div",{key:c.role,class:"bg-white p-4 rounded-lg border border-gray-100 hover:border-gray-200 transition-colors"},[r("div",Qr,[r("div",Zr,[i[14]||(i[14]=r("div",{class:"flex-shrink-0 w-2 h-2 rounded-full bg-lightgray-200 mt-2"},null,-1)),r("div",Gr,[r("p",Xr,k(c.role),1)])]),r("span",{class:Ce(["flex-shrink-0 text-xs font-medium px-2.5 py-1 rounded-full whitespace-nowrap",c.statusClass])},k(c.status),3)])]))),128))])])):C("",!0),Z().length>0?(g(),x("div",es,[r("div",ts,[i[16]||(i[16]=r("div",{class:"flex-shrink-0 w-8 h-8 bg-primary-tint rounded-full flex items-center justify-center"},[r("svg",{class:"w-4 h-4 text-primary",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[r("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M20 7l-8-4-8 4m16 0l-8 4m8-4v10l-8 4m0-10L4 7m8 4v10M4 7v10l8 4"})])],-1)),r("div",null,[i[15]||(i[15]=r("h5",{class:"text-base font-semibold text-navy-500"},"Matériel sélectionné",-1)),r("p",rs,k(Z().length)+" élément"+k(Z().length>1?"s":"")+" choisi"+k(Z().length>1?"s":""),1)])]),r("div",ss,[(g(!0),x(te,null,re(Z(),c=>(g(),x("div",{key:c,class:"bg-white p-4 rounded-lg border border-gray-100 hover:border-gray-200 transition-colors"},[r("div",as,[pe(c).quantity?(g(),x("div",is,[r("span",ns,k(pe(c).quantity),1)])):(g(),x("div",os)),r("div",ls,[r("p",us,k(pe(c).name),1),pe(c).quantity?(g(),x("p",cs," Quantité: "+k(pe(c).quantity),1)):C("",!0)])])]))),128))])])):C("",!0),be()?(g(),x("div",ds,[i[17]||(i[17]=r("h4",{class:"text-sm font-semibold text-navy-500"},"Votre commentaire",-1)),r("p",ms,k(be()),1)])):C("",!0),xe()&&xe()!==be()?(g(),x("div",fs,[i[19]||(i[19]=Ze('<div class="flex items-center space-x-3 mb-4" data-v-4a62bab4><div class="flex-shrink-0 w-8 h-8 bg-amber-100 rounded-full flex items-center justify-center" data-v-4a62bab4><svg class="w-4 h-4 text-amber-600" fill="none" stroke="currentColor" viewBox="0 0 24 24" data-v-4a62bab4><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 12h6m-6 4h6m2 5H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z" data-v-4a62bab4></path></svg></div><div data-v-4a62bab4><h5 class="text-base font-semibold text-navy-500" data-v-4a62bab4>Informations complémentaires</h5><p class="text-sm text-gray-500" data-v-4a62bab4>Informations ajoutées via le formulaire d&#39;inscription</p></div></div>',1)),r("div",vs,[i[18]||(i[18]=r("div",{class:"absolute top-3 left-3 w-6 h-4 opacity-20"},[r("svg",{fill:"currentColor",viewBox:"0 0 24 24",class:"text-amber-400"},[r("path",{d:"M9 12l2 2 4-4m6 2a9 9 0 11-18 0 9 9 0 0118 0z"})])],-1)),r("p",gs,k(xe()),1)])])):C("",!0)]),r("div",ps,[r("div",_s,[U(ce,{text:"Retour à l'activité",icon:"heroicons:arrow-left",iconPosition:"left",color:"secondary",variant:"outlined",onClick:i[0]||(i[0]=c=>K())}),z(D.event)?(g(),W(ce,{key:0,text:"Finaliser le paiement",icon:"heroicons:credit-card",color:"success",onClick:le})):C("",!0),y.value&&!m.value?(g(),W(ce,{key:1,text:"Modifier mon inscription",icon:"heroicons:pencil-square",color:"primary",onClick:i[1]||(i[1]=c=>p(!0))})):C("",!0),X.value&&H.value?(g(),W(ce,{key:2,text:"Se désinscrire",icon:"heroicons:trash",color:"danger",variant:"text","custom-class":"sm:ml-auto",onClick:i[2]||(i[2]=c=>R.value=!0)})):C("",!0)])]),r("div",ys,[z(D.event)?(g(),x("div",hs,[U(d,{name:"heroicons:exclamation-circle",class:"w-4 h-4 mr-2 text-orange-500"}),i[21]||(i[21]=r("span",null,"Votre place est réservée. Finalisez votre paiement pour confirmer votre inscription auprès du club.",-1))])):ie.value?(g(),x("div",bs,[U(d,{name:"heroicons:clock",class:"w-4 h-4 mr-2 text-orange-500"}),r("span",null," Vous êtes en liste d'attente : "+k(X.value?"vous pouvez vous désinscrire si nécessaire.":"contactez l'organisateur pour toute modification."),1)])):T(D.event)&&X.value?(g(),x("div",xs,[U(d,{name:"fa6-regular:circle-check",class:"w-4 h-4 mr-2 text-primary"}
1),i[22]||(i[22]=r("span",null,"Votre inscription est confirmée. Vous pouvez vous désinscrire si nécessaire.",-1))])):T(D.event)&&!X.value?(g(),x("div",ws,[U(d,{name:"heroicons:information-circle",class:"w-4 h-4 mr-2 text-gray-400"}),i[23]||(i[23]=r("span",null,"Votre inscription est confirmée. Contactez l'organisateur pour toute modification.",-1))])):X.value?(g(),x("div",ks,[U(d,{name:"fa6-regular:circle-check",class:"w-4 h-4 mr-2 text-primary"}),i[24]||(i[24]=r("span",null,"Votre inscription est validée. Vous pouvez vous désinscrire si nécessaire.",-1))])):(g(),x("div",Ds,[U(d,{name:"heroicons:question-mark-circle",class:"w-4 h-4 mr-2 text-gray-400"}),i[25]||(i[25]=r("span",null,"Pour toute modification, veuillez contacter l'organisateur de l'événement.",-1))]))]),R.value?(g(),x("div",{key:0,class:"fixed inset-0 bg-black bg-opacity-50 flex items-center justify-center z-50",onClick:i[4]||(i[4]=Ge(c=>R.value=!1,["self"]))},[r("div",Ss,[i[26]||(i[26]=r("h3",{class:"text-base font-semibold text-navy-500 mb-3"},"Confirmer la désinscription",-1)),i[27]||(i[27]=r("p",{class:"text-gray-600 mb-6"}," Êtes-vous sûr de vouloir vous désinscrire de cette activité ? Cette action est irréversible. ",-1)),A.value?(g(),x("div",Cs,[r("p",js,k(A.value),1)])):C("",!0),_.value?(g(),x("div",$s,[r("p",As,k(_.value),1)])):C("",!0),r("div",Rs,[U(ce,{text:"Annuler",color:"secondary",disabled:F.value,onClick:i[3]||(i[3]=c=>R.value=!1),class:"flex-1"},null,8,["disabled"]),U(ce,{text:F.value?"Désinscription...":"Se désinscrire",color:"danger",loading:F.value,disabled:F.value,onClick:Oe,class:"flex-1"},null,8,["text","loading","disabled"])])])])):C("",!0)])}}}),Fs=qe(Is,[["__scopeId","data-v-4a62bab4"]]),Ts={class:"bg-gradient-to-r from-[#1b2441] to-[#444b64] p-6 text-center relative overflow-hidden"},Es={class:"relative z-10"},Os={class:"text-xl font-bold text-white mb-2"},Ns={class:"p-6"},Ms={class:"text-center mb-6"},zs={class:"text-gray-600 leading-relaxed mb-6"},Us={class:"space-y-3"},Vs=$e({__name:"DevelopmentModal",props:{modelValue:{type:Boolean},title:{},message:{},primaryButtonText:{},secondaryButtonText:{}},emits:["update:modelValue","primary-action","secondary-action"],setup(D,{emit:h}){const N=D,I=h,s=S(N.modelValue);je(()=>N.modelValue,n=>{s.value=n}),je(s,n=>{I("update:modelValue",n)});const V=()=>{s.value=!1,I("primary-action")};return(n,$)=>(g(),W(lt,{to:"body"},[U(Ke,{"enter-active-class":"duration-300 ease-out","enter-from-class":"opacity-0","enter-to-class":"opacity-100","leave-active-class":"duration-200 ease-in","leave-from-class":"opacity-100","leave-to-class":"opacity-0"},{default:We(()=>[s.value?(g(),x("div",{key:0,class:"fixed inset-0 z-[9999] flex items-center justify-center p-4 bg-[#1b2441]/80 backdrop-blur-sm",onClick:V},[U(Ke,{"enter-active-class":"duration-300 ease-out","enter-from-class":"opacity-0 scale-95 translate-y-4","enter-to-class":"opacity-100 scale-100 translate-y-0","leave-active-class":"duration-200 ease-in","leave-from-class":"opacity-100 scale-100 translate-y-0","leave-to-class":"opacity-0 scale-95 translate-y-4"},{default:We(()=>[s.value?(g(),x("div",{key:0,class:"relative w-full max-w-md bg-white rounded-lg shadow-2xl overflow-hidden border border-gray-200",onClick:$[1]||($[1]=Ge(()=>{},["stop"]))},[r("div",Ts,[$[4]||($[4]=r("div",{class:"absolute inset-0 opacity-20"},[r("div",{class:"absolute top-3 left-4 w-1 h-1 bg-[#2EC07E] rounded-full animate-pulse"}),r("div",{class:"absolute top-6 right-6 w-1.5 h-1.5 bg-[#2EC07E] rounded-full animate-pulse",style:{"animation-delay":"0.5s"}}),r("div",{class:"absolute bottom-4 left-6 w-1 h-1 bg-[#2EC07E] rounded-full animate-pulse",style:{"animation-delay":"1s"}}),r("div",{class:"absolute bottom-6 right-4 w-2 h-2 bg-[#2EC07E] rounded-full animate-pulse",style:{"animation-delay":"1.5s"}})],-1)),r("div",Es,[$[2]||($[2]=r("div",{class:"w-16 h-16 mx-auto mb-4 bg-[#2EC07E]/20 rounded-full flex items-center justify-center backdrop-blur-sm border border-[#2EC07E]/30"},[r("svg",{class:"w-8 h-8 text-[#2EC07E]",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[r("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M10.325 4.317c.426-1.756 2.924-1.756 3.35 0a1.724 1.724 0 002.573 1.066c1.543-.94 3.31.826 2.37 2.37a1.724 1.724 0 001.065 2.572c1.756.426 1.756 2.924 0 3.35a1.724 1.724 0 00-1.066 2.573c.94 1.543-.826 3.31-2.37 2.37a1.724 1.724 0 00-2.572 1.065c-.426 1.756-2.924 1.756-3.35 0a1.724 1.724 0 00-2.573-1.066c-1.543.94-3.31-.826-2.37-2.37a1.724 1.724 0 00-1.065-2.572c-1.756-.426-1.756-2.924 0-3.35a1.724 1.724 0 001.066-2.573c-.94-1.543.826-3.31 2.37-2.37.996.608 2.296.07 2.572-1.065z"}),r("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M15 12a3 3 0 11-6 0 3 3 0 016 0z"})])],-1)),r("h3",Os,k(D.title||"Fonctionnalité en développement"),1),$[3]||($[3]=r("div",{class:"inline-flex items-center px-3 py-1 bg-[#2EC07E]/20 rounded-full text-sm font-medium text-[#2EC07E] border border-[#2EC07E]/30"},[r("span",{class:"w-2 h-2 bg-[#2EC07E] rounded-full mr-2 animate-pulse"}),ye(" Bientôt disponible ")],-1))])]),r("div",Ns,[r("div",Ms,[r("p",zs,k(D.message||"Cette fonctionnalité d'inscription est actuellement en cours de développement et arrivera très proch
1ainement ! Nous travaillons dur pour vous offrir la meilleure expérience possible."),1),$[5]||($[5]=r("div",{class:"flex items-center justify-center space-x-2 mb-6"},[r("div",{class:"loading-dot bg-[#2EC07E]"}),r("div",{class:"loading-dot bg-[#1b2441]",style:{"animation-delay":"0.2s"}}),r("div",{class:"loading-dot bg-[#2EC07E]",style:{"animation-delay":"0.4s"}})],-1))]),r("div",Us,[U(ce,{onClick:V,text:D.primaryButtonText||"Compris !",backgroundColor:"#2EC07E",textColor:"white",size:"lg",customClass:"w-full justify-center font-semibold shadow-lg hover:shadow-xl transition-all duration-300"},null,8,["text"]),D.secondaryButtonText?(g(),W(ce,{key:0,onClick:$[0]||($[0]=R=>n.$emit("secondary-action")),text:D.secondaryButtonText,backgroundColor:"transparent",textColor:"#444b64",size:"lg",customClass:"w-full justify-center border border-gray-300 hover:bg-gray-50 transition-all duration-300"},null,8,["text"])):C("",!0)])]),r("button",{onClick:V,class:"absolute top-3 right-3 w-8 h-8 bg-white/20 hover:bg-white/30 rounded-full flex items-center justify-center transition-all duration-200 group"},[...$[6]||($[6]=[r("svg",{class:"w-4 h-4 text-white group-hover:text-gray-200",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[r("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M6 18L18 6M6 6l12 12"})],-1)])])])):C("",!0)]),_:1})])):C("",!0)]),_:1})]))}}),Ps=qe(Vs,[["__scopeId","data-v-6082cb35"]]),qs={class:"container mx-auto py-8 px-4"},Bs={class:"max-w-3xl mx-auto bg-white rounded-lg shadow-md p-6"},fa=$e({__name:"register",setup(D){const h=vt(),N=et(),I=Pe(),{mergedEventData:s,loading:V}=Ve(I),{loadEventDetails:n}=wt(String(h.params.id)),$=ut(),{userClubTraceability:R}=Ve($),F=ct(),A=E(()=>F.getUser),{hasPermission:_}=xt(),m=E(()=>A.value?.id||1),p=E(()=>ee.value||m.value),f=E(()=>{const t=le.value||s.value,e=t?.user_calendar_form||t?.event?.user_calendar_form;if(!e?.responses)return null;let a=null;if(j.value){const v=t?.assignmentChildren||t?.event?.assignmentChildren,w=t?.user_registered||t?.event?.user_registered;if(v&&w){const P=v[j.value];if(P?.token){for(const[q,_e]of Object.entries(w))if(_e?.uct_token===P.token){a=q;break}}}}const u=[a,String(p.value),...K.value?[]:[String(m.value)],String(ee.value),j.value].filter(Boolean),l=t?.forms||t?.event?.forms;for(const v of u)if(e.responses[v])return Ye({forms:l},e.responses[v]);return null}),b=S({}),{isRegistering:B,submitEventRegistration:G}=rt(b,String(h.params.id)),de=E(()=>s.value?.event?.title?`Inscription: ${s.value.event.title} | Activité`:s.value?.title?`Inscription: ${s.value.title} | Activité`:"Inscription à l'activité");dt({title:de.value});const we=(t=!1)=>{I.currentEvent?.id===String(h.params.id)&&s.value?.event?.multiple_booking!==void 0&&!t?s.value?.event&&(b.value={...s.value.event,available_roles:s.value.event?.available_roles||s.value?.available_roles||[],assignmentChildren:s.value.event.assignmentChildren||s.value.assignmentChildren,assignment_children_already_registered:s.value.event.assignment_children_already_registered||s.value.assignment_children_already_registered,can_register_assignement:s.value.event.can_register_assignement||s.value.can_register_assignement,can_unregister_assignement:s.value.event.can_unregister_assignement||s.value.can_unregister_assignement,can_unregister:s.value.event.can_unregister||s.value.can_unregister}):I.fetchEvent(String(h.params.id),t).then(()=>{}).catch(console.error)},M=S(null),se=S(null),me=S([]),L=S(!1),J=S(!1),fe=S(new Date),ve=S("unpaid"),H=S(null),X=S(!1);je(J,t=>{if(t===!0){T.value&&Object.keys(T.value).length>0&&(y.value={...T.value,...y.value}),y.value.selected_role&&(se.value=y.value.selected_role),y.value.selected_roles&&Array.isArray(y.value.selected_roles)&&(me.value=[...y.value.selected_roles]),y.value.tariff_plan&&(M.value=y.value.tariff_plan);const a=(le.value||s.value)?.user_registered?.[String(p.value)];a?.comment&&!y.value.comment&&(y.value.comment=a.comment)}});const y=S({}),T=S({}),ne=S([]),O=S([]),ae=S(!0),Q=S([]),Ae=["can_register","can_unregister","can_modification","modification","unregistration"];function Re(...t){for(const e of t)if(e!==void 0)return e}function z(...t){const e={};for(const a of Ae)e[a]=Re(...t.map(u=>u?.[a]));return e}const ie=S({}),j=E(()=>h.query.uct_token),he=S(""),ge=S(""),ee=S(null),oe=S(null),K=S(!1),Oe=E(()=>!!j.value&&!K.value),le=S(null),ue=t=>{const e=`${t}_${h.params.id}`;return j.value?`${e}_uct_${j.value}`:e},ke=(t,e=[])=>{const a=e.find(u=>u.token===t);return a&&a.type==="date"?!0:t.toLowerCase().includes("date")||t.toLowerCase().includes("naissance")||t.toLowerCase().includes("arrivee")||t.toLowerCase().includes("depart")},Ie=(t,e=[])=>{const a=e.find(u=>u.token===t);return a&&a.type==="checkbox"?!0:t.toLowerCase().includes("accepte")||t.toLowerCase().includes("autorisation")||t.toLowerCase().includes("consentement")||t.toLowerCase().includes("check")},Ne=t=>{M.value=t,y.value&&(t?y.value.tariff_plan=t:delete y.value.tariff_plan)},be=t=>{if(y.value.selected_roles)return;const e=t!==null?String(t):null;se.value=e,y.value&&(e?(y.value.selected_role=e,delete y.value.selected_roles):(delete y.value.selected_role,delete y.value.selected_roles))},xe=t=>{if(y.value.selected_role)return;const e=t.map(a=>String(a));me.value=e,y.value&&(e&&e.length>0?(y.value.selected_roles=e,delete y.value.selected_role):(delete y.value.selected_roles,delete y.value.selected_role))},De=()=>b.value&&(M.value||b.value.active_tariff_token||Object.keys(b.value.price||{})[0])||null,Me=()=>{if(!b.value?.price)return"Tarif standard";const t=De();return t?b.value.tariff_plans?.[t]||"Tarif":"Tarif standard"},Fe=()=>{if(!b.value?.price)return 0;const t=De();return t&&b.value.price[t]||0},ze=()=>[];function Ue(){O.value&&O.value.length>0&&O.value.forEach(t=>{const{token:e,type:a}=t;e&&!ne.value.includes(e)&&(a==="date"?y.value[e]=null:a==="checkbox"?y.value[e]=!1:a==="choice"?y.value[e]="":a==="number"?y.value[e]=null:a==="documents"||a==="documentsCollection"?y.value[e]=[]:a==="text"&&(y.value[e]=""),ne.value.push(e))}),Object.keys(y.value).forEach(t=>{ne.value.includes(t)||(ke(t,O.value)?y.value[t]=null:Ie(t,O.value)&&(y.value[t]=!1),ne.value.push(t))})}Ue();function Y(t){const e={};for(const[a,u]of Object.entries(t))try{if(u==null)e[a]=u;else if(u instanceof Date)e[a]=u.toISOString();else if(Array.isArray(u))e[a]=u.map(l=>l instanceof File?{name:l.name,size:l.size,type:l.type,lastModified:l.lastModified}:l&&typeof l=="object"?JSON.parse(JSON.stringify(l,null,0)):l);else if(typeof u=="object")try{e[a]=JSON.parse(JSON.stringify(u,null,0))}catch{e[a]={type:typeof u,toString:u.toString?u.toString():String(u)}}else e[a]=u}catch(l){console.warn(`Impossible de sérialiser le champ ${a}:`,l),e[a]=typeof u=="string"?u:String(u)}return e}mt(()=>
1{if(!V.value&&s.value&&s.value.event&&s.value.event.id&&s.value.event.multiple_booking!==void 0){const t=String(p.value),e=(s.value.event.user_registered||s.value.user_registered)&&t in(s.value.event.user_registered||s.value.user_registered||{}),a={...s.value.event,price:s.value.event.price||s.value.price,tariff_plans:s.value.event.tariff_plans||s.value.tariff_plans,active_tariff_token:s.value.event.active_tariff_token||s.value.active_tariff_token,multiple_booking:s.value.event.multiple_booking!==void 0?s.value.event.multiple_booking:s.value.multiple_booking,already_registered:e?!0:Re(s.value.event.already_registered,s.value.already_registered),...z(s.value.event,s.value),isRegistered:e?!0:s.value.event.isRegistered||s.value.isRegistered,registered:s.value.event.registered||s.value.registered,user_registered:s.value.event.user_registered||s.value.user_registered,carts:s.value.event.carts||s.value.carts,assignmentChildren:s.value.event.assignmentChildren||s.value.assignmentChildren,assignment_children_already_registered:s.value.event.assignment_children_already_registered||s.value.assignment_children_already_registered,can_register_assignement:s.value.event.can_register_assignement||s.value.can_register_assignement,can_unregister_assignement:s.value.event.can_unregister_assignement||s.value.can_unregister_assignement,forms:s.value.event.forms||s.value.forms,limitations:s.value.event.limitations||s.value.limitations,user_calendar_form:s.value.event.user_calendar_form||s.value.user_calendar_form,settings:s.value.event.settings||s.value.settings,list_material:s.value.event.list_material||s.value.list_material,available_roles:s.value.event?.available_roles||s.value?.available_roles||[],role_selection_multiple:s.value.event.role_selection_multiple||s.value.role_selection_multiple};if(b.value=a,O.value=ze(),!J.value&&!M.value){let u=null;a.active_tariff_token?u=a.active_tariff_token:a.price&&typeof a.price=="object"&&Object.keys(a.price).length>0?u=Object.keys(a.price)[0]:a.price&&(typeof a.price=="string"||typeof a.price=="number")&&(u=null),M.value=u,M.value&&(y.value.tariff_plan=M.value)}}}),je(()=>I.currentEvent,t=>{if(t&&t.id===h.params.id){const e=String(p.value),a=(t.user_registered||s.value?.user_registered)&&e in(t.user_registered||s.value?.user_registered||{});b.value={...t,...s.value,multiple_booking:t.multiple_booking!==void 0?t.multiple_booking:s.value?.multiple_booking!==void 0?s.value.multiple_booking:s.value?.event?.multiple_booking!==void 0?s.value.event.multiple_booking:!1,list_material:t.list_material||s.value?.list_material||s.value?.event?.list_material,available_roles:s.value?.event?.available_roles||s.value?.available_roles||t.available_roles||[],role_selection_multiple:t.role_selection_multiple||s.value?.role_selection_multiple||s.value?.event?.role_selection_multiple,assignmentChildren:t.assignmentChildren||s.value?.assignmentChildren||s.value?.event?.assignmentChildren,assignment_children_already_registered:t.assignment_children_already_registered||s.value?.assignment_children_already_registered||s.value?.event?.assignment_children_already_registered,can_register_assignement:t.can_register_assignement||s.value?.can_register_assignement||s.value?.event?.can_register_assignement,can_unregister_assignement:t.can_unregister_assignement||s.value?.can_unregister_assignement||s.value?.event?.can_unregister_assignement,...z(t?.event,t,s.value,s.value?.event),already_registered:a?!0:t.already_registered??s.value?.already_registered??s.value?.event?.already_registered,isRegistered:a?!0:t.isRegistered||s.value?.isRegistered,user_registered:t.user_registered||s.value?.user_registered||s.value?.event?.user_registered,user_calendar_form:t.user_calendar_form||s.value?.user_calendar_form||s.value?.event?.user_calendar_form}}},{deep:!0,immediate:!0}),ft(async()=>{try{ae.value=!0;const t=h.query.from_login==="1";if(t){const a={...h.query};delete a.from_login,N.replace({path:h.path,query:a})}await $.load(),t&&I.clearEventCache(String(h.params.id)),we(!0),L.value=!1,await n();let e=null;try{const a=j.value?`/api/calendar/${h.params.id}/event?uct_token=${j.value}`:`/api/calendar/${h.params.id}/event`,u=await Je(a);if(e=He(u),le.value=e,j.value&&(!e?.assignmentChildren||!e.assignmentChildren[j.value])){const l=e?.admin_edit_token===j.value,v=e?.permissions?.calendar||{},w=_("calendar_edit_register")||v.calendar_edit_register,P=(()=>
1{if(!e?.user_registered||!A.value?.id)return!1;const q=Object.values(e.user_registered).find(Se=>Se.uct_token===j.value);if(!q)return!1;const _e=e?.teams;if(!_e)return!1;const Be=A.value.id,Te=q.team_id??null;for(const Se of Object.values(_e))if((Se.leaders||[]).find(st=>st.user_id===Be)&&(Te!==null&&Se.id===Te||Se.allow_cross_edit))return!0;return!1})();if(l||w||P)K.value=!0;else{console.error("Accès non autorisé au compte rattaché:",j.value),H.value="Vous n'avez pas accès à ce compte rattaché.",setTimeout(()=>{N.push(`/app/activities/${h.params.id}/register`)},2e3),ae.value=!1;return}}if(K.value&&e?.target_user_profile){const l=e.target_user_profile;he.value=`${l.first_name} ${l.last_name}`,ge.value=j.value,oe.value={nom:l.last_name,prenom:l.first_name,first_name:l.first_name,last_name:l.last_name};let v=l.id||null;if(e.user_registered&&l.id){const w=String(l.id);e.user_registered[w]&&(v=l.id)}v&&(ee.value=v)}else if(K.value&&e?.user_registered&&j.value){const l=Object.entries(e.user_registered).find(([,v])=>v.uct_token===j.value);if(l){const[v,w]=l;he.value=`${w.firstname} ${w.lastname}`,ge.value=j.value,oe.value={nom:w.lastname,prenom:w.firstname,first_name:w.firstname,last_name:w.lastname},ee.value=parseInt(v,10)}}if(j.value&&e?.assignmentChildren){const l=e.assignmentChildren[j.value];if(l){he.value=`${l.user.first_name} ${l.user.last_name}`,ge.value=l.token,oe.value={nom:l.user.last_name,prenom:l.user.first_name,first_name:l.user.first_name,last_name:l.user.last_name};let v=null;if(l.token&&e.user_registered){for(const[w,P]of Object.entries(e.user_registered))if(P?.uct_token===l.token){v=parseInt(w,10);break}}v?ee.value=v:l.user&&l.user.id?ee.value=l.user.id:l.id?ee.value=l.id:ee.value=parseInt(j.value,10)}}if(e){const l=String(p.value),v=e.user_registered&&l in e.user_registered;j.value&&e.assignment_children_already_registered&&e.assignment_children_already_registered[j.value]===!0?(L.value=!0,await Z(e,p.value),v&&(ve.value=e.user_registered[l]?.payment_status||"unpaid")):v?(L.value=!0,await Z(e,p.value),ve.value=e.user_registered[l]?.payment_status||"unpaid"):e.already_registered===!0?(L.value=!0,await Z(e,p.value)):(L.value=!1,localStorage.removeItem(ue("registration")),localStorage.removeItem(ue("form_data"))),K.value&&L.value&&(J.value=!0)}if(e){const l=String(p.value),v=e.user_registered&&l in e.user_registered;(e.available_roles||e.event?.available_roles)&&I.addEventData({available_roles:e.available_roles||e.event?.available_roles},"api_uct_roles"),Object.assign(b.value,{price:b.value.price||e.price,tariff_plans:b.value.tariff_plans||e.tariff_plans,active_tariff_token:b.value.active_tariff_token||e.active_tariff_token,multiple_booking:b.value.multiple_booking!==void 0?b.value.multiple_booking:e.multiple_booking,list_material:b.value.list_material||e.list_material,available_roles:s.value?.event?.available_roles||s.value?.available_roles||[],role_selection_multiple:b.value.role_selection_multiple!==void 0?b.value.role_selection_multiple:e.role_selection_multiple,...z(e?.event,e,b.value),already_registered:v?!0:e.already_registered,isRegistered:v?!0:e.isRegistered,user_registered:e.user_registered||b.value.user_registered,user_calendar_form:e.user_calendar_form||b.value.user_calendar_form})}if(e?.forms&&Array.isArray(e.forms)&&e.forms.length>0){const l=e.user_calendar_form||{};Q.value=e.forms.map((v,w)=>{if(v&&typeof v=="object"){const P=Object.keys(v);if(P.length>0){const q=v[P[0]];if(q&&typeof q=="object"&&"entity"in q)return{...l,forms:v,formId:`form_${w}`,formIndex:w,name:`Formulaire ${w+1}`,token:`${e.event?.token||"form"}-${w}`,comparisons:l.comparisons||{}}}}return{...l,forms:v,formId:`form_${w}`,formIndex:w,name:`Formulaire ${w+1}`,token:`${e.event?.token||"form"}-${w}`,comparisons:l.comparisons||{}}})}else if(e?.forms&&typeof e.forms=="object"&&Object.keys(e.forms).length>0){const l=e.user_calendar_form||{},v=Object.entries(e.forms).map(([P,q])=>({formId:P,formFields:q})),w={};v.forEach(({formId:P,formFields:q})=>{w[P]=q}),Q.value=[{...l,forms:w,name:"",token:e.event?.token||"form",comparisons:l.comparisons||{},is_completed:!1,description:"",calendar_forms_names:e.calendar_forms_names||{}}],b.value.formMetadata={forms:w,calendar_forms_names:e.calendar_forms_names||{},comparisons:l.comparisons||{}}}else e?.user_calendar_form?e.user_calendar_form.forms&&Object.keys(e.user_calendar_form.forms).length>0?(Q.value=[{...e.user_calendar_form,forms:e.user_calendar_form.forms}],b.value.formMetadata={forms:e.user_calendar_form.forms,calendar_forms_names:e.calendar_forms_names||{},comparisons:e.user_calendar_form.comparisons||{}}):(Q.value=[e.user_calendar_form],b.value.formMetadata={forms:{},calendar_forms_names:e.calendar_forms_names||{},comparisons:e.user_calendar_form?.comparisons||{}}):H.value="Aucun formulaire n'a été trouvé pour cette activité."}catch(a){console.error("Register - Erreur lors de l'accès direct à l'API:",a)}Q.value.length===0&&O.value.length===0&&!H.value&&(H.value="Aucun formulaire n'a été trouvé pour cette activité."),y.value=o(y.value),pe(),L.value&&(fe.value=new Date),ie.value=c()}catch(t){H.value="Erreur lors du chargement des données d'inscription: "+(t instanceof Error?t.message:String(t))}finally{ae.value=!1}});const Z=async(t,e)=>{const a=String(e);try{if(t?.user_calendar_form?.responses?.[a]){const v=Ye({forms:t.forms},t.user_calendar_form.responses[a]);T.value={...v},y.value={...T.value}}let u=null;if(t?.user_registered?.[a]){if(u=t.user_registered[a],u.tariff_plan){let w=u.tariff_plan;if(typeof w=="object"&&w.token&&(w=w.token),!/^[a-zA-Z0-9_-]{20,}$/.test(w)&&b.value?.tariff_plans){const q=b.value.tariff_plans,_e=Object.entries(q).find(([Be,Te])=>Te===w);_e&&(w=_e[0])}M.value=w,y.value.tariff_plan=w}const v=u.roles_token||u.roles||u.role;if(v&&Array.isArray(v)&&v.length>0){const w=pt(v,b.value.available_roles);w.length===1?(se.value=w[0],y.value.selected_role=w[0]):w.length>1&&(me.value=w,y.value.selected_roles=w)}u.comment&&(y.value.comment=u.comment),u.created_at&&(fe.value=new Date(u.created_at))}const l=u?.uct_socket;if(K.value&&l)try{const v=await gt(String(h.params.id),l);_t(y.value,v),v?.tariff_plan&&!M.value&&(M.value=v.tariff_plan,y.value.tariff_plan=v.tariff_plan),v?.comment&&!y.value.comment&&(y.value.comment=v.comment),v?.people&&(y.value.people=v.people)}catch(v){console.warn("Erreur lors du chargement des données structurées d'édition:",v)}else u?.material&&yt(y.value,u.material,b.value?.list_material);T.value={...y.value};try{const v=Y(T.value);localStorage.setItem(ue("form_data"),JSON.stringify(v))}catch(v){console.warn("Impossible de sauvegarder dans localStorage:",v)}}catch(u){console.error("Erreur lors du chargement des données d'inscription depuis l'API:",u)}},pe=()=>{y.value&&O.value&&O.value.length>0&&O.value.forEach(t=>{if(t.type==="date"&&t.token){const e=y.value[t.token];if(e!=null&&!(e instanceof Date))try{if(typeof e=="string"&&/^\d{4}-\d{2}-\d{2}/.test(e))y.value[t.token]=new Date(e);else if(typeof e=="string"&&/^\d{1,2}\/\d{1,2}\/\d{4}$/.test(e)){const[a,u,l]=e.split("/").map(Number);y.value[t.token]=new Date(l,u-1,a)}else if(e){const a=new Date(e);isNaN(a.getTime())?y.value[t.token]=null:y.value[t.token]=a}else y.value[t.token]=null}catch{y.value[t.token]=null}}})};function o(t){const e={...t};return Object.entries(e).forEach(([a,u])=>{if(ke(a,O.value)){if(u===void 0||u==="")e[a]=null;else if(typeof u=="string"&&/\d{4}-\d{2}-\d{2}/.test(u))try{e[a]=new Date(u)}catch{console.warn(`Register - Impossible de convertir la date ${a}:`,u),e[a]=null}}else Ie(a,O.value)?u===void 0?e[a]=!1:typeof u=="string"&&(e[a]=u==="true"||u==="1"||u==="yes"):typeof u=="string"&&u===""?e[a]="":Array.isArray(u)?e[a]=u:u===void 0&&(a.includes("date")||a.includes("Date")?e[a]=null:a.includes("checkbox")||a.includes("accept")?e[a]=!1:a.includes("document")||a.includes("file")||a.includes("justif")||a.includes("upload")||a.includes("piece")||a.includes("attach")?e[a]=[]:a.includes("number")||a.includes("count")||a.includes("amount")?e[a]=null:e[a]="")}),e}const i=t=>{if(!t)return;let e=!1;if(Object.entries(t).forEach(([a,u])=>{bt(y.value[a],u)||(y.value[a]=u,e=!0),ne.value.includes(a)||ne.value.push(a)}),!!e&&L.value){T.value={...y.value};try{const a=Y(T.value);localStorage.setItem(ue("form_data"),JSON.stringify(a))}catch(a){console.error("Erreur lors de la sauvegarde des données dans le localStorage:",a)}}},d=async()=>{try{H.value=null;const t={...y.value};K.value&&j.value?(t.action="er",t.user=j.value):Oe.value&&ge.value?(t.action="or",t.user=ge.value):(t.action="or",t.user=R.value);const e=await G(t,R.value,b.value);if(e.success){T.value={...y.value};try{const a=Y(T.value);localStorage.setItem(ue("form_data"),JSON.stringify(a));const u={date:new Date().toISOString(),paymentStatus:"unpaid"};localStorage.setItem(ue("registration"),JSON.stringify(u))}catch(a){console.error("Erreur lors de la sauvegarde des données dans le localStorage:",a)}L.value=!0,fe.value=new Date,ve.value="unpaid",J.value=!1;try{await I.fetchEvent(String(h.params.id),!0);const a=j.value?`/api/calendar/${h.params.id}/event?uct_token=${j.value}`:`/api/calendar/${h.params.id}/event`,u=await Je(a);if(le.value=He(u),s.value?.event){const l=String(p.value),v=(s.value.event.user_registered||s.value.user_registered)&&l in(s.value.event.user_registered||s.value.user_registered||{});b.value={...s.value.event,...s.value,available_roles:s.value.event?.available_roles||s.value?.available_roles||[],...z(s.value,s.value.event),already_registered:v?!0:s.value.already_registered||s.value.event?.already_registered,isRegistered:v?!0:s.value.isRegistered||s.value.event?.isRegistered}}le.value&&(y.value={},se.value=null,me.value=[],await Z(le.value,p.value))}catch(a){console.warn("Erreur lors du rechargement des données après inscription:",a)}}else H.value=e.message||"Une erreur est survenue lors de l'inscription.",e.errors&&Array.isArray(e.errors)&&(H.value+=": "+e.errors.join(", ")),J.value=!1}catch(t){console.error("Erreur lors de l'inscription:",t),H.value=t.message||"Une erreur inattendue est survenue."}},c=()=>{const t={};
1return!Q.value||Q.value.length===0||Q.value.forEach(e=>{e&&typeof e=="object"&&Object.entries(e).forEach(([a,u])=>{if(u&&typeof u=="object"&&"entity"in u){const l=u.entity;l&&typeof l=="object"&&"question"in l&&(t[a]={question:String(l.question),profile:l.value&&typeof l.value=="object"&&"profile"in l.value?String(l.value.profile):void 0})}}),e.forms&&typeof e.forms=="object"&&Object.entries(e.forms).forEach(([a,u])=>{if(u&&typeof u=="object"&&"entity"in u){const l=u.entity;l&&typeof l=="object"&&"question"in l&&(t[a]={question:String(l.question),profile:l.value&&typeof l.value=="object"&&"profile"in l.value?String(l.value.profile):void 0})}})}),t};return(t,e)=>(g(),x("div",qs,[r("div",Bs,[U(Ct,{"activity-id":(t._.provides[Ee]||t.$route).params.id.toString(),"is-registered":L.value,"assignment-child-name":he.value,modification:J.value},null,8,["activity-id","is-registered","assignment-child-name","modification"]),ae.value?(g(),W(Qe,{key:0})):L.value&&!J.value?(g(),W(Fs,{key:1,event:b.value||{},"activity-id":(t._.provides[Ee]||t.$route).params.id.toString(),"registration-date":fe.value,"payment-status":ve.value,"selected-tariff":M.value||void 0,"form-data":T.value&&Object.keys(T.value).length>0?T.value:y.value,"form-blocks":O.value,"field-mappings":ie.value,"get-active-tariff-label":Me,"get-active-tariff-price":Fe,"user-id":p.value,modification:J.value,"uct-token":j.value,"api-form-responses":f.value,"admin-mode":K.value,"onUpdate:modification":e[0]||(e[0]=a=>J.value=a)},null,8,["event","activity-id","registration-date","payment-status","selected-tariff","form-data","form-blocks","field-mappings","user-id","modification","uct-token","api-form-responses","admin-mode"])):b.value&&Object.keys(b.value).length>0?(g(),W(ht,{key:2,event:b.value,"activity-id":(t._.provides[Ee]||t.$route).params.id.toString(),"form-data":y.value,"form-blocks":O.value,loading:ae.value,"is-submitting":Xe(B),"form-error":H.value,"api-forms-data":Q.value,"selected-tariff":M.value,"selected-role":se.value,"selected-roles":me.value,modification:J.value,"child-profile":oe.value,"admin-mode":K.value,"onUpdate:formData":i,"onUpdate:selectedTariff":Ne,"onUpdate:selectedRole":be,"onUpdate:selectedRoles":xe,onSubmit:d},null,8,["event","activity-id","form-data","form-blocks","loading","is-submitting","form-error","api-forms-data","
1selected-tariff","selected-role","selected-roles","modification","child-profile","admin-mode"])):(g(),W(Qe,{key:3}))]),U(Ps,{modelValue:X.value,"onUpdate:modelValue":e[1]||(e[1]=a=>X.value=a),title:"Fonctionnalité en développement",message:"Cette fonctionnalité d'inscription est actuellement en cours de développement et arrivera très prochainement ! Nous travaillons dur pour vous offrir la meilleure expérience possible.","primary-button-text":"Compris !","secondary-button-text":"Retour à l'activité",onSecondaryAction:e[2]||(e[2]=a=>t.$router.push(`/app/activities/${(t._.provides[Ee]||t.$route).params.id}`))},null,8,["modelValue"])]))}});export{fa as default};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.