'}function a(e){var o;const a=Number.parseInt(null!==(o=e.currentTarget.closest(".container--feeCategory").dataset.feeCategoryId)&&void 0!==o?o:"",10),l=n.find(e=>e.feeCategoryId===a);let r;function i(e){e.preventDefault(),cityssm.postJSON(`${t.urlPrefix}/admin/doUpdateFeeCategory`,e.currentTarget,e=>{var t;const o=e;o.success?(n=o.feeCategories,r(),s()):bulmaJS.alert({title:"Error Updating Fee Category",message:null!==(t=o.errorMessage)&&void 0!==t?t:"",contextualColorName:"danger"})})}cityssm.openHtmlModal("adminFees-editFeeCategory",{onshow(e){e.querySelector("#feeCategoryEdit--feeCategoryId").value=l.feeCategoryId.toString(),e.querySelector("#feeCategoryEdit--feeCategory").value=l.feeCategory},onshown(e,t){var o;bulmaJS.toggleHtmlClipped(),r=t,null===(o=e.querySelector("form"))||void 0===o||o.addEventListener("submit",i),e.querySelector("#feeCategoryEdit--feeCategory").focus()},onremoved:()=>{bulmaJS.toggleHtmlClipped()}})}function l(e){var o;const a=Number.parseInt(null!==(o=e.currentTarget.closest(".container--feeCategory").dataset.feeCategoryId)&&void 0!==o?o:"",10);bulmaJS.confirm({title:"Delete Fee Category?",message:"Are you sure you want to delete this fee category?",contextualColorName:"warning",okButton:{text:"Yes, Delete the Fee Category",callbackFunction:function(){cityssm.postJSON(`${t.urlPrefix}/admin/doDeleteFeeCategory`,{feeCategoryId:a},e=>{var t;const o=e;o.success?(n=o.feeCategories,s()):bulmaJS.alert({title:"Error Updating Fee Category",message:null!==(t=o.errorMessage)&&void 0!==t?t:"",contextualColorName:"danger"})})}}})}function r(e){var o;const a=e.currentTarget,l=null!==(o=a.closest(".container--feeCategory").dataset.feeCategoryId)&&void 0!==o?o:"";cityssm.postJSON(t.urlPrefix+"/admin/"+("up"===a.dataset.direction?"doMoveFeeCategoryUp":"doMoveFeeCategoryDown"),{feeCategoryId:l,moveToEnd:e.shiftKey?"1":"0"},e=>{var t;const o=e;o.success?(n=o.feeCategories,s()):bulmaJS.alert({title:"Error Moving Fee Category",message:null!==(t=o.errorMessage)&&void 0!==t?t:"",contextualColorName:"danger"})})}function i(e){var o;const a=Number.parseInt(null!==(o=e.currentTarget.closest(".container--feeCategory").dataset.feeCategoryId)&&void 0!==o?o:"",10);let l;function r(e){e.preventDefault(),cityssm.postJSON(`${t.urlPrefix}/admin/doAddFee`,e.currentTarget,e=>{var t;const o=e;o.success?(n=o.feeCategories,l(),s()):bulmaJS.alert({title:"Error Adding Fee",message:null!==(t=o.errorMessage)&&void 0!==t?t:"",contextualColorName:"danger"})})}cityssm.openHtmlModal("adminFees-addFee",{onshow(e){const o=e.querySelector("#feeAdd--feeCategoryId");for(const e of n){const t=document.createElement("option");t.value=e.feeCategoryId.toString(),t.textContent=e.feeCategory,e.feeCategoryId===a&&(t.selected=!0),o.append(t)}const s=e.querySelector("#feeAdd--occupancyTypeId");for(const e of exports.occupancyTypes){const t=document.createElement("option");t.value=e.occupancyTypeId.toString(),t.textContent=e.occupancyType,s.append(t)}const l=e.querySelector("#feeAdd--lotTypeId");for(const e of exports.lotTypes){const t=document.createElement("option");t.value=e.lotTypeId.toString(),t.textContent=e.lotType,l.append(t)}e.querySelector("#feeAdd--taxPercentage").value=exports.taxPercentageDefault.toString(),t.populateAliases(e)},onshown(e,t){var o,n,s;bulmaJS.toggleHtmlClipped(),l=t,null===(o=e.querySelector("form"))||void 0===o||o.addEventListener("submit",r),e.querySelector("#feeAdd--feeName").focus(),e.querySelector("#feeAdd--feeFunction").addEventListener("change",()=>{var t,o;const n=e.querySelector("#feeAdd--feeAmount"),s=e.querySelector("#feeAdd--feeFunction");""===s.value?(null===(t=s.closest(".select"))||void 0===t||t.classList.remove("is-success"),n.classList.add("is-success"),n.disabled=!1):(null===(o=s.closest(".select"))||void 0===o||o.classList.add("is-success"),n.classList.remove("is-success"),n.disabled=!0)}),null===(n=e.querySelector("#feeAdd--taxPercentage"))||void 0===n||n.addEventListener("keyup",()=>{const t=e.querySelector("#feeAdd--taxAmount"),o=e.querySelector("#feeAdd--taxPercentage");""===o.value?(o.classList.remove("is-success"),t.classList.add("is-success"),t.disabled=!1):(o.classList.add("is-success"),t.classList.remove("is-success"),t.disabled=!0)}),null===(s=e.querySelector("#feeAdd--includeQuantity"))||void 0===s||s.addEventListener("change",()=>{e.querySelector("#feeAdd--quantityUnit").disabled=""===e.querySelector("#feeAdd--includeQuantity").value})},onremoved(){bulmaJS.toggleHtmlClipped()}})}function c(e){var o,a;e.preventDefault();const l=e.currentTarget.closest(".container--fee"),r=Number.parseInt(null!==(o=l.dataset.feeId)&&void 0!==o?o:"",10),i=Number.parseInt(null!==(a=l.closest(".container--feeCategory").dataset.feeCategoryId)&&void 0!==a?a:""),c=n.find(e=>e.feeCategoryId===i).fees.find(e=>e.feeId===r);let d,u;function y(e){e.preventDefault(),cityssm.postJSON(`${t.urlPrefix}/admin/doUpdateFee`,e.currentTarget,e=>{var t;const o=e;o.success?(n=o.feeCategories,d(),s()):bulmaJS.alert({title:"Error Updating Fee",message:null!==(t=o.errorMessage)&&void 0!==t?t:"",contextualColorName:"danger"})})}function f(e){e.preventDefault(),bulmaJS.confirm({title:"Delete Fee?",message:"Are you sure you want to delete this fee?",contextualColorName:"warning",okButton:{text:"Yes, Delete the Fee",callbackFunction:function(){cityssm.postJSON(`${t.urlPrefix}/admin/doDeleteFee`,{feeId:r},e=>{var t;const o=e;o.success?(n=o.feeCategories,d(),s()):bulmaJS.alert({title:"Error Deleting Fee",message:null!==(t=o.errorMessage)&&void 0!==t?t:"",contextualColorName:"danger"})})}}})}function v(){var e,t;const o=u.querySelector("#feeEdit--feeAmount"),n=u.querySelector("#feeEdit--feeFunction");""===n.value?(null===(e=n.closest(".select"))||void 0===e||e.classList.remove("is-success"),o.classList.add("is-success"),o.disabled=!1):(null===(t=n.closest(".select"))||void 0===t||t.classList.add("is-success"),o.classList.remove("is-success"),o.disabled=!0)}function p(){const e=u.querySelector("#feeEdit--taxAmount"),t=u.querySelector("#feeEdit--taxPercentage");""===t.value?(t.classList.remove("is-success"),e.classList.add("is-success"),e.disabled=!1):(t.classList.add("is-success"),e.classList.remove("is-success"),e.disabled=!0)}function m(){const e=u.querySelector("#feeEdit--includeQuantity").value;u.querySelector("#feeEdit--quantityUnit").disabled=""===e}cityssm.openHtmlModal("adminFees-editFee",{onshow(e){var o,s,a,l,r,d,y;u=e,e.querySelector("#feeEdit--feeId").value=c.feeId.toString();const f=e.querySelector("#feeEdit--feeCategoryId");for(const e of n){const t=document.createElement("option");t.value=e.feeCategoryId.toString(),t.textContent=e.feeCategory,e.feeCategoryId===i&&(t.selected=!0),f.append(t)}e.querySelector("#feeEdit--feeName").value=null!==(o=c.feeName)&&void 0!==o?o:"",e.querySelector("#feeEdit--feeAccount").value=null!==(s=c.feeAccount)&&void 0!==s?s:"",e.querySelector("#feeEdit--feeDescription").value=null!==(a=c.feeDescription)&&void 0!==a?a:"";const g=e.querySelector("#feeEdit--occupancyTypeId");for(const e of exports.occupancyTypes){const t=document.createElement("option");t.value=e.occupancyTypeId.toString(),t.textContent=e.occupancyType,e.occupancyTypeId===c.occupancyTypeId&&(t.selected=!0),g.append(t)}const C=e.querySelector("#feeEdit--lotTypeId");for(const e of exports.lotTypes){const t=document.createElement("option");t.value=e.lotTypeId.toString(),t.textContent=e.lotType,e.lotTypeId===c.lotTypeId&&(t.selected=!0),C.append(t)}e.querySelector("#feeEdit--feeAmount").value=c.feeAmount?c.feeAmount.toFixed(2):"",null===(l=e.querySelector("#feeEdit--feeFunction"))||void 0===l||l.addEventListener("change",v),v(),e.querySelector("#feeEdit--taxAmount").value=c.taxAmount?c.taxAmount.toFixed(2):"";const S=e.querySelector("#feeEdit--taxPercentage");S.value=c.taxPercentage?c.taxPercentage.toString():"",S.addEventListener("keyup",p),p();const b=e.querySelector("#feeEdit--includeQuantity");null!==(r=c.includeQuantity)&&void 0!==r&&r&&(b.value="1"),b.addEventListener("change",m),e.querySelector("#feeEdit--quantityUnit").value=null!==(d=c.quantityUnit)&&void 0!==d?d:"",m(),null!==(y=c.isRequired)&&void 0!==y&&y&&(e.querySelector("#feeEdit--isRequired").value="1"),t.populateAliases(e)},onshown(e,t){var o,n;bulmaJS.toggleHtmlClipped(),d=t,null===(o=e.querySelector("form"))||void 0===o||o.addEventListener("submit",y),bulmaJS.init(e),null===(n=e.querySelector(".button--deleteFee"))||void 0===n||n.addEventListener("click",f)},onremoved(){bulmaJS.toggleHtmlClipped()}})}function d(e){var o;const a=e.currentTarget,l=null!==(o=a.closest(".container--fee").dataset.feeId)&&void 0!==o?o:"";cityssm.postJSON(t.urlPrefix+"/admin/"+("up"===a.dataset.direction?"doMoveFeeUp":"doMoveFeeDown"),{feeId:l,moveToEnd:e.shiftKey?"1":"0"},e=>{var t;const o=e;o.success?(n=o.feeCategories,s()):bulmaJS.alert({title:"Error Moving Fee",message:null!==(t=o.errorMessage)&&void 0!==t?t:"",contextualColorName:"danger"})})}delete exports.feeCategories,null===(e=document.querySelector("#button--addFeeCategory"))||void 0===e||e.addEventListener("click",()=>{let e;function o(o){o.preventDefault(),cityssm.postJSON(`${t.urlPrefix}/admin/doAddFeeCategory`,o.currentTarget,t=>{var o;const a=t;a.success?(n=a.feeCategories,e(),s()):bulmaJS.alert({title:"Error Creating Fee Category",message:null!==(o=a.errorMessage)&&void 0!==o?o:"",contextualColorName:"danger"})})}cityssm.openHtmlModal("adminFees-addFeeCategory",{onshown(t,n){var s;bulmaJS.toggleHtmlClipped(),t.querySelector("#feeCategoryAdd--feeCategory").focus(),e=n,null===(s=t.querySelector("form"))||void 0===s||s.addEventListener("submit",o)},onremoved(){bulmaJS.toggleHtmlClipped(),document.querySelector("#button--addFeeCategory").focus()}})}),s()})();
\ No newline at end of file
diff --git a/public/javascripts/adminOccupancyTypes.min.js b/public/javascripts/adminOccupancyTypes.min.js
index 080164c5..68935783 100644
--- a/public/javascripts/adminOccupancyTypes.min.js
+++ b/public/javascripts/adminOccupancyTypes.min.js
@@ -1 +1 @@
-"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),(()=>{var e;const c=exports.los,n=document.querySelector("#container--occupancyTypes"),t=document.querySelector("#container--occupancyTypePrints");let a=exports.occupancyTypes;delete exports.occupancyTypes;let i=exports.allOccupancyTypeFields;delete exports.allOccupancyTypeFields;const l=new Set;function s(e){var c;const n=e.currentTarget,t=n.closest(".container--occupancyType"),a=Number.parseInt(null!==(c=t.dataset.occupancyTypeId)&&void 0!==c?c:"",10);l.has(a)?l.delete(a):l.add(a),n.innerHTML=l.has(a)?'':'';const i=t.querySelectorAll(".panel-block");for(const e of i)e.classList.toggle("is-hidden")}function o(e){var n;const t=e;t.success?(a=t.occupancyTypes,i=t.allOccupancyTypeFields,O()):bulmaJS.alert({title:`Error Updating ${c.escapedAliases.Occupancy} Type`,message:null!==(n=t.errorMessage)&&void 0!==n?n:"",contextualColorName:"danger"})}function d(e){var n;const t=Number.parseInt(null!==(n=e.currentTarget.closest(".container--occupancyType").dataset.occupancyTypeId)&&void 0!==n?n:"",10);bulmaJS.confirm({title:`Delete ${c.escapedAliases.Occupancy} Type`,message:`Are you sure you want to delete this ${c.escapedAliases.occupancy} type?`,contextualColorName:"warning",okButton:{text:`Yes, Delete ${c.escapedAliases.Occupancy} Type`,callbackFunction:function(){cityssm.postJSON(`${c.urlPrefix}/admin/doDeleteOccupancyType`,{occupancyTypeId:t},o)}}})}function p(e){var n;const t=Number.parseInt(null!==(n=e.currentTarget.closest(".container--occupancyType").dataset.occupancyTypeId)&&void 0!==n?n:"",10),i=a.find(e=>t===e.occupancyTypeId);let l;function s(e){e.preventDefault(),cityssm.postJSON(`${c.urlPrefix}/admin/doUpdateOccupancyType`,e.currentTarget,e=>{const c=e;o(c),c.success&&l()})}cityssm.openHtmlModal("adminOccupancyTypes-editOccupancyType",{onshow(e){c.populateAliases(e),e.querySelector("#occupancyTypeEdit--occupancyTypeId").value=t.toString(),e.querySelector("#occupancyTypeEdit--occupancyType").value=i.occupancyType},onshown(e,c){var n;l=c,e.querySelector("#occupancyTypeEdit--occupancyType").focus(),null===(n=e.querySelector("form"))||void 0===n||n.addEventListener("submit",s),bulmaJS.toggleHtmlClipped()},onremoved(){bulmaJS.toggleHtmlClipped()}})}function u(e){var n;const t=Number.parseInt(null!==(n=e.currentTarget.closest(".container--occupancyType").dataset.occupancyTypeId)&&void 0!==n?n:"",10);let a;function i(e){e.preventDefault(),cityssm.postJSON(`${c.urlPrefix}/admin/doAddOccupancyTypeField`,e.currentTarget,e=>{const c=e;l.add(t),o(c),c.success&&(a(),y(t,c.occupancyTypeFieldId))})}cityssm.openHtmlModal("adminOccupancyTypes-addOccupancyTypeField",{onshow(e){c.populateAliases(e),t&&(e.querySelector("#occupancyTypeFieldAdd--occupancyTypeId").value=t.toString())},onshown(e,c){var n;a=c,e.querySelector("#occupancyTypeFieldAdd--occupancyTypeField").focus(),null===(n=e.querySelector("form"))||void 0===n||n.addEventListener("submit",i),bulmaJS.toggleHtmlClipped()},onremoved(){bulmaJS.toggleHtmlClipped()}})}function r(e){const n=e.currentTarget,t=e.currentTarget.closest(".container--occupancyType").dataset.occupancyTypeId;cityssm.postJSON(c.urlPrefix+"/admin/"+("up"===n.dataset.direction?"doMoveOccupancyTypeUp":"doMoveOccupancyTypeDown"),{occupancyTypeId:t,moveToEnd:e.shiftKey?"1":"0"},o)}function y(e,n){var t;let l;e&&(l=a.find(c=>c.occupancyTypeId===e));const s=(l?null!==(t=l.occupancyTypeFields)&&void 0!==t?t:[]:i).find(e=>e.occupancyTypeFieldId===n);let d,p,u,r,y;function v(){p.min=d.value}function T(){""===r.value?(d.disabled=!1,p.disabled=!1,u.disabled=!1):(d.disabled=!0,p.disabled=!0,u.disabled=!0)}function m(e){e.preventDefault(),cityssm.postJSON(`${c.urlPrefix}/admin/doUpdateOccupancyTypeField`,e.currentTarget,e=>{const c=e;o(c),c.success&&y()})}function f(){cityssm.postJSON(`${c.urlPrefix}/admin/doDeleteOccupancyTypeField`,{occupancyTypeFieldId:n},e=>{const c=e;o(c),c.success&&y()})}function b(){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:f}})}cityssm.openHtmlModal("adminOccupancyTypes-editOccupancyTypeField",{onshow:e=>{var n,t,a,i,l,o,y,v;c.populateAliases(e),e.querySelector("#occupancyTypeFieldEdit--occupancyTypeFieldId").value=s.occupancyTypeFieldId.toString(),e.querySelector("#occupancyTypeFieldEdit--occupancyTypeField").value=null!==(n=s.occupancyTypeField)&&void 0!==n?n:"",e.querySelector("#occupancyTypeFieldEdit--isRequired").value=null!==(t=s.isRequired)&&void 0!==t&&t?"1":"0",(d=e.querySelector("#occupancyTypeFieldEdit--minimumLength")).value=null!==(i=null===(a=s.minimumLength)||void 0===a?void 0:a.toString())&&void 0!==i?i:"",(p=e.querySelector("#occupancyTypeFieldEdit--maximumLength")).value=null!==(o=null===(l=s.maximumLength)||void 0===l?void 0:l.toString())&&void 0!==o?o:"",(u=e.querySelector("#occupancyTypeFieldEdit--pattern")).value=null!==(y=s.pattern)&&void 0!==y?y:"",(r=e.querySelector("#occupancyTypeFieldEdit--occupancyTypeFieldValues")).value=null!==(v=s.occupancyTypeFieldValues)&&void 0!==v?v:"",T()},onshown:(e,c)=>{var n,t;y=c,bulmaJS.init(e),bulmaJS.toggleHtmlClipped(),cityssm.enableNavBlocker(),null===(n=e.querySelector("form"))||void 0===n||n.addEventListener("submit",m),d.addEventListener("keyup",v),v(),r.addEventListener("keyup",T),null===(t=e.querySelector("#button--deleteOccupancyTypeField"))||void 0===t||t.addEventListener("click",b)},onremoved:()=>{bulmaJS.toggleHtmlClipped(),cityssm.disableNavBlocker()}})}function v(e){var c,n;e.preventDefault();const t=Number.parseInt(null!==(c=e.currentTarget.closest(".container--occupancyTypeField").dataset.occupancyTypeFieldId)&&void 0!==c?c:"",10);y(Number.parseInt(null!==(n=e.currentTarget.closest(".container--occupancyType").dataset.occupancyTypeId)&&void 0!==n?n:"",10),t)}function T(e){const n=e.currentTarget,t=e.currentTarget.closest(".container--occupancyTypeField").dataset.occupancyTypeFieldId;cityssm.postJSON(c.urlPrefix+"/admin/"+("up"===n.dataset.direction?"doMoveOccupancyTypeFieldUp":"doMoveOccupancyTypeFieldDown"),{occupancyTypeFieldId:t,moveToEnd:e.shiftKey?"1":"0"},o)}function m(e,n,t){var a,i;if(0===t.length)e.insertAdjacentHTML("beforeend",`
\n
There are no additional fields.
\n
`);else for(const s of t){const t=document.createElement("div");t.className="panel-block is-block container--occupancyTypeField",n&&!l.has(n)&&t.classList.add("is-hidden"),t.dataset.occupancyTypeFieldId=s.occupancyTypeFieldId.toString(),t.innerHTML=`
`,null===(i=t.querySelector(".button--editOccupancyTypeField"))||void 0===i||i.addEventListener("click",v),t.querySelector(".button--moveOccupancyTypeFieldUp").addEventListener("click",T),t.querySelector(".button--moveOccupancyTypeFieldDown").addEventListener("click",T),e.append(t)}}function f(e){var n;const t=null!==(n=e.currentTarget.closest(".container--occupancyTypePrintList").dataset.occupancyTypeId)&&void 0!==n?n:"";let a;function i(e){e.preventDefault(),cityssm.postJSON(`${c.urlPrefix}/admin/doAddOccupancyTypePrint`,e.currentTarget,e=>{const c=e;c.success&&a(),o(c)})}cityssm.openHtmlModal("adminOccupancyTypes-addOccupancyTypePrint",{onshow(e){c.populateAliases(e),e.querySelector("#occupancyTypePrintAdd--occupancyTypeId").value=t;const n=e.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 n;a=c,null===(n=e.querySelector("form"))||void 0===n||n.addEventListener("submit",i)}})}function b(e){const n=e.currentTarget,t=n.closest(".container--occupancyTypePrint").dataset.printEJS,a=n.closest(".container--occupancyTypePrintList").dataset.occupancyTypeId;cityssm.postJSON(c.urlPrefix+"/admin/"+("up"===n.dataset.direction?"doMoveOccupancyTypePrintUp":"doMoveOccupancyTypePrintDown"),{occupancyTypeId:a,printEJS:t,moveToEnd:e.shiftKey?"1":"0"},o)}function g(e){e.preventDefault();const n=e.currentTarget.closest(".container--occupancyTypePrint").dataset.printEJS,t=e.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(`${c.urlPrefix}/admin/doDeleteOccupancyTypePrint`,{occupancyTypeId:t,printEJS:n},o)}}})}function S(e,n,t){var a;if(0===t.length)e.insertAdjacentHTML("beforeend",'
\n
\n
There are no prints associated with this record.
\n
\n
');else for(const n of t){const t=document.createElement("div");t.className="panel-block is-block container--occupancyTypePrint",t.dataset.printEJS=n;const i="*"===n?"(All Available Prints)":exports.occupancyTypePrintTitles[n];let l="fa-star";n.startsWith("pdf/")?l="fa-file-pdf":n.startsWith("screen/")&&(l="fa-file"),t.innerHTML=`
There are no active ${c.escapedAliases.occupancy} types.\n
`),void t.insertAdjacentHTML("afterbegin",`
There are no active ${c.escapedAliases.occupancy} types.\n
`);for(const e of a){const a=document.createElement("div");a.className="panel container--occupancyType",a.dataset.occupancyTypeId=e.occupancyTypeId.toString(),a.innerHTML=`
`,S(i,e.occupancyTypeId,null!==(g=e.occupancyTypePrints)&&void 0!==g?g:[]),null===(O=i.querySelector(".button--addOccupancyTypePrint"))||void 0===O||O.addEventListener("click",f),t.append(i)}}null===(e=document.querySelector("#button--addOccupancyType"))||void 0===e||e.addEventListener("click",()=>{let e;function n(n){n.preventDefault(),cityssm.postJSON(c.urlPrefix+"/admin/doAddOccupancyType",n.currentTarget,n=>{var t;const i=n;i.success?(e(),a=i.occupancyTypes,O()):bulmaJS.alert({title:`Error Adding ${c.escapedAliases.Occupancy} Type`,message:null!==(t=i.errorMessage)&&void 0!==t?t:"",contextualColorName:"danger"})})}cityssm.openHtmlModal("adminOccupancyTypes-addOccupancyType",{onshow(e){c.populateAliases(e)},onshown(c,t){var a;e=t,c.querySelector("#occupancyTypeAdd--occupancyType").focus(),null===(a=c.querySelector("form"))||void 0===a||a.addEventListener("submit",n),bulmaJS.toggleHtmlClipped()},onremoved(){bulmaJS.toggleHtmlClipped()}})}),O()})();
\ No newline at end of file
+"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),(()=>{var e;const c=exports.los,n=document.querySelector("#container--occupancyTypes"),t=document.querySelector("#container--occupancyTypePrints");let a=exports.occupancyTypes;delete exports.occupancyTypes;let i=exports.allOccupancyTypeFields;delete exports.allOccupancyTypeFields;const l=new Set;function s(e){var c;const n=e.currentTarget,t=n.closest(".container--occupancyType"),a=Number.parseInt(null!==(c=t.dataset.occupancyTypeId)&&void 0!==c?c:"",10);l.has(a)?l.delete(a):l.add(a),n.innerHTML=l.has(a)?'':'';const i=t.querySelectorAll(".panel-block");for(const e of i)e.classList.toggle("is-hidden")}function o(e){var n;const t=e;t.success?(a=t.occupancyTypes,i=t.allOccupancyTypeFields,O()):bulmaJS.alert({title:`Error Updating ${c.escapedAliases.Occupancy} Type`,message:null!==(n=t.errorMessage)&&void 0!==n?n:"",contextualColorName:"danger"})}function d(e){var n;const t=Number.parseInt(null!==(n=e.currentTarget.closest(".container--occupancyType").dataset.occupancyTypeId)&&void 0!==n?n:"",10);bulmaJS.confirm({title:`Delete ${c.escapedAliases.Occupancy} Type`,message:`Are you sure you want to delete this ${c.escapedAliases.occupancy} type?`,contextualColorName:"warning",okButton:{text:`Yes, Delete ${c.escapedAliases.Occupancy} Type`,callbackFunction:function(){cityssm.postJSON(`${c.urlPrefix}/admin/doDeleteOccupancyType`,{occupancyTypeId:t},o)}}})}function p(e){var n;const t=Number.parseInt(null!==(n=e.currentTarget.closest(".container--occupancyType").dataset.occupancyTypeId)&&void 0!==n?n:"",10),i=a.find(e=>t===e.occupancyTypeId);let l;function s(e){e.preventDefault(),cityssm.postJSON(`${c.urlPrefix}/admin/doUpdateOccupancyType`,e.currentTarget,e=>{const c=e;o(c),c.success&&l()})}cityssm.openHtmlModal("adminOccupancyTypes-editOccupancyType",{onshow(e){c.populateAliases(e),e.querySelector("#occupancyTypeEdit--occupancyTypeId").value=t.toString(),e.querySelector("#occupancyTypeEdit--occupancyType").value=i.occupancyType},onshown(e,c){var n;l=c,e.querySelector("#occupancyTypeEdit--occupancyType").focus(),null===(n=e.querySelector("form"))||void 0===n||n.addEventListener("submit",s),bulmaJS.toggleHtmlClipped()},onremoved(){bulmaJS.toggleHtmlClipped()}})}function u(e){var n;const t=Number.parseInt(null!==(n=e.currentTarget.closest(".container--occupancyType").dataset.occupancyTypeId)&&void 0!==n?n:"",10);let a;function i(e){e.preventDefault(),cityssm.postJSON(`${c.urlPrefix}/admin/doAddOccupancyTypeField`,e.currentTarget,e=>{var c;const n=e;l.add(t),o(n),n.success&&(a(),y(t,null!==(c=n.occupancyTypeFieldId)&&void 0!==c?c:0))})}cityssm.openHtmlModal("adminOccupancyTypes-addOccupancyTypeField",{onshow(e){c.populateAliases(e),t&&(e.querySelector("#occupancyTypeFieldAdd--occupancyTypeId").value=t.toString())},onshown(e,c){var n;a=c,e.querySelector("#occupancyTypeFieldAdd--occupancyTypeField").focus(),null===(n=e.querySelector("form"))||void 0===n||n.addEventListener("submit",i),bulmaJS.toggleHtmlClipped()},onremoved(){bulmaJS.toggleHtmlClipped()}})}function r(e){const n=e.currentTarget,t=e.currentTarget.closest(".container--occupancyType").dataset.occupancyTypeId;cityssm.postJSON(c.urlPrefix+"/admin/"+("up"===n.dataset.direction?"doMoveOccupancyTypeUp":"doMoveOccupancyTypeDown"),{occupancyTypeId:t,moveToEnd:e.shiftKey?"1":"0"},o)}function y(e,n){var t;let l;e&&(l=a.find(c=>c.occupancyTypeId===e));const s=(l?null!==(t=l.occupancyTypeFields)&&void 0!==t?t:[]:i).find(e=>e.occupancyTypeFieldId===n);let d,p,u,r,y;function v(){p.min=d.value}function T(){""===r.value?(d.disabled=!1,p.disabled=!1,u.disabled=!1):(d.disabled=!0,p.disabled=!0,u.disabled=!0)}function m(e){e.preventDefault(),cityssm.postJSON(`${c.urlPrefix}/admin/doUpdateOccupancyTypeField`,e.currentTarget,e=>{const c=e;o(c),c.success&&y()})}function f(){cityssm.postJSON(`${c.urlPrefix}/admin/doDeleteOccupancyTypeField`,{occupancyTypeFieldId:n},e=>{const c=e;o(c),c.success&&y()})}function b(){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:f}})}cityssm.openHtmlModal("adminOccupancyTypes-editOccupancyTypeField",{onshow:e=>{var n,t,a,i,l,o,y,v;c.populateAliases(e),e.querySelector("#occupancyTypeFieldEdit--occupancyTypeFieldId").value=s.occupancyTypeFieldId.toString(),e.querySelector("#occupancyTypeFieldEdit--occupancyTypeField").value=null!==(n=s.occupancyTypeField)&&void 0!==n?n:"",e.querySelector("#occupancyTypeFieldEdit--isRequired").value=null!==(t=s.isRequired)&&void 0!==t&&t?"1":"0",(d=e.querySelector("#occupancyTypeFieldEdit--minimumLength")).value=null!==(i=null===(a=s.minimumLength)||void 0===a?void 0:a.toString())&&void 0!==i?i:"",(p=e.querySelector("#occupancyTypeFieldEdit--maximumLength")).value=null!==(o=null===(l=s.maximumLength)||void 0===l?void 0:l.toString())&&void 0!==o?o:"",(u=e.querySelector("#occupancyTypeFieldEdit--pattern")).value=null!==(y=s.pattern)&&void 0!==y?y:"",(r=e.querySelector("#occupancyTypeFieldEdit--occupancyTypeFieldValues")).value=null!==(v=s.occupancyTypeFieldValues)&&void 0!==v?v:"",T()},onshown:(e,c)=>{var n,t;y=c,bulmaJS.init(e),bulmaJS.toggleHtmlClipped(),cityssm.enableNavBlocker(),null===(n=e.querySelector("form"))||void 0===n||n.addEventListener("submit",m),d.addEventListener("keyup",v),v(),r.addEventListener("keyup",T),null===(t=e.querySelector("#button--deleteOccupancyTypeField"))||void 0===t||t.addEventListener("click",b)},onremoved:()=>{bulmaJS.toggleHtmlClipped(),cityssm.disableNavBlocker()}})}function v(e){var c,n;e.preventDefault();const t=Number.parseInt(null!==(c=e.currentTarget.closest(".container--occupancyTypeField").dataset.occupancyTypeFieldId)&&void 0!==c?c:"",10);y(Number.parseInt(null!==(n=e.currentTarget.closest(".container--occupancyType").dataset.occupancyTypeId)&&void 0!==n?n:"",10),t)}function T(e){const n=e.currentTarget,t=e.currentTarget.closest(".container--occupancyTypeField").dataset.occupancyTypeFieldId;cityssm.postJSON(c.urlPrefix+"/admin/"+("up"===n.dataset.direction?"doMoveOccupancyTypeFieldUp":"doMoveOccupancyTypeFieldDown"),{occupancyTypeFieldId:t,moveToEnd:e.shiftKey?"1":"0"},o)}function m(e,n,t){var a,i;if(0===t.length)e.insertAdjacentHTML("beforeend",`
\n
There are no additional fields.
\n
`);else for(const s of t){const t=document.createElement("div");t.className="panel-block is-block container--occupancyTypeField",n&&!l.has(n)&&t.classList.add("is-hidden"),t.dataset.occupancyTypeFieldId=s.occupancyTypeFieldId.toString(),t.innerHTML=`
`,null===(i=t.querySelector(".button--editOccupancyTypeField"))||void 0===i||i.addEventListener("click",v),t.querySelector(".button--moveOccupancyTypeFieldUp").addEventListener("click",T),t.querySelector(".button--moveOccupancyTypeFieldDown").addEventListener("click",T),e.append(t)}}function f(e){var n;const t=null!==(n=e.currentTarget.closest(".container--occupancyTypePrintList").dataset.occupancyTypeId)&&void 0!==n?n:"";let a;function i(e){e.preventDefault(),cityssm.postJSON(`${c.urlPrefix}/admin/doAddOccupancyTypePrint`,e.currentTarget,e=>{const c=e;c.success&&a(),o(c)})}cityssm.openHtmlModal("adminOccupancyTypes-addOccupancyTypePrint",{onshow(e){c.populateAliases(e),e.querySelector("#occupancyTypePrintAdd--occupancyTypeId").value=t;const n=e.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 n;a=c,null===(n=e.querySelector("form"))||void 0===n||n.addEventListener("submit",i)}})}function b(e){const n=e.currentTarget,t=n.closest(".container--occupancyTypePrint").dataset.printEJS,a=n.closest(".container--occupancyTypePrintList").dataset.occupancyTypeId;cityssm.postJSON(c.urlPrefix+"/admin/"+("up"===n.dataset.direction?"doMoveOccupancyTypePrintUp":"doMoveOccupancyTypePrintDown"),{occupancyTypeId:a,printEJS:t,moveToEnd:e.shiftKey?"1":"0"},o)}function g(e){e.preventDefault();const n=e.currentTarget.closest(".container--occupancyTypePrint").dataset.printEJS,t=e.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(`${c.urlPrefix}/admin/doDeleteOccupancyTypePrint`,{occupancyTypeId:t,printEJS:n},o)}}})}function S(e,n,t){var a;if(0===t.length)e.insertAdjacentHTML("beforeend",'
\n
\n
There are no prints associated with this record.
\n
\n
');else for(const n of t){const t=document.createElement("div");t.className="panel-block is-block container--occupancyTypePrint",t.dataset.printEJS=n;const i="*"===n?"(All Available Prints)":exports.occupancyTypePrintTitles[n];let l="fa-star";n.startsWith("pdf/")?l="fa-file-pdf":n.startsWith("screen/")&&(l="fa-file"),t.innerHTML=`
There are no active ${c.escapedAliases.occupancy} types.\n
`),void t.insertAdjacentHTML("afterbegin",`
There are no active ${c.escapedAliases.occupancy} types.\n
`);for(const e of a){const a=document.createElement("div");a.className="panel container--occupancyType",a.dataset.occupancyTypeId=e.occupancyTypeId.toString(),a.innerHTML=`
`,S(i,e.occupancyTypeId,null!==(g=e.occupancyTypePrints)&&void 0!==g?g:[]),null===(O=i.querySelector(".button--addOccupancyTypePrint"))||void 0===O||O.addEventListener("click",f),t.append(i)}}null===(e=document.querySelector("#button--addOccupancyType"))||void 0===e||e.addEventListener("click",()=>{let e;function n(n){n.preventDefault(),cityssm.postJSON(c.urlPrefix+"/admin/doAddOccupancyType",n.currentTarget,n=>{var t;const i=n;i.success?(e(),a=i.occupancyTypes,O()):bulmaJS.alert({title:`Error Adding ${c.escapedAliases.Occupancy} Type`,message:null!==(t=i.errorMessage)&&void 0!==t?t:"",contextualColorName:"danger"})})}cityssm.openHtmlModal("adminOccupancyTypes-addOccupancyType",{onshow(e){c.populateAliases(e)},onshown(c,t){var a;e=t,c.querySelector("#occupancyTypeAdd--occupancyType").focus(),null===(a=c.querySelector("form"))||void 0===a||a.addEventListener("submit",n),bulmaJS.toggleHtmlClipped()},onremoved(){bulmaJS.toggleHtmlClipped()}})}),O()})();
\ No newline at end of file
diff --git a/public/javascripts/workOrderEdit.min.js b/public/javascripts/workOrderEdit.min.js
index ba84d654..a60fe447 100644
--- a/public/javascripts/workOrderEdit.min.js
+++ b/public/javascripts/workOrderEdit.min.js
@@ -1 +1 @@
-"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),(()=>{var e,t;const o=exports.los,r=document.querySelector("#workOrderEdit--workOrderId").value,n=""===r,s=document.querySelector("#form--workOrderEdit");function a(){var e;o.setUnsavedChanges(),null===(e=document.querySelector("button[type='submit'][form='form--workOrderEdit']"))||void 0===e||e.classList.remove("is-light")}function l(){var e;o.clearUnsavedChanges(),null===(e=document.querySelector("button[type='submit'][form='form--workOrderEdit']"))||void 0===e||e.classList.add("is-light")}o.initializeDatePickers(null===(S=s.querySelector("#workOrderEdit--workOrderOpenDateString"))||void 0===S?void 0:S.closest(".field")),o.initializeUnlockFieldButtons(s),s.addEventListener("submit",e=>{e.preventDefault(),cityssm.postJSON(`${o.urlPrefix}/workOrders/${n?"doCreateWorkOrder":"doUpdateWorkOrder"}`,e.currentTarget,e=>{var t;const r=e;r.success?(l(),n?window.location.href=o.getWorkOrderURL(r.workOrderId,!0):bulmaJS.alert({message:"Work Order Updated Successfully",contextualColorName:"success"})):bulmaJS.alert({title:"Error Updating Work Order",message:null!==(t=r.errorMessage)&&void 0!==t?t:"",contextualColorName:"danger"})})});const i=s.querySelectorAll("input, select, textarea");for(const e of i)e.addEventListener("change",a);function c(){cityssm.postJSON(`${o.urlPrefix}/workOrders/doCloseWorkOrder`,{workOrderId:r},e=>{var t;const n=e;n.success?(l(),window.location.href=o.getWorkOrderURL(r)):bulmaJS.alert({title:"Error Closing Work Order",message:null!==(t=n.errorMessage)&&void 0!==t?t:"",contextualColorName:"danger"})})}function d(){cityssm.postJSON(`${o.urlPrefix}/workOrders/doDeleteWorkOrder`,{workOrderId:r},e=>{var t;const r=e;r.success?(l(),window.location.href=`${o.urlPrefix}/workOrders`):bulmaJS.alert({title:"Error Deleting Work Order",message:null!==(t=r.errorMessage)&&void 0!==t?t:"",contextualColorName:"danger"})})}let u;if(null===(m=document.querySelector("#button--closeWorkOrder"))||void 0===m||m.addEventListener("click",()=>{u.some(e=>!e.workOrderMilestoneCompletionDate)?bulmaJS.alert({title:"Outstanding Milestones",message:"You cannot close a work order with outstanding milestones.\n Either complete the outstanding milestones, or remove them from the work order.",contextualColorName:"warning"}):bulmaJS.confirm({title:"Close Work Order",message:o.hasUnsavedChanges()?"Are you sure you want to close this work order with unsaved changes?":"Are you sure you want to close this work order?",contextualColorName:o.hasUnsavedChanges()?"warning":"info",okButton:{text:"Yes, Close Work Order",callbackFunction:c}})}),null===(e=document.querySelector("#button--deleteWorkOrder"))||void 0===e||e.addEventListener("click",e=>{e.preventDefault(),bulmaJS.confirm({title:"Delete Work Order",message:"Are you sure you want to delete this work order?",contextualColorName:"warning",okButton:{text:"Yes, Delete Work Order",callbackFunction:d}})}),!n){var m;Object.defineProperty(exports,"__esModule",{value:!0});let e=exports.workOrderLots;delete exports.workOrderLots;let t=exports.workOrderLotOccupancies;function p(e){const n=e.currentTarget.closest(".container--lotOccupancy").dataset.lotOccupancyId;bulmaJS.confirm({title:`Delete ${o.escapedAliases.Occupancy} Relationship`,message:`Are you sure you want to remove the relationship to this ${o.escapedAliases.occupancy} record from this work order? Note that the record will remain.`,contextualColorName:"warning",okButton:{text:"Yes, Delete Relationship",callbackFunction:function(){cityssm.postJSON(o.urlPrefix+"/workOrders/doDeleteWorkOrderLotOccupancy",{workOrderId:r,lotOccupancyId:n},e=>{var o;const r=e;r.success?(t=r.workOrderLotOccupancies,k()):bulmaJS.alert({title:"Error Deleting Relationship",message:null!==(o=r.errorMessage)&&void 0!==o?o:"",contextualColorName:"danger"})})}}})}function y(t,n){cityssm.postJSON(o.urlPrefix+"/workOrders/doAddWorkOrderLot",{workOrderId:r,lotId:t},t=>{var r;const s=t;s.success?(e=s.workOrderLots,k()):bulmaJS.alert({title:`Error Adding ${o.escapedAliases.Lot}`,message:null!==(r=s.errorMessage)&&void 0!==r?r:"",contextualColorName:"danger"}),void 0!==n&&n(s.success)})}function O(e){y(e.currentTarget.dataset.lotId)}function h(t){const n=Number.parseInt(t.currentTarget.closest(".container--lot").dataset.lotId,10),s=e.find(e=>e.lotId===n);let a;function l(t){t.preventDefault(),cityssm.postJSON(o.urlPrefix+"/workOrders/doUpdateLotStatus",t.currentTarget,t=>{var o;const r=t;r.success?(e=r.workOrderLots,k(),a()):bulmaJS.alert({title:"Error Deleting Relationship",message:null!==(o=r.errorMessage)&&void 0!==o?o:"",contextualColorName:"danger"})})}cityssm.openHtmlModal("lot-editLotStatus",{onshow(e){o.populateAliases(e),e.querySelector("#lotStatusEdit--lotId").value=n.toString(),e.querySelector("#lotStatusEdit--lotName").value=s.lotName;const t=e.querySelector("#lotStatusEdit--lotStatusId");let a=!1;for(const e of exports.lotStatuses){const o=document.createElement("option");o.value=e.lotStatusId.toString(),o.textContent=e.lotStatus,e.lotStatusId===s.lotStatusId&&(a=!0),t.append(o)}if(!a&&s.lotStatusId){const e=document.createElement("option");e.value=s.lotStatusId.toString(),e.textContent=s.lotStatus,t.append(e)}s.lotStatusId&&(t.value=s.lotStatusId.toString()),e.querySelector("form").insertAdjacentHTML("beforeend",``)},onshown(e,t){a=t,bulmaJS.toggleHtmlClipped(),e.querySelector("form").addEventListener("submit",l)},onremoved(){bulmaJS.toggleHtmlClipped()}})}function g(t){const n=t.currentTarget.closest(".container--lot").dataset.lotId;bulmaJS.confirm({title:`Delete ${o.escapedAliases.Occupancy} Relationship`,message:`Are you sure you want to remove the relationship to this ${o.escapedAliases.occupancy} record from this work order? Note that the record will remain.`,contextualColorName:"warning",okButton:{text:"Yes, Delete Relationship",callbackFunction:function(){cityssm.postJSON(o.urlPrefix+"/workOrders/doDeleteWorkOrderLot",{workOrderId:r,lotId:n},t=>{var o;const r=t;r.success?(e=r.workOrderLots,k()):bulmaJS.alert({title:"Error Deleting Relationship",message:null!==(o=r.errorMessage)&&void 0!==o?o:"",contextualColorName:"danger"})})}}})}function k(){!function(){var r,n,s,a;const l=document.querySelector("#container--lotOccupancies");if(document.querySelector(".tabs a[href='#relatedTab--lotOccupancies'] .tag").textContent=t.length.toString(),0===t.length)return void(l.innerHTML=`
\n
There are no ${o.escapedAliases.occupancies} associated with this work order.
\n
`);l.innerHTML=`
\n
\n
\n
${o.escapedAliases.Occupancy} Type
\n
${o.escapedAliases.Lot}
\n
${o.escapedAliases.OccupancyStartDate}
\n
End Date
\n
${o.escapedAliases.Occupants}
\n
\n
\n \n
`;const i=cityssm.dateToString(new Date);for(const c of t){const t=document.createElement("tr");t.className="container--lotOccupancy",t.dataset.lotOccupancyId=c.lotOccupancyId.toString();const d=!(c.occupancyEndDate&&c.occupancyEndDateStringc.lotId===e.lotId);t.innerHTML='
`;for(const e of s.lotOccupancies){const s=document.createElement("tr");s.className="container--lotOccupancy",s.dataset.lotOccupancyId=e.lotOccupancyId.toString(),s.innerHTML=`
"+(e.occupancyEndDate?e.occupancyEndDateString:'(No End Date)')+"
"+(0===e.lotOccupancyOccupants.length?`(No ${cityssm.escapeHTML(o.escapedAliases.Occupants)})`:cityssm.escapeHTML(e.lotOccupancyOccupants[0].occupantName+" "+e.lotOccupancyOccupants[0].occupantFamilyName)+(e.lotOccupancyOccupants.length>1?" plus "+(e.lotOccupancyOccupants.length-1).toString():""))+"
',n.querySelector(".button--edit").addEventListener("click",b),n.querySelector(".button--delete").addEventListener("click",M),r.querySelector("tbody").append(n)}o.innerHTML="",o.append(r)}function T(e){for(const t of e.querySelectorAll(".panel-block"))t.remove()}function C(e,t){T(t),t.insertAdjacentHTML("beforeend",`
`),cityssm.postJSON(`${o.urlPrefix}/workOrders/doGetWorkOrderMilestones`,{workOrderMilestoneDateFilter:"date",workOrderMilestoneDateString:e},o=>{var n,s,a,l;const i=o.workOrderMilestones.filter(e=>e.workOrderId.toString()!==r);T(t);for(const e of i)t.insertAdjacentHTML("beforeend",`
\n There are no milestones on other work orders scheduled for\n ${cityssm.escapeHTML(e)}.\n
\n
\n
`)})}function I(e){var t;const o=e;o.success?(u=o.workOrderMilestones,A()):bulmaJS.alert({title:"Error Reopening Milestone",message:null!==(t=o.errorMessage)&&void 0!==t?t:"",contextualColorName:"danger"})}function x(e){e.preventDefault();const t=cityssm.dateToString(new Date),n=Number.parseInt(e.currentTarget.closest(".container--milestone").dataset.workOrderMilestoneId,10),s=u.find(e=>e.workOrderMilestoneId===n);bulmaJS.confirm({title:"Complete Milestone",message:"Are you sure you want to complete this milestone?"+(""!==s.workOrderMilestoneDateString&&s.workOrderMilestoneDateString>t?" Note that this milestone is expected to be completed in the future.":""),messageIsHtml:!0,contextualColorName:"warning",okButton:{text:"Yes, Complete Milestone",callbackFunction:function(){cityssm.postJSON(`${o.urlPrefix}/workOrders/doCompleteWorkOrderMilestone`,{workOrderId:r,workOrderMilestoneId:n},I)}}})}function E(e){e.preventDefault();const t=e.currentTarget.closest(".container--milestone").dataset.workOrderMilestoneId;bulmaJS.confirm({title:"Reopen Milestone",message:"Are you sure you want to remove the completion status from this milestone, and reopen it?",contextualColorName:"warning",okButton:{text:"Yes, Reopen Milestone",callbackFunction:function(){cityssm.postJSON(o.urlPrefix+"/workOrders/doReopenWorkOrderMilestone",{workOrderId:r,workOrderMilestoneId:t},I)}}})}function D(e){e.preventDefault();const t=e.currentTarget.closest(".container--milestone").dataset.workOrderMilestoneId;bulmaJS.confirm({title:"Delete Milestone",message:"Are you sure you want to delete this milestone?",contextualColorName:"warning",okButton:{text:"Yes, Delete Milestone",callbackFunction:function(){cityssm.postJSON(`${o.urlPrefix}/workOrders/doDeleteWorkOrderMilestone`,{workOrderMilestoneId:t,workOrderId:r},I)}}})}function q(e){var t;e.preventDefault();const n=Number.parseInt(null!==(t=e.currentTarget.closest(".container--milestone").dataset.workOrderMilestoneId)&&void 0!==t?t:"",10),s=u.find(e=>e.workOrderMilestoneId===n);let a,l;function i(e){e.preventDefault(),cityssm.postJSON(`${o.urlPrefix}/workOrders/doUpdateWorkOrderMilestone`,e.currentTarget,e=>{const t=e;I(t),t.success&&a()})}cityssm.openHtmlModal("workOrder-editMilestone",{onshow(e){var t,o,n,a,i,c;e.querySelector("#milestoneEdit--workOrderId").value=r,e.querySelector("#milestoneEdit--workOrderMilestoneId").value=null!==(o=null===(t=s.workOrderMilestoneId)||void 0===t?void 0:t.toString())&&void 0!==o?o:"";const d=e.querySelector("#milestoneEdit--workOrderMilestoneTypeId");let u=!1;for(const e of exports.workOrderMilestoneTypes){const t=document.createElement("option");t.value=e.workOrderMilestoneTypeId.toString(),t.textContent=e.workOrderMilestoneType,e.workOrderMilestoneTypeId===s.workOrderMilestoneTypeId&&(t.selected=!0,u=!0),d.append(t)}if(!u&&s.workOrderMilestoneTypeId){const e=document.createElement("option");e.value=s.workOrderMilestoneTypeId.toString(),e.textContent=null!==(n=s.workOrderMilestoneType)&&void 0!==n?n:"",e.selected=!0,d.append(e)}(l=e.querySelector("#milestoneEdit--workOrderMilestoneDateString")).value=null!==(a=s.workOrderMilestoneDateString)&&void 0!==a?a:"",s.workOrderMilestoneTime&&(e.querySelector("#milestoneEdit--workOrderMilestoneTimeString").value=null!==(i=s.workOrderMilestoneTimeString)&&void 0!==i?i:""),e.querySelector("#milestoneEdit--workOrderMilestoneDescription").value=null!==(c=s.workOrderMilestoneDescription)&&void 0!==c?c:""},onshown(e,t){var r;a=t,bulmaJS.toggleHtmlClipped(),o.initializeDatePickers(e),null===(r=e.querySelector("form"))||void 0===r||r.addEventListener("submit",i);const n=document.querySelector("#milestoneEdit--conflictingMilestonesPanel");l.addEventListener("change",()=>{C(l.value,n)}),C(l.value,n)},onremoved(){bulmaJS.toggleHtmlClipped()}})}function A(){var e,t,o,r,n,s;const a=document.querySelector("#panel--milestones"),l=a.querySelectorAll(".panel-block");for(const e of l)e.remove();for(const l of u){const i=document.createElement("div");i.className="panel-block is-block container--milestone",i.dataset.workOrderMilestoneId=l.workOrderMilestoneId.toString(),i.innerHTML='
'+(l.workOrderMilestoneCompletionDate?'':'')+'
'+(l.workOrderMilestoneTypeId?""+cityssm.escapeHTML(null!==(e=l.workOrderMilestoneType)&&void 0!==e?e:"")+" ":"")+(0===l.workOrderMilestoneDate?'(No Set Date)':l.workOrderMilestoneDateString)+(l.workOrderMilestoneTime?" "+l.workOrderMilestoneTimePeriodString:"")+' '+cityssm.escapeHTML(null!==(t=l.workOrderMilestoneDescription)&&void 0!==t?t:"")+'
',null===(o=i.querySelector(".button--reopenMilestone"))||void 0===o||o.addEventListener("click",E),null===(r=i.querySelector(".button--editMilestone"))||void 0===r||r.addEventListener("click",q),null===(n=i.querySelector(".button--completeMilestone"))||void 0===n||n.addEventListener("click",x),null===(s=i.querySelector(".button--deleteMilestone"))||void 0===s||s.addEventListener("click",D),a.append(i)}bulmaJS.init(a)}delete exports.workOrderComments,null===(S=document.querySelector("#workOrderComments--add"))||void 0===S||S.addEventListener("click",function(){let e;function t(t){t.preventDefault(),cityssm.postJSON(o.urlPrefix+"/workOrders/doAddWorkOrderComment",t.currentTarget,t=>{t.success&&(f=t.workOrderComments,L(),e())})}cityssm.openHtmlModal("workOrder-addComment",{onshow(e){o.populateAliases(e),e.querySelector("#workOrderCommentAdd--workOrderId").value=r,e.querySelector("form").addEventListener("submit",t)},onshown(t,o){bulmaJS.toggleHtmlClipped(),e=o,t.querySelector("#workOrderCommentAdd--workOrderComment").focus()},onremoved(){bulmaJS.toggleHtmlClipped(),document.querySelector("#workOrderComments--add").focus()}})}),n||L(),n||(u=exports.workOrderMilestones,delete exports.workOrderMilestones,A(),null===(t=document.querySelector("#button--addMilestone"))||void 0===t||t.addEventListener("click",()=>{let e,t,n;function s(r){r&&r.preventDefault();const s=cityssm.dateToString(new Date);function a(){cityssm.postJSON(`${o.urlPrefix}/workOrders/doAddWorkOrderMilestone`,e,e=>{const t=e;I(t),t.success&&n()})}const l=t.value;""!==l&&l{C(t.value,l)}),C(t.value,l)},onremoved(){bulmaJS.toggleHtmlClipped(),document.querySelector("#button--addMilestone").focus()}})}))})();
\ No newline at end of file
+"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),(()=>{var e,t;const o=exports.los,r=document.querySelector("#workOrderEdit--workOrderId").value,n=""===r,s=document.querySelector("#form--workOrderEdit");function a(){var e;o.setUnsavedChanges(),null===(e=document.querySelector("button[type='submit'][form='form--workOrderEdit']"))||void 0===e||e.classList.remove("is-light")}function l(){var e;o.clearUnsavedChanges(),null===(e=document.querySelector("button[type='submit'][form='form--workOrderEdit']"))||void 0===e||e.classList.add("is-light")}o.initializeDatePickers(null===(S=s.querySelector("#workOrderEdit--workOrderOpenDateString"))||void 0===S?void 0:S.closest(".field")),o.initializeUnlockFieldButtons(s),s.addEventListener("submit",e=>{e.preventDefault(),cityssm.postJSON(`${o.urlPrefix}/workOrders/${n?"doCreateWorkOrder":"doUpdateWorkOrder"}`,e.currentTarget,e=>{var t;const r=e;r.success?(l(),n?window.location.href=o.getWorkOrderURL(r.workOrderId,!0):bulmaJS.alert({message:"Work Order Updated Successfully",contextualColorName:"success"})):bulmaJS.alert({title:"Error Updating Work Order",message:null!==(t=r.errorMessage)&&void 0!==t?t:"",contextualColorName:"danger"})})});const i=s.querySelectorAll("input, select, textarea");for(const e of i)e.addEventListener("change",a);function d(){cityssm.postJSON(`${o.urlPrefix}/workOrders/doCloseWorkOrder`,{workOrderId:r},e=>{var t;const n=e;n.success?(l(),window.location.href=o.getWorkOrderURL(r)):bulmaJS.alert({title:"Error Closing Work Order",message:null!==(t=n.errorMessage)&&void 0!==t?t:"",contextualColorName:"danger"})})}function c(){cityssm.postJSON(`${o.urlPrefix}/workOrders/doDeleteWorkOrder`,{workOrderId:r},e=>{var t;const r=e;r.success?(l(),window.location.href=`${o.urlPrefix}/workOrders`):bulmaJS.alert({title:"Error Deleting Work Order",message:null!==(t=r.errorMessage)&&void 0!==t?t:"",contextualColorName:"danger"})})}let u;if(null===(m=document.querySelector("#button--closeWorkOrder"))||void 0===m||m.addEventListener("click",()=>{u.some(e=>!e.workOrderMilestoneCompletionDate)?bulmaJS.alert({title:"Outstanding Milestones",message:"You cannot close a work order with outstanding milestones.\n Either complete the outstanding milestones, or remove them from the work order.",contextualColorName:"warning"}):bulmaJS.confirm({title:"Close Work Order",message:o.hasUnsavedChanges()?"Are you sure you want to close this work order with unsaved changes?":"Are you sure you want to close this work order?",contextualColorName:o.hasUnsavedChanges()?"warning":"info",okButton:{text:"Yes, Close Work Order",callbackFunction:d}})}),null===(e=document.querySelector("#button--deleteWorkOrder"))||void 0===e||e.addEventListener("click",e=>{e.preventDefault(),bulmaJS.confirm({title:"Delete Work Order",message:"Are you sure you want to delete this work order?",contextualColorName:"warning",okButton:{text:"Yes, Delete Work Order",callbackFunction:c}})}),!n){var m;Object.defineProperty(exports,"__esModule",{value:!0});let e=exports.workOrderLots;delete exports.workOrderLots;let t=exports.workOrderLotOccupancies;function p(e){const n=e.currentTarget.closest(".container--lotOccupancy").dataset.lotOccupancyId;bulmaJS.confirm({title:`Delete ${o.escapedAliases.Occupancy} Relationship`,message:`Are you sure you want to remove the relationship to this ${o.escapedAliases.occupancy} record from this work order? Note that the record will remain.`,contextualColorName:"warning",okButton:{text:"Yes, Delete Relationship",callbackFunction:function(){cityssm.postJSON(o.urlPrefix+"/workOrders/doDeleteWorkOrderLotOccupancy",{workOrderId:r,lotOccupancyId:n},e=>{var o;const r=e;r.success?(t=r.workOrderLotOccupancies,k()):bulmaJS.alert({title:"Error Deleting Relationship",message:null!==(o=r.errorMessage)&&void 0!==o?o:"",contextualColorName:"danger"})})}}})}function y(t,n){cityssm.postJSON(o.urlPrefix+"/workOrders/doAddWorkOrderLot",{workOrderId:r,lotId:t},t=>{var r;const s=t;s.success?(e=s.workOrderLots,k()):bulmaJS.alert({title:`Error Adding ${o.escapedAliases.Lot}`,message:null!==(r=s.errorMessage)&&void 0!==r?r:"",contextualColorName:"danger"}),void 0!==n&&n(s.success)})}function O(e){y(e.currentTarget.dataset.lotId)}function h(t){const n=Number.parseInt(t.currentTarget.closest(".container--lot").dataset.lotId,10),s=e.find(e=>e.lotId===n);let a;function l(t){t.preventDefault(),cityssm.postJSON(o.urlPrefix+"/workOrders/doUpdateLotStatus",t.currentTarget,t=>{var o;const r=t;r.success?(e=r.workOrderLots,k(),a()):bulmaJS.alert({title:"Error Deleting Relationship",message:null!==(o=r.errorMessage)&&void 0!==o?o:"",contextualColorName:"danger"})})}cityssm.openHtmlModal("lot-editLotStatus",{onshow(e){o.populateAliases(e),e.querySelector("#lotStatusEdit--lotId").value=n.toString(),e.querySelector("#lotStatusEdit--lotName").value=s.lotName;const t=e.querySelector("#lotStatusEdit--lotStatusId");let a=!1;for(const e of exports.lotStatuses){const o=document.createElement("option");o.value=e.lotStatusId.toString(),o.textContent=e.lotStatus,e.lotStatusId===s.lotStatusId&&(a=!0),t.append(o)}if(!a&&s.lotStatusId){const e=document.createElement("option");e.value=s.lotStatusId.toString(),e.textContent=s.lotStatus,t.append(e)}s.lotStatusId&&(t.value=s.lotStatusId.toString()),e.querySelector("form").insertAdjacentHTML("beforeend",``)},onshown(e,t){a=t,bulmaJS.toggleHtmlClipped(),e.querySelector("form").addEventListener("submit",l)},onremoved(){bulmaJS.toggleHtmlClipped()}})}function g(t){const n=t.currentTarget.closest(".container--lot").dataset.lotId;bulmaJS.confirm({title:`Delete ${o.escapedAliases.Occupancy} Relationship`,message:`Are you sure you want to remove the relationship to this ${o.escapedAliases.occupancy} record from this work order? Note that the record will remain.`,contextualColorName:"warning",okButton:{text:"Yes, Delete Relationship",callbackFunction:function(){cityssm.postJSON(o.urlPrefix+"/workOrders/doDeleteWorkOrderLot",{workOrderId:r,lotId:n},t=>{var o;const r=t;r.success?(e=r.workOrderLots,k()):bulmaJS.alert({title:"Error Deleting Relationship",message:null!==(o=r.errorMessage)&&void 0!==o?o:"",contextualColorName:"danger"})})}}})}function k(){!function(){var r,n,s,a;const l=document.querySelector("#container--lotOccupancies");if(document.querySelector(".tabs a[href='#relatedTab--lotOccupancies'] .tag").textContent=t.length.toString(),0===t.length)return void(l.innerHTML=`
\n
There are no ${o.escapedAliases.occupancies} associated with this work order.
\n
`);l.innerHTML=`
\n
\n
\n
${o.escapedAliases.Occupancy} Type
\n
${o.escapedAliases.Lot}
\n
${o.escapedAliases.OccupancyStartDate}
\n
End Date
\n
${o.escapedAliases.Occupants}
\n
\n
\n \n
`;const i=cityssm.dateToString(new Date);for(const d of t){const t=document.createElement("tr");t.className="container--lotOccupancy",t.dataset.lotOccupancyId=d.lotOccupancyId.toString();const c=!(d.occupancyEndDate&&d.occupancyEndDateStringd.lotId===e.lotId);t.innerHTML='
`;for(const e of s.lotOccupancies){const s=document.createElement("tr");s.className="container--lotOccupancy",s.dataset.lotOccupancyId=e.lotOccupancyId.toString(),s.innerHTML=`
"+(e.occupancyEndDate?e.occupancyEndDateString:'(No End Date)')+"
"+(0===e.lotOccupancyOccupants.length?`(No ${cityssm.escapeHTML(o.escapedAliases.Occupants)})`:cityssm.escapeHTML(e.lotOccupancyOccupants[0].occupantName+" "+e.lotOccupancyOccupants[0].occupantFamilyName)+(e.lotOccupancyOccupants.length>1?" plus "+(e.lotOccupancyOccupants.length-1).toString():""))+"
',n.querySelector(".button--edit").addEventListener("click",b),n.querySelector(".button--delete").addEventListener("click",M),r.querySelector("tbody").append(n)}o.innerHTML="",o.append(r)}function T(e){for(const t of e.querySelectorAll(".panel-block"))t.remove()}function C(e,t){T(t),t.insertAdjacentHTML("beforeend",`
`),cityssm.postJSON(`${o.urlPrefix}/workOrders/doGetWorkOrderMilestones`,{workOrderMilestoneDateFilter:"date",workOrderMilestoneDateString:e},o=>{var n,s,a,l;const i=o.workOrderMilestones.filter(e=>e.workOrderId.toString()!==r);T(t);for(const e of i)t.insertAdjacentHTML("beforeend",`
\n There are no milestones on other work orders scheduled for\n ${cityssm.escapeHTML(e)}.\n
\n
\n
`)})}function I(e){var t;const o=e;o.success?(u=o.workOrderMilestones,A()):bulmaJS.alert({title:"Error Reopening Milestone",message:null!==(t=o.errorMessage)&&void 0!==t?t:"",contextualColorName:"danger"})}function x(e){var t;e.preventDefault();const n=cityssm.dateToString(new Date),s=Number.parseInt(null!==(t=e.currentTarget.closest(".container--milestone").dataset.workOrderMilestoneId)&&void 0!==t?t:"",10),a=u.find(e=>e.workOrderMilestoneId===s);bulmaJS.confirm({title:"Complete Milestone",message:"Are you sure you want to complete this milestone?"+(void 0!==a.workOrderMilestoneDateString&&""!==a.workOrderMilestoneDateString&&a.workOrderMilestoneDateString>n?" Note that this milestone is expected to be completed in the future.":""),messageIsHtml:!0,contextualColorName:"warning",okButton:{text:"Yes, Complete Milestone",callbackFunction:function(){cityssm.postJSON(`${o.urlPrefix}/workOrders/doCompleteWorkOrderMilestone`,{workOrderId:r,workOrderMilestoneId:s},I)}}})}function E(e){e.preventDefault();const t=e.currentTarget.closest(".container--milestone").dataset.workOrderMilestoneId;bulmaJS.confirm({title:"Reopen Milestone",message:"Are you sure you want to remove the completion status from this milestone, and reopen it?",contextualColorName:"warning",okButton:{text:"Yes, Reopen Milestone",callbackFunction:function(){cityssm.postJSON(o.urlPrefix+"/workOrders/doReopenWorkOrderMilestone",{workOrderId:r,workOrderMilestoneId:t},I)}}})}function D(e){e.preventDefault();const t=e.currentTarget.closest(".container--milestone").dataset.workOrderMilestoneId;bulmaJS.confirm({title:"Delete Milestone",message:"Are you sure you want to delete this milestone?",contextualColorName:"warning",okButton:{text:"Yes, Delete Milestone",callbackFunction:function(){cityssm.postJSON(`${o.urlPrefix}/workOrders/doDeleteWorkOrderMilestone`,{workOrderMilestoneId:t,workOrderId:r},I)}}})}function q(e){var t;e.preventDefault();const n=Number.parseInt(null!==(t=e.currentTarget.closest(".container--milestone").dataset.workOrderMilestoneId)&&void 0!==t?t:"",10),s=u.find(e=>e.workOrderMilestoneId===n);let a,l;function i(e){e.preventDefault(),cityssm.postJSON(`${o.urlPrefix}/workOrders/doUpdateWorkOrderMilestone`,e.currentTarget,e=>{const t=e;I(t),t.success&&a()})}cityssm.openHtmlModal("workOrder-editMilestone",{onshow(e){var t,o,n,a,i,d;e.querySelector("#milestoneEdit--workOrderId").value=r,e.querySelector("#milestoneEdit--workOrderMilestoneId").value=null!==(o=null===(t=s.workOrderMilestoneId)||void 0===t?void 0:t.toString())&&void 0!==o?o:"";const c=e.querySelector("#milestoneEdit--workOrderMilestoneTypeId");let u=!1;for(const e of exports.workOrderMilestoneTypes){const t=document.createElement("option");t.value=e.workOrderMilestoneTypeId.toString(),t.textContent=e.workOrderMilestoneType,e.workOrderMilestoneTypeId===s.workOrderMilestoneTypeId&&(t.selected=!0,u=!0),c.append(t)}if(!u&&s.workOrderMilestoneTypeId){const e=document.createElement("option");e.value=s.workOrderMilestoneTypeId.toString(),e.textContent=null!==(n=s.workOrderMilestoneType)&&void 0!==n?n:"",e.selected=!0,c.append(e)}(l=e.querySelector("#milestoneEdit--workOrderMilestoneDateString")).value=null!==(a=s.workOrderMilestoneDateString)&&void 0!==a?a:"",s.workOrderMilestoneTime&&(e.querySelector("#milestoneEdit--workOrderMilestoneTimeString").value=null!==(i=s.workOrderMilestoneTimeString)&&void 0!==i?i:""),e.querySelector("#milestoneEdit--workOrderMilestoneDescription").value=null!==(d=s.workOrderMilestoneDescription)&&void 0!==d?d:""},onshown(e,t){var r;a=t,bulmaJS.toggleHtmlClipped(),o.initializeDatePickers(e),null===(r=e.querySelector("form"))||void 0===r||r.addEventListener("submit",i);const n=document.querySelector("#milestoneEdit--conflictingMilestonesPanel");l.addEventListener("change",()=>{C(l.value,n)}),C(l.value,n)},onremoved(){bulmaJS.toggleHtmlClipped()}})}function A(){var e,t,o,r,n,s,a;const l=document.querySelector("#panel--milestones"),i=l.querySelectorAll(".panel-block");for(const e of i)e.remove();for(const i of u){const d=document.createElement("div");d.className="panel-block is-block container--milestone",d.dataset.workOrderMilestoneId=null===(e=i.workOrderMilestoneId)||void 0===e?void 0:e.toString(),d.innerHTML='
'+(i.workOrderMilestoneCompletionDate?'':'')+'
'+(i.workOrderMilestoneTypeId?""+cityssm.escapeHTML(null!==(t=i.workOrderMilestoneType)&&void 0!==t?t:"")+" ":"")+(0===i.workOrderMilestoneDate?'(No Set Date)':i.workOrderMilestoneDateString)+(i.workOrderMilestoneTime?" "+i.workOrderMilestoneTimePeriodString:"")+' '+cityssm.escapeHTML(null!==(o=i.workOrderMilestoneDescription)&&void 0!==o?o:"")+'