PageSourceSearch

https://www.hoysevilla.app/_next/static/chunks/9556.c754bf2c1ce2f9c3.js

js hoysevilla.app collected 2026-10-01 23:52:44 UTC 11,560 bytes, 1 lines download raw bytes

1(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[9556],{5218:e=>{e.exports={compra:"PromoCompra_compra__DadAP",resumen:"PromoCompra_resumen__K2AGv",subtitulo:"PromoCompra_subtitulo__MYvBk",ayuda:"PromoCompra_ayuda__UJsYZ",leyenda:"PromoCompra_leyenda__cFzxE",muestraLibre:"PromoCompra_muestraLibre__Sq2a_",muestraCompleto:"PromoCompra_muestraCompleto__BJXQY",muestraOcupado:"PromoCompra_muestraOcupado__6MgKa",plan:"PromoCompra_plan__ce2hx",vacio:"PromoCompra_vacio__RFPWT",lineas:"PromoCompra_lineas__4ow7O",descuento:"PromoCompra_descuento__NSbzJ",total:"PromoCompra_total__aonQp",iva:"PromoCompra_iva__k0Lel",empujon:"PromoCompra_empujon__ijUZ0",pagar:"PromoCompra_pagar__3LB_U",seguro:"PromoCompra_seguro__CdMIf",legal:"PromoCompra_legal__10v4i",error:"PromoCompra_error__SSR2X",cargando:"PromoCompra_cargando__Vop9s",aviso:"PromoCompra_aviso__YgzOn"}},5801:(e,a,s)=>{"use strict";s.d(a,{A:()=>h,d:()=>m});var o=s(7876),t=s(4232),r=s(9829),l=s.n(r);let n=["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre"],i=["L","M","X","J","V","S","D"],c=e=>String(e).padStart(2,"0"),d=(e,a,s)=>`${e}-${c(a+1)}-${c(s)}`,m=()=>{let e=new Date;return d(e.getFullYear(),e.getMonth(),e.getDate())},u=e=>{let{year:a,month:s}=e;return`${a}-${c(s+1)}`},p=(e,a)=>new Date(e,a+1,0).getDate();function h(e){let{value:a=[],onChange:s,disabled:r=!1,maxMonths:c=12,allowSelectAll:h=!1,allowPast:_=!1,infoDia:y=null,maxDate:g=null}=e,j=(0,t.useMemo)(()=>m(),[]),x=g?Math.max(1,Math.min(c,(e=>{let[a,s]=e.split("-").map(Number),o=new Date;return 12*a+(s-1)-(12*o.getFullYear()+o.getMonth())+1})(g))):c,b=(0,t.useMemo)(()=>new Set(a),[a]),[f,N]=(0,t.useState)(()=>{if(!_)return 0;let e=a.filter(e=>e<j).sort()[0];if(!e)return 0;let[s,o]=e.split("-").map(Number),t=new Date;return Math.min(24,Math.max(0,12*t.getFullYear()+t.getMonth()-(12*s+(o-1))))}),[v,P]=(0,t.useState)(()=>{let e=new Date,s={year:e.getFullYear(),month:e.getMonth()},o=a.filter(e=>e>=j).sort().slice(-1)[0];if(!o)return 3;let[t,r]=o.split("-").map(Number);return Math.max(3,12*t+(r-1)-(12*s.year+s.month)+1)}),D=Math.min(v,x),C=(0,t.useMemo)(()=>{let e=new Date,a={year:e.getFullYear(),month:e.getMonth()};return Array.from({length:D+f},(e,s)=>((e,a)=>{let{year:s,month:o}=e,t=12*s+o+a;return{year:Math.floor(t/12),month:t%12}})(a,s-f))},[D,f]),S=e=>!!(!_&&e<j||g&&e>g||y&&y(e)?.estado&&"libre"!==y(e).estado),k=a.filter(e=>e<j).length;return(0,o.jsxs)("div",{className:l().wrap,children:[_&&f<24&&(0,o.jsx)("button",{type:"button",className:l().moreBtn,onClick:()=>N(e=>Math.min(24,e+2)),disabled:r,children:"Ver meses anteriores"}),C.map(e=>{let{year:a,month:t}=e,c=(new Date(a,t,1).getDay()+6)%7,m=p(a,t);return(0,o.jsxs)("div",{className:l().month,children:[(0,o.jsxs)("div",{className:l().monthName,children:[n[t]," ",a,h&&(0,o.jsx)("button",{type:"button",className:l().selectAllBtn,onClick:()=>(e=>{let{year:a,month:o}=e;if(r)return;let t=Array.from({length:p(a,o)},(e,s)=>d(a,o,s+1)).filter(e=>!S(e));if(!t.length)return;let l=new Set(b),n=t.every(e=>l.has(e));t.forEach(e=>n?l.delete(e):l.add(e)),s?.([...l].sort())})(e),disabled:r,children:"Marcar todo"})]}),(0,o.jsxs)("div",{className:l().grid,children:[i.map((a,s)=>(0,o.jsx)("span",{className:l().dayName,children:a},`${u(e)}-h${s}`)),Array.from({length:c},(a,s)=>(0,o.jsx)("span",{},`${u(e)}-e${s}`)),Array.from({length:m},(e,i)=>{let c=i+1,m=d(a,t,c),u=m<j,p=b.has(m),h=y?y(m):null,x=g&&m>g;return(0,o.jsxs)("button",{type:"button",className:[l().day,p?l().selected:"",u?l().past:"",u&&_?l().pastEditable:"",h?.estado==="completo"?l().completo:"",h?.estado==="ocupado"?l().ocupado:""].filter(Boolean).join(" "),onClick:()=>(e=>{if(r||S(e))return;let a=new Set(b);a.has(e)?a.delete(e):a.add(e),s?.([...a].sort())})(m),disabled:r||S(m),"aria-pressed":p,"aria-label":`${c} de ${n[t]} de ${a}${h?.titulo?`. ${h.titulo}`:""}`,title:h?.titulo||(x?"Este d\xeda es posterior al final del plan":void 0)||(S(m)?"Este d\xeda ya ha pasado y no se puede cambiar":void 0),children:[c,h?.precio!=null&&!u&&!x&&(0,o.jsx)("span",{className:l().precioDia,children:h.precio})]},m)})]})]},u(e))}),D<x&&(0,o.jsx)("button",{type:"button",className:l().moreBtn,onClick:()=>P(e=>Math.min(x,e+2)),disabled:r,children:"Ver m\xe1s meses"}),k>0&&!_&&(0,o.jsx)("p",{className:l().pastNote,children:1===k?"Hay un d\xeda que ya ha pasado y se conserva tal cual.":`Hay ${k} d\xedas que ya han pasado y se conservan tal cual.`}),_&&k>0&&(0,o.jsxs)("p",{className:l().pastNote,children:[1===k?"Hay un d\xeda marcado que ya ha pasado.":`Hay ${k} d\xedas marcados que ya han pasado.`," ","Si todas las fechas son pasadas, el plan se guarda igual pero deja de salir en la agenda."]})]})}},9556:(e,a,s)=>{"use strict";s.r(a),s.d(a,{default:()=>j});var o=s(7876),t=s(4232),r=s(8230),l=s.n(r),n=s(6523),i=s(3532),c=s(5801),d=s(1808),m=s(1999),u=s(9620),p=s(9848),h=s(5218),_=s.n(h);let y=["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic"],g=["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre"];function j(e){let{app:a,eventId:s,onSinPlan:r}=e,{isLoggedIn:h}=(0,m.Jd)(),{openAuthModal:j}=(0,m.Xi)(),[x,b]=(0,t.useState)(null),[f,N]=(0,t.useState)(!1),v=!!s&&!f,[P,D]=(0,t.useState)([]),[C,S]=(0,t.useState)(!1),[k,M]=(0,t.useState)(null);(0,t.useEffect)(()=>
1{if(!s)return;let e=!0;return(0,u.al)(a,s).then(a=>{e&&(b(a),a.plan||r?.(a.motivo))}).catch(()=>e&&M("No hemos podido cargar el calendario. Prueba a recargar la p\xe1gina.")).finally(()=>e&&N(!0)),()=>{e=!1}},[a,s,r]);let $=(0,t.useMemo)(()=>new Set(x?.completos||[]),[x]),w=(0,t.useMemo)(()=>new Set(x?.yaPromocionado||[]),[x]),E=(0,t.useCallback)(e=>x?.plan?e<x.minFecha||e>x.maxFecha?{estado:"fuera"}:e===x.minFecha&&x.hoyCerrado?{estado:"completo",titulo:"Hoy ya no da tiempo: la promoci\xf3n tarda hasta 2 horas en activarse"}:w.has(e)?{estado:"ocupado",titulo:"Este plan ya est\xe1 promocionado este d\xeda"}:$.has(e)?{estado:"completo",titulo:"Este d\xeda ya no quedan plazas"}:{estado:"libre",precio:(0,p.Dr)((0,p.h7)(a.siteSlug,e)).replace(",00 €"," €")}:null,[x,$,w,a.siteSlug]),A=(0,t.useMemo)(()=>P.length?(0,p.UN)(a.siteSlug,P):null,[P,a.siteSlug]),F=(0,t.useMemo)(()=>{var e;let a,s,o;return e=P.length,a=(0,p.j_)(e),(o=(s=p.vI.filter(e=>e.descuento>a).sort((e,a)=>e.desde-a.desde))[s.length-1])&&o.desde>e?{faltan:o.desde-e,descuento:o.descuento}:null},[P.length]),q=async()=>{if(P.length){if(!h)return void j("promote-event",{redirect:`/planes/promo/?id=${encodeURIComponent(s)}`});S(!0),M(null);try{let{url:e}=await (0,u.fX)(a,s,P);window.location.href=e}catch(e){S(!1),M(e.message),409===e.status&&((0,u.al)(a,s).then(b).catch(()=>{}),D([]))}}};return v?(0,o.jsx)("div",{className:_().cargando,children:(0,o.jsx)(d.A,{})}):s&&x?.plan?(0,o.jsxs)("div",{className:_().compra,children:[(0,o.jsxs)("div",{className:_().calendario,children:[(0,o.jsxs)("h3",{className:_().subtitulo,children:[(0,o.jsx)(n.gc,{icon:i.l6G})," Elige los d\xedas"]}),(0,o.jsx)("p",{className:_().ayuda,children:"Marca los d\xedas que quieras, uno a uno, y vuelve a pulsar para quitarlos. Cada d\xeda tiene su precio: los fines de semana se ven m\xe1s."}),x.plan.lastDate===x.maxFecha&&(0,o.jsxs)("p",{className:_().ayuda,children:["El plan termina el ",(0,o.jsx)("strong",{children:(e=>{let[,a,s]=e.split("-");return`${parseInt(s,10)} de ${g[parseInt(a,10)-1]}`})(x.maxFecha)}),", as\xed que el calendario no pasa de ah\xed: promocionarlo despu\xe9s ser\xeda destacar un plan que ya no est\xe1 en la agenda."]}),(0,o.jsx)(c.A,{value:P,onChange:D,infoDia:E,maxDate:x.maxFecha,disabled:C}),(0,o.jsxs)("ul",{className:_().leyenda,children:[(0,o.jsxs)("li",{children:[(0,o.jsx)("span",{className:_().muestraLibre})," Disponible"]}),(0,o.jsxs)("li",{children:[(0,o.jsx)("span",{className:_().muestraCompleto})," Sin plazas"]}),(0,o.jsxs)("li",{children:[(0,o.jsx)("span",{className:_().muestraOcupado})," Ya promocionado"]})]})]}),(0,o.jsxs)("div",{className:_().resumen,children:[(0,o.jsx)("h3",{className:_().subtitulo,children:"Tu promoci\xf3n"}),(0,o.jsxs)("p",{className:_().plan,children:["\xab",x.plan.title,"\xbb"]}),P.length?(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)("ul",{className:_().lineas,children:A.dias.map(e=>(0,o.jsxs)("li",{children:[(0,o.jsx)("span",{children:(e=>{let[,a,s]=e.split("-");return`${parseInt(s,10)} ${y[parseInt(a,10)-1]}`})(e.fecha)}),(0,o.jsx)("span",{children:(0,p.Dr)(e.precio)})]},e.fecha))}),A.porcentajeDescuento>0&&(0,o.jsxs)("p",{className:_().descuento,children:[(0,o.jsxs)("span",{children:["Descuento por ",A.dias.length," d\xedas"]}),(0,o.jsxs)("span",{children:["−",(0,p.Dr)(A.descuento)]})]}),(0,o.jsxs)("p",{className:_().total,children:[(0,o.jsx)("span",{children:"Total"}),(0,o.jsx)("span",{children:(0,p.Dr)(A.total)})]}),(0,o.jsx)("p",{className:_().iva,children:"IVA incluido. Recibir\xe1s factura."}),F&&(0,o.jsxs)("p",{className:_().empujon,children:[1===F.faltan?"Un d\xeda m\xe1s":`${F.faltan} d\xedas m\xe1s`," y el descuento sube al ",Math.round(100*F.descuento)," %."]})]}):(0,o.jsx)("p",{className:_().vacio,children:"Elige al menos un d\xeda en el calendario para ver el precio."}),k&&(0,o.jsx)("p",{className:_().error,children:k}),(0,o.jsx)("button",{type:"button",className:_().pagar,onClick:q,disabled:!P.length||C,children:C?"Abriendo el pago…":h?`Pagar ${A?(0,p.Dr)(A.total):""}`:"Entrar y pagar"}),(0,o.jsxs)("p",{className:_().seguro,children:[(0,o.jsx)(n.gc,{icon:i.DW4})," El pago se hace en Stripe. No guardamos tus datos de tarjeta."]}),(0,o.jsxs)("p",{className:_().legal,children:["Al pagar aceptas las ",(0,o.jsx)(l(),{href:"/condiciones-de-uso/",children:"condiciones de uso"}),", que incluyen c\xf3mo funciona la promoci\xf3n y qu\xe9 se devuelve si el plan se cancela."]})]})]}):(0,o.jsxs)("div",{className:_().aviso,children:[(0,o.jsx)(n.gc,{icon:i.mEO}),(0,o.jsx)("p",{children:x?.motivo||"Para promocionar un plan, entra en su ficha y pulsa \xabPromocionar este plan\xbb."})]})}},9620:(e,a,s)=>{"use strict";s.d(a,{OA:()=>n,al:()=>t,eq:()=>c,fX:()=>r,iJ:()=>i,om:()=>l});let o=async function(e,a){let s,{method:o="GET",body:t=null,conSesion:r=!0}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},l={"Content-Type":"application/json"};if(r){let e=(()=>{try{return localStorage.getItem("hoy-user-auth")||null}catch{return null}})();e&&(l.Authorization=`user/${e}`)}let n=await fetch(`https://api.${e.siteDomain}/promos${a}`,{method:o,headers:l,body:t?JSON.stringify(t):void 0});try{s=await n.json()}catch{s={}}if(!n.ok||s?.result==="error"){let e=Error(s?.error||"No hemos podido completar la operaci\xf3n");throw e.status=n.status,e.necesitaLogin=401===n.status,e}return s},t=(e,a)=>
1o(e,`/disponibilidad/${encodeURIComponent(a)}`),r=(e,a,s)=>o(e,"/checkout",{method:"POST",body:{eventId:a,dias:s}}),l=(e,a)=>o(e,"/confirmar",{method:"POST",body:{sessionId:a}}),n=e=>o(e,"/mias"),i=e=>o(e,"/tengo"),c=e=>o(e,"/portal",{method:"POST"})},9829:e=>{e.exports={wrap:"DayPicker_wrap__QHVEo",month:"DayPicker_month__JbZdq",monthName:"DayPicker_monthName__g5Y7f",selectAllBtn:"DayPicker_selectAllBtn__dca12",grid:"DayPicker_grid__cJDaa",dayName:"DayPicker_dayName__KnKBZ",day:"DayPicker_day__5F7C7",selected:"DayPicker_selected__MFk0v",past:"DayPicker_past__Y22Xy",pastEditable:"DayPicker_pastEditable__d2F_z",moreBtn:"DayPicker_moreBtn__vz3Dj",pastNote:"DayPicker_pastNote__W5U__",precioDia:"DayPicker_precioDia__q9pBX",completo:"DayPicker_completo__a5Ypv",ocupado:"DayPicker_ocupado__3Topv"}}}]);

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.