"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),(()=>{const e=exports.los,c=document.querySelector("#container--occupancyTypes"),t=document.querySelector("#container--occupancyTypePrints");let n=exports.occupancyTypes;delete exports.occupancyTypes;let a=exports.allOccupancyTypeFields;delete exports.allOccupancyTypeFields;const i=new Set;function s(e){const c=e.currentTarget,t=c.closest(".container--occupancyType"),n=Number.parseInt(t.dataset.occupancyTypeId,10);i.has(n)?i.delete(n):i.add(n),c.innerHTML=i.has(n)?'':'';const a=t.querySelectorAll(".panel-block");for(const e of a)e.classList.toggle("is-hidden")}function l(c){var t;c.success?(n=c.occupancyTypes,a=c.allOccupancyTypeFields,S()):bulmaJS.alert({title:"Error Updating "+e.escapedAliases.Occupancy+" Type",message:null!==(t=c.errorMessage)&&void 0!==t?t:"",contextualColorName:"danger"})}function o(c){const t=Number.parseInt(c.currentTarget.closest(".container--occupancyType").dataset.occupancyTypeId,10);bulmaJS.confirm({title:`Delete ${e.escapedAliases.Occupancy} Type`,message:`Are you sure you want to delete this ${e.escapedAliases.occupancy} type?`,contextualColorName:"warning",okButton:{text:`Yes, Delete ${e.escapedAliases.Occupancy} Type`,callbackFunction:function(){cityssm.postJSON(e.urlPrefix+"/admin/doDeleteOccupancyType",{occupancyTypeId:t},l)}}})}function p(c){const t=Number.parseInt(c.currentTarget.closest(".container--occupancyType").dataset.occupancyTypeId,10),a=n.find(e=>t===e.occupancyTypeId);let i;function s(c){c.preventDefault(),cityssm.postJSON(e.urlPrefix+"/admin/doUpdateOccupancyType",c.currentTarget,e=>{l(e),e.success&&i()})}cityssm.openHtmlModal("adminOccupancyTypes-editOccupancyType",{onshow(c){e.populateAliases(c),c.querySelector("#occupancyTypeEdit--occupancyTypeId").value=t.toString(),c.querySelector("#occupancyTypeEdit--occupancyType").value=a.occupancyType},onshown(e,c){i=c,e.querySelector("#occupancyTypeEdit--occupancyType").focus(),e.querySelector("form").addEventListener("submit",s),bulmaJS.toggleHtmlClipped()},onremoved(){bulmaJS.toggleHtmlClipped()}})}function d(c){const t=Number.parseInt(c.currentTarget.closest(".container--occupancyType").dataset.occupancyTypeId,10);let n;function a(c){c.preventDefault(),cityssm.postJSON(e.urlPrefix+"/admin/doAddOccupancyTypeField",c.currentTarget,e=>{i.add(t),l(e),e.success&&(n(),r(t,e.occupancyTypeFieldId))})}cityssm.openHtmlModal("adminOccupancyTypes-addOccupancyTypeField",{onshow(c){e.populateAliases(c),t&&(c.querySelector("#occupancyTypeFieldAdd--occupancyTypeId").value=t.toString())},onshown(e,c){n=c,e.querySelector("#occupancyTypeFieldAdd--occupancyTypeField").focus(),e.querySelector("form").addEventListener("submit",a),bulmaJS.toggleHtmlClipped()},onremoved(){bulmaJS.toggleHtmlClipped()}})}function u(c){const t=c.currentTarget,n=c.currentTarget.closest(".container--occupancyType").dataset.occupancyTypeId;cityssm.postJSON(e.urlPrefix+"/admin/"+("up"===t.dataset.direction?"doMoveOccupancyTypeUp":"doMoveOccupancyTypeDown"),{occupancyTypeId:n,moveToEnd:c.shiftKey?"1":"0"},l)}function r(c,t){let i;c&&(i=n.find(e=>e.occupancyTypeId===c));const s=(i?i.occupancyTypeFields:a).find(e=>e.occupancyTypeFieldId===t);let o,p,d,u,r;function y(){p.min=o.value}function v(){""===u.value?(o.disabled=!1,p.disabled=!1,d.disabled=!1):(o.disabled=!0,p.disabled=!0,d.disabled=!0)}function T(c){c.preventDefault(),cityssm.postJSON(e.urlPrefix+"/admin/doUpdateOccupancyTypeField",c.currentTarget,e=>{l(e),e.success&&r()})}function m(){cityssm.postJSON(e.urlPrefix+"/admin/doDeleteOccupancyTypeField",{occupancyTypeFieldId:t},e=>{l(e),e.success&&r()})}function f(){bulmaJS.confirm({title:"Delete Field",message:"Are you sure you want to delete this field? Note that historical records that make use of this field will not be affected.",contextualColorName:"warning",okButton:{text:"Yes, Delete Field",callbackFunction:m}})}cityssm.openHtmlModal("adminOccupancyTypes-editOccupancyTypeField",{onshow:c=>{e.populateAliases(c),c.querySelector("#occupancyTypeFieldEdit--occupancyTypeFieldId").value=s.occupancyTypeFieldId.toString(),c.querySelector("#occupancyTypeFieldEdit--occupancyTypeField").value=s.occupancyTypeField,c.querySelector("#occupancyTypeFieldEdit--isRequired").value=s.isRequired?"1":"0",(o=c.querySelector("#occupancyTypeFieldEdit--minimumLength")).value=s.minimumLength.toString(),(p=c.querySelector("#occupancyTypeFieldEdit--maximumLength")).value=s.maximumLength.toString(),(d=c.querySelector("#occupancyTypeFieldEdit--pattern")).value=s.pattern,(u=c.querySelector("#occupancyTypeFieldEdit--occupancyTypeFieldValues")).value=s.occupancyTypeFieldValues,v()},onshown:(e,c)=>{r=c,bulmaJS.init(e),bulmaJS.toggleHtmlClipped(),cityssm.enableNavBlocker(),e.querySelector("form").addEventListener("submit",T),o.addEventListener("keyup",y),y(),u.addEventListener("keyup",v),e.querySelector("#button--deleteOccupancyTypeField").addEventListener("click",f)},onremoved:()=>{bulmaJS.toggleHtmlClipped(),cityssm.disableNavBlocker()}})}function y(e){e.preventDefault();const c=Number.parseInt(e.currentTarget.closest(".container--occupancyTypeField").dataset.occupancyTypeFieldId,10);r(Number.parseInt(e.currentTarget.closest(".container--occupancyType").dataset.occupancyTypeId,10),c)}function v(c){const t=c.currentTarget,n=c.currentTarget.closest(".container--occupancyTypeField").dataset.occupancyTypeFieldId;cityssm.postJSON(e.urlPrefix+"/admin/"+("up"===t.dataset.direction?"doMoveOccupancyTypeFieldUp":"doMoveOccupancyTypeFieldDown"),{occupancyTypeFieldId:n,moveToEnd:c.shiftKey?"1":"0"},l)}function T(c,t,n){var a;if(0===n.length)c.insertAdjacentHTML("beforeend",'

There are no additional fields.

');else for(const s of n){const n=document.createElement("div");n.className="panel-block is-block container--occupancyTypeField",t&&!i.has(t)&&n.classList.add("is-hidden"),n.dataset.occupancyTypeFieldId=s.occupancyTypeFieldId.toString(),n.innerHTML='
'+e.getMoveUpDownButtonFieldHTML("button--moveOccupancyTypeFieldUp","button--moveOccupancyTypeFieldDown")+"
",n.querySelector(".button--editOccupancyTypeField").addEventListener("click",y),n.querySelector(".button--moveOccupancyTypeFieldUp").addEventListener("click",v),n.querySelector(".button--moveOccupancyTypeFieldDown").addEventListener("click",v),c.append(n)}}function m(c){const t=c.currentTarget.closest(".container--occupancyTypePrintList").dataset.occupancyTypeId;let n;function a(c){c.preventDefault(),cityssm.postJSON(e.urlPrefix+"/admin/doAddOccupancyTypePrint",c.currentTarget,e=>{e.success&&n(),l(e)})}cityssm.openHtmlModal("adminOccupancyTypes-addOccupancyTypePrint",{onshow(c){e.populateAliases(c),c.querySelector("#occupancyTypePrintAdd--occupancyTypeId").value=t;const n=c.querySelector("#occupancyTypePrintAdd--printEJS");for(const[e,c]of Object.entries(exports.occupancyTypePrintTitles)){const t=document.createElement("option");t.value=e,t.textContent=c,n.append(t)}},onshown(e,c){var t;n=c,null===(t=e.querySelector("form"))||void 0===t||t.addEventListener("submit",a)}})}function f(c){const t=c.currentTarget,n=t.closest(".container--occupancyTypePrint").dataset.printEJS,a=t.closest(".container--occupancyTypePrintList").dataset.occupancyTypeId;cityssm.postJSON(e.urlPrefix+"/admin/"+("up"===t.dataset.direction?"doMoveOccupancyTypePrintUp":"doMoveOccupancyTypePrintDown"),{occupancyTypeId:a,printEJS:n,moveToEnd:c.shiftKey?"1":"0"},l)}function b(c){c.preventDefault();const t=c.currentTarget.closest(".container--occupancyTypePrint").dataset.printEJS,n=c.currentTarget.closest(".container--occupancyTypePrintList").dataset.occupancyTypeId;bulmaJS.confirm({title:"Delete Print",message:"Are you sure you want to remove this print option?",contextualColorName:"warning",okButton:{text:"Yes, Remove Print",callbackFunction:function(){cityssm.postJSON(e.urlPrefix+"/admin/doDeleteOccupancyTypePrint",{occupancyTypeId:n,printEJS:t},l)}}})}function g(c,t,n){if(0===n.length)c.insertAdjacentHTML("beforeend",'
\n
\n

There are no prints associated with this record.

\n
\n
');else for(const t of n){const n=document.createElement("div");n.className="panel-block is-block container--occupancyTypePrint",n.dataset.printEJS=t;const a="*"===t?"(All Available Prints)":exports.occupancyTypePrintTitles[t];let i="fa-star";t.startsWith("pdf/")?i="fa-file-pdf":t.startsWith("screen/")&&(i="fa-file"),n.innerHTML='
'+cityssm.escapeHTML(a||t)+'
'+e.getMoveUpDownButtonFieldHTML("button--moveOccupancyTypePrintUp","button--moveOccupancyTypePrintDown")+'
',n.querySelector(".button--moveOccupancyTypePrintUp").addEventListener("click",f),n.querySelector(".button--moveOccupancyTypePrintDown").addEventListener("click",f),n.querySelector(".button--deleteOccupancyTypePrint").addEventListener("click",b),c.append(n)}}function S(){if(c.innerHTML='

(All '+e.escapedAliases.Occupancy+' Types)

',t.innerHTML="",T(c.querySelector("#container--allOccupancyTypeFields"),void 0,a),c.querySelector(".button--addOccupancyTypeField").addEventListener("click",d),0===n.length)return c.insertAdjacentHTML("afterbegin",`
There are no active ${e.escapedAliases.occupancy} types.

\n
`),void t.insertAdjacentHTML("afterbegin",`
There are no active ${e.escapedAliases.occupancy} types.

\n
`);for(const a of n){{const t=document.createElement("div");t.className="panel container--occupancyType",t.dataset.occupancyTypeId=a.occupancyTypeId.toString(),t.innerHTML='

'+cityssm.escapeHTML(a.occupancyType)+'

'+e.getMoveUpDownButtonFieldHTML("button--moveOccupancyTypeUp","button--moveOccupancyTypeDown")+"
",T(t,a.occupancyTypeId,a.occupancyTypeFields),t.querySelector(".button--toggleOccupancyTypeFields").addEventListener("click",s),t.querySelector(".button--deleteOccupancyType").addEventListener("click",o),t.querySelector(".button--editOccupancyType").addEventListener("click",p),t.querySelector(".button--addOccupancyTypeField").addEventListener("click",d),t.querySelector(".button--moveOccupancyTypeUp").addEventListener("click",u),t.querySelector(".button--moveOccupancyTypeDown").addEventListener("click",u),c.append(t)}{const e=document.createElement("div");e.className="panel container--occupancyTypePrintList",e.dataset.occupancyTypeId=a.occupancyTypeId.toString(),e.innerHTML='

'+cityssm.escapeHTML(a.occupancyType)+'

',g(e,a.occupancyTypeId,a.occupancyTypePrints),e.querySelector(".button--addOccupancyTypePrint").addEventListener("click",m),t.append(e)}}}document.querySelector("#button--addOccupancyType").addEventListener("click",()=>{let c;function t(t){t.preventDefault(),cityssm.postJSON(e.urlPrefix+"/admin/doAddOccupancyType",t.currentTarget,t=>{var a;t.success?(c(),n=t.occupancyTypes,S()):bulmaJS.alert({title:`Error Adding ${e.escapedAliases.Occupancy} Type`,message:null!==(a=t.errorMessage)&&void 0!==a?a:"",contextualColorName:"danger"})})}cityssm.openHtmlModal("adminOccupancyTypes-addOccupancyType",{onshow:c=>{e.populateAliases(c)},onshown:(e,n)=>{c=n,e.querySelector("#occupancyTypeAdd--occupancyType").focus(),e.querySelector("form").addEventListener("submit",t),bulmaJS.toggleHtmlClipped()},onremoved:()=>{bulmaJS.toggleHtmlClipped()}})}),S()})();