import{D as e,Et as t,G as n,J as r,O as i,S as a,T as o,W as s,Y as ee,Z as te,_ as c,_t as l,at as u,h as ne,in as d,k as re,q as f,w as p,x as m}from"./vue.runtime.esm-bundler-CACvpnko.js";import{a as h,i as ie}from"./portalLocale-vgPGVHT0.js";import{O as ae,_ as oe,m as se}from"./api-Dpfxb1ca.js";import{f as ce,i as le,p as ue}from"./index-D5exsJys.js";import{a as g}from"./site-BxiJvB6v.js";/* empty css */import{n as de,t as fe}from"./participantTheme-HEHn5JJn.js";import{c as pe,d as me,l as he,r as ge,s as _}from"./competitionBranding-CAjogVRl.js";import{n as _e,r as v,t as y}from"./AudienceTicketModal-gufU_b3a.js";import{t as b}from"./datetimeShanghai-F85iiY-2.js";import{t as x}from"./PortalHeaderBrand-Q03Xrd7K.js";var S={class:`participant-layout`},C={class:`navbar navbar-expand-lg layout-header`},w={class:`container-fluid px-3 px-lg-4 layout-header-inner`},T={class:`header-meta`},E={class:`header-audience-actions`},D={class:`dropdown header-user-dropdown`},O=[`aria-label`],k={class:`header-user-name`},A={class:`dropdown-menu dropdown-menu-end header-user-menu`,"aria-labelledby":`headerUserToggle`},j={class:`container-fluid px-3 px-lg-4 py-3 layout-main`},M={class:`row layout-main-row g-3`},N={class:`col-12 participant-main-col`},P={id:`layoutFooter`,class:`layout-footer`},F={class:`layout-footer-inner`},I={class:`layout-footer-meta`},ve={key:1,class:`modal fade show`,style:{display:`block`},tabindex:`-1`,"aria-labelledby":`myRegistrationsModalTitle`,"aria-modal":`true`,role:`dialog`},ye={class:`modal-dialog modal-dialog-centered my-registrations-modal-dialog`},be={class:`modal-content profile-modal-content`},xe={class:`modal-header profile-modal-header`},Se={id:`myRegistrationsModalTitle`,class:`modal-title profile-modal-title`},Ce={class:`my-registrations-modal-subtitle`},we=[`aria-label`],Te={class:`modal-body profile-modal-body my-registrations-modal-body`},Ee={key:0,class:`my-registrations-modal-empty`},De={key:1,class:`my-registrations-modal-empty`},Oe={class:`my-registrations-modal-empty-icon`,"aria-hidden":`true`},ke={class:`alert alert-warning my-registrations-save-hint`,role:`status`},Ae={class:`my-registrations-modal-summary`},je={class:`my-registrations-modal-list`},Me={class:`my-registration-modal-card-head`},Ne=[`disabled`,`onClick`],L=re({__name:`AudienceLayout`,setup(re){let{t:L}=le(),R=ue(),z=ce(),B=m(()=>ie(z.query)),V=m(()=>String(z.params.slug??``).trim()),H=l(_()),U=l(``),W=l(``),G=l(!1),K=l(!1),q=l([]),J=l(!1),Y=l(null),Pe=m(()=>me(H.value,U.value,B.value)),Fe=m(()=>pe(H.value.login.footerCopyright)?H.value.login.footerCopyright:``),X=m(()=>he(H.value,U.value,B.value));r(`audienceEventBadge`,X);async function Z(){let e=V.value;if(!e){H.value=_(),U.value=``,g();return}try{let t=await fetch(`${oe()}/api/v1/public/competitions/by-slug/${encodeURIComponent(e)}`,{headers:{Accept:`application/json`}});if(!t.ok){H.value=_(),U.value=``,g();return}let n=await t.json(),r=n.data!=null&&typeof n.data==`object`&&!Array.isArray(n.data)?n.data:n;U.value=String(r.name??``),H.value=ge(r.branding_json??null,B.value),g(H.value.documentTitle)}catch{H.value=_(),U.value=``,g()}}u([V,B],()=>{Z()}),u(H,()=>fe(H.value.login.themePrimary),{deep:!0,immediate:!0});async function Q(){try{let e=await _e(V.value);W.value=e.mobile||e.name||``}catch{W.value=``}}async function Ie(){G.value=!0,K.value=!0;try{q.value=await v(V.value)}catch{q.value=[]}finally{K.value=!1}}function $(){G.value=!1}function Le(e){e.ticket_code&&(Y.value=e,G.value=!1,J.value=!0)}function Re(e){return B.value===`en`&&e.session_name_en?.trim()?e.session_name_en.trim():e.session_name||L(`layout.sessionFallback`)}function ze(e){return B.value===`en`&&e.event_date_text_en?.trim()?e.event_date_text_en.trim():e.event_date_text||`—`}function Be(e){return B.value===`en`&&e.address_en?.trim()?e.address_en.trim():e.address||`—`}function Ve(){J.value=!1,Y.value=null}function He(){se();let e=V.value;e?R.push({name:`audience-login`,params:{slug:e},query:h(B.value)}):R.push(`/c`)}return s(()=>{document.body.classList.add(`prototype-page`,`user-mobile-no-menu`,`audience-page`),Z(),Q();let{token:e,competitionSlug:t}=ae();(!e||t!==V.value)&&R.replace({name:`audience-login`,params:{slug:V.value},query:h(B.value)})}),n(()=>{document.body.classList.remove(`prototype-page`,`user-mobile-no-menu`,`audience-page`),de()}),(n,r)=>{let s=te(`router-view`);return f(),o(`div`,S,[a(`header`,C,[a(`div`,w,[i(x,{"logo-url":H.value.login.logoUrl,name:Pe.value},null,8,[`logo-url`,`name`]),a(`div`,T,[a(`div`,E,[a(`button`,{class:`header-my-registrations`,type:`button`,"aria-haspopup":`dialog`,onClick:Ie},d(t(L)(`layout.myRegistrations`)),1),a(`div`,D,[a(`button`,{id:`headerUserToggle`,class:`header-user dropdown-toggle`,type:`button`,"data-bs-toggle":`dropdown`,"data-bs-auto-close":`true`,"aria-expanded":`false`,"aria-label":t(L)(`layout.userMenu`)},[a(`span`,k,d(W.value||t(L)(`layout.audienceFallback`)),1)],8,O),a(`ul`,A,[a(`li`,null,[a(`a`,{class:`dropdown-item dropdown-item-danger`,href:`javascript:void(0)`,onClick:ne(He,[`prevent`])},[a(`span`,null,d(t(L)(`layout.logout`)),1)])])])])])])])]),a(`div`,j,[a(`div`,M,[a(`main`,N,[i(s)])])]),a(`footer`,P,[a(`div`,F,[a(`div`,I,[a(`span`,null,d(Fe.value),1)])])]),G.value?(f(),o(`div`,{key:0,class:`modal-backdrop fade show`,onClick:$})):p(``,!0),G.value?(f(),o(`div`,ve,[a(`div`,ye,[a(`div`,be,[a(`div`,xe,[a(`div`,null,[a(`h5`,Se,d(t(L)(`layout.myRegistrations`)),1),a(`p`,Ce,d(t(L)(`layout.mineSubtitle`)),1)]),a(`button`,{type:`button`,class:`btn-close`,"aria-label":t(L)(`layout.close`),onClick:$},null,8,we)]),a(`div`,Te,[K.value?(f(),o(`div`,Ee,[a(`strong`,null,d(t(L)(`layout.loading`)),1)])):q.value.length?(f(),o(c,{key:2},[a(`div`,ke,d(t(L)(`layout.saveQrHint`)),1),a(`div`,Ae,[a(`span`,null,d(t(L)(`layout.registeredCount`)),1),a(`strong`,null,[e(d(q.value.length),1),a(`small`,null,d(t(L)(`layout.sessionUnit`)),1)])]),a(`div`,je,[(f(!0),o(c,null,ee(q.value,n=>(f(),o(`article`,{key:n.id,class:`my-registration-modal-card`},[a(`div`,Me,[a(`h6`,null,d(Re(n)),1),a(`span`,null,[r[0]||=a(`i`,{"aria-hidden":`true`},null,-1),e(d(t(L)(`layout.registeredOk`)),1)])]),a(`dl`,null,[a(`div`,null,[a(`dt`,null,d(t(L)(`layout.eventTime`)),1),a(`dd`,null,d(ze(n)),1)]),a(`div`,null,[a(`dt`,null,d(t(L)(`layout.eventPlace`)),1),a(`dd`,null,d(Be(n)),1)]),a(`div`,null,[a(`dt`,null,d(t(L)(`layout.registeredAt`)),1),a(`dd`,null,d(t(b)(n.registered_at)),1)])]),a(`button`,{class:`btn btn-outline-primary btn-sm my-ticket-button`,type:`button`,disabled:!n.ticket_code,onClick:e=>Le(n)},d(t(L)(`layout.showTicket`)),9,Ne)]))),128))])],64)):(f(),o(`div`,De,[a(`span`,Oe,d(t(L)(`layout.none`)),1),a(`strong`,null,d(t(L)(`layout.noRecords`)),1),a(`p`,null,d(t(L)(`layout.emptyHint`)),1)]))])])])])):p(``,!0),i(y,{open:J.value,mode:`show`,slug:V.value,"event-badge":X.value,registration:Y.value,onClose:Ve},null,8,[`open`,`slug`,`event-badge`,`registration`])])}}});export{L as default};