PageSourceSearch

https://www.salzbergwerk.de/static/build/assets/index-33df7948.js

js salzbergwerk.de collected 2026-10-02 06:55:34 UTC 2,604 bytes, 1 lines download raw bytes

1import{b as o,c as r}from"./app-d8bad108.js";const a=class s extends o{constructor(){super(...arguments),this.ticketCount=0}run(){this.bind(),this.setListeners()}bind(){this.ticketSelects=Array.from(this.element.querySelectorAll(s.SELECTORS.ticketSelects)),this.ticketSelectInput=Array.from(this.element.querySelectorAll(s.SELECTORS.ticketSelectInput)),this.ticketTypes=Array.from(this.element.querySelectorAll(s.SELECTORS.ticketType)),this.ticketTypesInputs=Array.from(this.element.querySelectorAll(s.SELECTORS.ticketTypeInput)),this.maximumTickets=Number(this.element.dataset.maxTickets),this.dateInput=this.element.querySelector(s.SELECTORS.dateInput),this.tourId=Number(this.element.dataset.tourId),this.route=this.element.dataset.route}setListeners(){this.ticketSelects&&this.ticketSelects.forEach(i=>{const t=i.querySelector(s.SELECTORS.ticketSelectInput);t.addEventListener("change",e=>{this.updateTicketCount(t),this.setInputMax()}),t.addEventListener("focusout",e=>{this.updateTicketCount(t)})}),this.ticketTypes&&this.ticketTypes.forEach(i=>{const t=i.querySelector(s.SELECTORS.ticketTypeInput);t.addEventListener("change",e=>{this.setInputMax(t)}),t.addEventListener("focusout",e=>{this.setInputMax(t)})}),this.dateInput&&this.dateInput.addEventListener("change",()=>{this.getAvailableSlots()})}getAvailableSlots(){r.get(this.route,{params:{tourId:this.tourId,date:this.dateInput.value}}).then(i=>{})}updateTicketCount(i){let t=0;for(let e=0;e<this.ticketSelectInput.length;e++)t+=Number(this.ticketSelectInput[e].value);this.ticketSelects.forEach(e=>{const u=e.querySelector(s.SELECTORS.plusButton);if(t>=this.maximumTickets){u.disabled=!0;let c=0;this.ticketSelectInput.forEach(l=>{l!==i&&(c+=Number(l.value))}),i.value=String(this.maximumTickets-c)}else u.disabled=!1}),this.ticketCount=t}setInputMax(i=null){let t=0;for(let e=0;e<this.ticketTypesInputs.length;e++)t+=Number(this.ticketTypesInputs[e].value);this.ticketCount&&this.ticketTypes.forEach(e=>{const u=e.querySelector(s.SELECTORS.plusButton),c=e.querySelector(s.SELECTORS.ticketTypeInput);if(t>=this.ticketCount){u.disabled=!0;let l=0;i&&(this.ticketTypesInputs.forEach(n=>{n!==i&&(l+=Number(n.value))}),i.value=String(this.ticketCount-l))}else this.ticketCount==0?(u.disabled=!0,c.disabled=!0):(u.disabled=!1,c.disabled=!1)})}};a.SELECTORS={ticketSelectInput:'input[data-type="ticket"]',ticketSelects:".silent-time__ticket-select",plusButton:".count-widget__button--plus",ticketType:".silent-time__ticket-type-select",ticketTypeInput:"input[data-ticket-type]",dateInput:'input[data-field="date"]'};let p=a;export{p 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.