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

There are no additional fields.

');else for(const a of t){const t=document.createElement("div");t.className="panel-block is-block container--occupancyTypeField",c&&!s.has(c)&&t.classList.add("is-hidden"),t.dataset.occupancyTypeFieldId=a.occupancyTypeFieldId.toString(),t.innerHTML='
',t.querySelector(".button--editOccupancyTypeField").addEventListener("click",v),t.querySelector(".button--moveOccupancyTypeFieldUp").addEventListener("click",T),t.querySelector(".button--moveOccupancyTypeFieldDown").addEventListener("click",m),e.append(t)}}function b(c){const t=c.currentTarget.closest(".container--occupancyTypePrintList").dataset.occupancyTypeId;let a;function n(c){c.preventDefault(),cityssm.postJSON(e.urlPrefix+"/admin/doAddOccupancyTypePrint",c.currentTarget,e=>{e.success&&a(),o(e)})}cityssm.openHtmlModal("adminOccupancyTypes-addOccupancyTypePrint",{onshow(c){e.populateAliases(c),c.querySelector("#occupancyTypePrintAdd--occupancyTypeId").value=t;const a=c.querySelector("#occupancyTypePrintAdd--printEJS");for(const[e,c]of Object.entries(exports.occupancyTypePrintTitles)){const t=document.createElement("option");t.value=e,t.textContent=c,a.append(t)}},onshown(e,c){var t;a=c,null===(t=e.querySelector("form"))||void 0===t||t.addEventListener("submit",n)}})}function g(c){c.preventDefault();const t=c.currentTarget.closest(".container--occupancyTypePrint").dataset.printEJS,a=c.currentTarget.closest(".container--occupancyTypePrintList").dataset.occupancyTypeId;cityssm.postJSON(e.urlPrefix+"/admin/doMoveOccupancyTypePrintUp",{occupancyTypeId:a,printEJS:t,moveToTop:c.shiftKey?"1":"0"},o)}function h(c){c.preventDefault();const t=c.currentTarget.closest(".container--occupancyTypePrint").dataset.printEJS,a=c.currentTarget.closest(".container--occupancyTypePrintList").dataset.occupancyTypeId;cityssm.postJSON(e.urlPrefix+"/admin/doMoveOccupancyTypePrintDown",{occupancyTypeId:a,printEJS:t,moveToBottom:c.shiftKey?"1":"0"},o)}function S(c){c.preventDefault();const t=c.currentTarget.closest(".container--occupancyTypePrint").dataset.printEJS,a=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:a,printEJS:t},o)}}})}function O(e,c,t){if(0===t.length)e.insertAdjacentHTML("beforeend",'
\n
\n

There are no prints associated with this record.

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

(All '+cityssm.escapeHTML(exports.aliases.occupancy)+' Types)

',t.innerHTML="",f(c.querySelector("#container--allOccupancyTypeFields"),void 0,n),c.querySelector(".button--addOccupancyTypeField").addEventListener("click",d),0===a.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 e of a){{const t=document.createElement("div");t.className="panel container--occupancyType",t.dataset.occupancyTypeId=e.occupancyTypeId.toString(),t.innerHTML='

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

',f(t,e.occupancyTypeId,e.occupancyTypeFields),t.querySelector(".button--toggleOccupancyTypeFields").addEventListener("click",i),t.querySelector(".button--deleteOccupancyType").addEventListener("click",l),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",r),c.append(t)}{const c=document.createElement("div");c.className="panel container--occupancyTypePrintList",c.dataset.occupancyTypeId=e.occupancyTypeId.toString(),c.innerHTML='

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

',O(c,e.occupancyTypeId,e.occupancyTypePrints),c.querySelector(".button--addOccupancyTypePrint").addEventListener("click",b),t.append(c)}}}document.querySelector("#button--addOccupancyType").addEventListener("click",()=>{let c;const t=t=>{t.preventDefault(),cityssm.postJSON(e.urlPrefix+"/admin/doAddOccupancyType",t.currentTarget,e=>{e.success?(c(),a=e.occupancyTypes,F()):bulmaJS.alert({title:"Error Adding "+exports.aliases.occupancy+" Type",message:e.errorMessage||"",contextualColorName:"danger"})})};cityssm.openHtmlModal("adminOccupancyTypes-addOccupancyType",{onshow:c=>{e.populateAliases(c)},onshown:(e,a)=>{c=a,e.querySelector("#occupancyTypeAdd--occupancyType").focus(),e.querySelector("form").addEventListener("submit",t),bulmaJS.toggleHtmlClipped()},onremoved:()=>{bulmaJS.toggleHtmlClipped()}})}),F()})();