From b1f4eb9fd15da2b129e6b28725212110589fda14 Mon Sep 17 00:00:00 2001 From: Dan Gowans Date: Fri, 30 Dec 2022 14:20:52 -0500 Subject: [PATCH] reduce move up down button duplication --- public-typescript/adminFees.js | 25 +--------- public-typescript/adminFees.ts | 31 +++--------- public-typescript/adminLotTypes.js | 26 +--------- public-typescript/adminLotTypes.ts | 32 +++--------- public-typescript/adminOccupancyTypes.js | 39 ++------------- public-typescript/adminOccupancyTypes.ts | 49 +++++------------- public-typescript/adminTables.js | 43 +++------------- .../adminTablesLotOccupantTypes.js | 16 ++---- .../adminTablesLotOccupantTypes.ts | 29 ++++------- .../adminTables/adminTablesLotStatuses.js | 9 +--- .../adminTables/adminTablesLotStatuses.ts | 13 ++--- .../adminTablesWorkOrderMilestoneTypes.js | 9 +--- .../adminTablesWorkOrderMilestoneTypes.ts | 13 ++--- .../adminTables/adminTablesWorkOrderTypes.js | 9 +--- .../adminTables/adminTablesWorkOrderTypes.ts | 15 +++--- public-typescript/main.js | 37 +++++++++++++- public-typescript/main.ts | 50 ++++++++++++++++++- public/javascripts/adminFees.min.js | 2 +- public/javascripts/adminLotTypes.min.js | 2 +- public/javascripts/adminOccupancyTypes.min.js | 2 +- public/javascripts/adminTables.min.js | 2 +- public/javascripts/main.min.js | 2 +- types/globalTypes.d.ts | 1 + types/globalTypes.ts | 2 + 24 files changed, 165 insertions(+), 293 deletions(-) diff --git a/public-typescript/adminFees.js b/public-typescript/adminFees.js index 13076c98..9c2cefd2 100644 --- a/public-typescript/adminFees.js +++ b/public-typescript/adminFees.js @@ -51,18 +51,7 @@ Object.defineProperty(exports, "__esModule", { value: true }); "" + "") + ('
' + - '
' + - '
' + - '" + - "
" + - '
' + - '" + - "
" + - "
" + + los.getMoveUpDownButtonFieldHTML("button--moveFeeCategoryUp", "button--moveFeeCategoryDown") + "
") + "") + "" + @@ -148,17 +137,7 @@ Object.defineProperty(exports, "__esModule", { value: true }); "" + "") + ('
' + - '
' + - '
' + - '" + - "
" + - '
' + - '" + - "
" + + los.getMoveUpDownButtonFieldHTML("button--moveFeeUp", "button--moveFeeDown") + "
" + "
") + ""; diff --git a/public-typescript/adminFees.ts b/public-typescript/adminFees.ts index cd8658c8..f2c3413b 100644 --- a/public-typescript/adminFees.ts +++ b/public-typescript/adminFees.ts @@ -71,18 +71,10 @@ declare const bulmaJS: BulmaJS; "" + "") + ('
' + - '
' + - '
' + - '" + - "
" + - '
' + - '" + - "
" + - "
" + + los.getMoveUpDownButtonFieldHTML( + "button--moveFeeCategoryUp", + "button--moveFeeCategoryDown" + ) + "
") + "") + "" + @@ -175,17 +167,10 @@ declare const bulmaJS: BulmaJS; "" + "") + ('
' + - '
' + - '
' + - '" + - "
" + - '
' + - '" + - "
" + + los.getMoveUpDownButtonFieldHTML( + "button--moveFeeUp", + "button--moveFeeDown" + ) + "
" + "
") + ""; diff --git a/public-typescript/adminLotTypes.js b/public-typescript/adminLotTypes.js index 22cb96cc..9ec207d1 100644 --- a/public-typescript/adminLotTypes.js +++ b/public-typescript/adminLotTypes.js @@ -280,18 +280,7 @@ Object.defineProperty(exports, "__esModule", { value: true }); "" + '
' + ('
' + - '
' + - '
' + - '" + - "
" + - '
' + - '" + - "
" + - "
" + + los.getMoveUpDownButtonFieldHTML("button--moveLotTypeFieldUp", "button--moveLotTypeFieldDown") + "
") + "
" + ""; @@ -355,18 +344,7 @@ Object.defineProperty(exports, "__esModule", { value: true }); "" + "") + ('
' + - '
' + - '
' + - '" + - "
" + - '
' + - '" + - "
" + - "
" + + los.getMoveUpDownButtonFieldHTML("button--moveLotTypeUp", "button--moveLotTypeDown") + "
") + "") + "" + diff --git a/public-typescript/adminLotTypes.ts b/public-typescript/adminLotTypes.ts index b0693554..0eba6258 100644 --- a/public-typescript/adminLotTypes.ts +++ b/public-typescript/adminLotTypes.ts @@ -504,18 +504,10 @@ declare const bulmaJS: BulmaJS; "" + '
' + ('
' + - '
' + - '
' + - '" + - "
" + - '
' + - '" + - "
" + - "
" + + los.getMoveUpDownButtonFieldHTML( + "button--moveLotTypeFieldUp", + "button--moveLotTypeFieldDown" + ) + "
") + "
" + ""; @@ -601,18 +593,10 @@ declare const bulmaJS: BulmaJS; "" + "") + ('
' + - '
' + - '
' + - '" + - "
" + - '
' + - '" + - "
" + - "
" + + los.getMoveUpDownButtonFieldHTML( + "button--moveLotTypeUp", + "button--moveLotTypeDown" + ) + "
") + "") + "" + diff --git a/public-typescript/adminOccupancyTypes.js b/public-typescript/adminOccupancyTypes.js index c1b0c929..1fea9283 100644 --- a/public-typescript/adminOccupancyTypes.js +++ b/public-typescript/adminOccupancyTypes.js @@ -287,18 +287,7 @@ Object.defineProperty(exports, "__esModule", { value: true }); "" + '
' + ('
' + - '
' + - '
' + - '" + - "
" + - '
' + - '" + - "
" + - "
" + + los.getMoveUpDownButtonFieldHTML("button--moveOccupancyTypeFieldUp", "button--moveOccupancyTypeFieldDown") + "
") + "
" + ""; @@ -417,18 +406,7 @@ Object.defineProperty(exports, "__esModule", { value: true }); "" + '
' + ('
' + - '
' + - '
' + - '" + - "
" + - '
' + - '" + - "
" + - "
" + + los.getMoveUpDownButtonFieldHTML("button--moveOccupancyTypePrintUp", "button--moveOccupancyTypePrintDown") + "
") + ('
' + '" + "
") + ('
' + - '
' + - '
' + - '" + - "
" + - '
' + - '" + - "
" + - "
" + + los.getMoveUpDownButtonFieldHTML("button--moveOccupancyTypeUp", "button--moveOccupancyTypeDown") + "
") + "
") + "" + diff --git a/public-typescript/adminOccupancyTypes.ts b/public-typescript/adminOccupancyTypes.ts index 9495f32c..5c9ad049 100644 --- a/public-typescript/adminOccupancyTypes.ts +++ b/public-typescript/adminOccupancyTypes.ts @@ -16,6 +16,7 @@ declare const bulmaJS: BulmaJS; const occupancyTypesContainerElement = document.querySelector( "#container--occupancyTypes" ) as HTMLElement; + const occupancyTypePrintsContainerElement = document.querySelector( "#container--occupancyTypePrints" ) as HTMLElement; @@ -551,18 +552,10 @@ declare const bulmaJS: BulmaJS; "" + '
' + ('
' + - '
' + - '
' + - '" + - "
" + - '
' + - '" + - "
" + - "
" + + los.getMoveUpDownButtonFieldHTML( + "button--moveOccupancyTypeFieldUp", + "button--moveOccupancyTypeFieldDown" + ) + "
") + "
" + ""; @@ -788,18 +781,10 @@ declare const bulmaJS: BulmaJS; "" + '
' + ('
' + - '
' + - '
' + - '" + - "
" + - '
' + - '" + - "
" + - "
" + + los.getMoveUpDownButtonFieldHTML( + "button--moveOccupancyTypePrintUp", + "button--moveOccupancyTypePrintDown" + ) + "
") + ('
' + '" + "
") + ('
' + - '
' + - '
' + - '" + - "
" + - '
' + - '" + - "
" + - "
" + + los.getMoveUpDownButtonFieldHTML( + "button--moveOccupancyTypeUp", + "button--moveOccupancyTypeDown" + ) + "
") + "
") + "" + diff --git a/public-typescript/adminTables.js b/public-typescript/adminTables.js index c6e4452c..2ccf6525 100644 --- a/public-typescript/adminTables.js +++ b/public-typescript/adminTables.js @@ -154,14 +154,7 @@ Object.defineProperty(exports, "__esModule", { value: true }); '' + '
' + '
' + - ('
' + - '
' + - '' + - "
" + - '
' + - '' + - "
" + - "
") + + los.getMoveUpDownButtonFieldHTML("button--moveWorkOrderTypeUp", "button--moveWorkOrderTypeDown", false) + "
" + '
' + '' + - "
" + - '
' + - '' + - "
" + - "
") + + los.getMoveUpDownButtonFieldHTML("button--moveWorkOrderMilestoneTypeUp", "button--moveWorkOrderMilestoneTypeDown", false) + "" + '
' + '' + - "
" + - '
' + - '' + - "
" + - "") + + los.getMoveUpDownButtonFieldHTML("button--moveLotStatusUp", "button--moveLotStatusDown", false) + "" + '
' + '' + - "
" + - '
' + - '' + - "
" + - "") + + los.getMoveUpDownButtonFieldHTML("button--moveLotOccupantTypeUp", "button--moveLotOccupantTypeDown", false) + "" + '
' + '' + - "
" + - '
' + - '' + - "
" + - "") + + los.getMoveUpDownButtonFieldHTML("button--moveLotOccupantTypeUp", "button--moveLotOccupantTypeDown", false) + "" + '
' + '' + - "
" + - '
' + - '' + - "
" + - "") + + los.getMoveUpDownButtonFieldHTML( + "button--moveLotOccupantTypeUp", + "button--moveLotOccupantTypeDown", + false + ) + "" + '
' + '' + - "
" + - '
' + - '' + - "
" + - "") + + los.getMoveUpDownButtonFieldHTML("button--moveLotStatusUp", "button--moveLotStatusDown", false) + "" + '
' + '' + - "
" + - '
' + - '' + - "
" + - "") + + los.getMoveUpDownButtonFieldHTML( + "button--moveLotStatusUp", + "button--moveLotStatusDown", + false + ) + "" + '
' + '' + - "
" + - '
' + - '' + - "
" + - "") + + los.getMoveUpDownButtonFieldHTML("button--moveWorkOrderMilestoneTypeUp", "button--moveWorkOrderMilestoneTypeDown", false) + "" + '
' + '' + - "
" + - '
' + - '' + - "
" + - "") + + los.getMoveUpDownButtonFieldHTML( + "button--moveWorkOrderMilestoneTypeUp", + "button--moveWorkOrderMilestoneTypeDown", + false + ) + "" + '
' + '' + - "
" + - '
' + - '' + - "
" + - "") + + los.getMoveUpDownButtonFieldHTML("button--moveWorkOrderTypeUp", "button--moveWorkOrderTypeDown", false) + "" + '
' + '' + - "
" + - '
' + - '' + - "
" + - "") + + los.getMoveUpDownButtonFieldHTML( + "button--moveWorkOrderTypeUp", + "button--moveWorkOrderTypeDown", + false + ) + "" + '
' + ' +
+
+ +
+ `; + } + /* + * Declare LOS + */ const los = { urlPrefix: document.querySelector("main").dataset.urlPrefix, apiKey: document.querySelector("main").dataset.apiKey, highlightMap, initializeUnlockFieldButtons, initializeDatePickers, - // initializeTimePickers, populateAliases, escapedAliases, getRandomColor, setUnsavedChanges, clearUnsavedChanges, - hasUnsavedChanges + hasUnsavedChanges, + getMoveUpDownButtonFieldHTML }; exports.los = los; })(); diff --git a/public-typescript/main.ts b/public-typescript/main.ts index 0e4d70ea..03aa3679 100644 --- a/public-typescript/main.ts +++ b/public-typescript/main.ts @@ -9,6 +9,10 @@ declare const cityssm: cityssmGlobal; declare const bulmaJS: BulmaJS; (() => { + /* + * Unsaved Changes + */ + let _hasUnsavedChanges = false; function setUnsavedChanges() { @@ -92,6 +96,10 @@ declare const bulmaJS: BulmaJS; } } + /* + * Date Pickers + */ + const datePickerBaseOptions: BulmaCalendarOptions = { type: "date", dateFormat: "yyyy-MM-dd", @@ -252,6 +260,10 @@ declare const bulmaJS: BulmaJS; }; */ + /* + * Aliases + */ + function populateAliases(containerElement: HTMLElement): void { const aliasElements = containerElement.querySelectorAll( ".alias" @@ -349,20 +361,54 @@ declare const bulmaJS: BulmaJS; }); } + /* + * Bulma Snippets + */ + + function getMoveUpDownButtonFieldHTML( + upButtonClassNames: string, + downButtonClassNames: string, + isSmall = true + ): string { + return `
+
+ +
+
+ +
+
`; + } + + /* + * Declare LOS + */ + const los: globalTypes.LOS = { urlPrefix: document.querySelector("main")!.dataset.urlPrefix!, apiKey: document.querySelector("main")!.dataset.apiKey!, highlightMap, initializeUnlockFieldButtons, initializeDatePickers, - // initializeTimePickers, + populateAliases, escapedAliases, + getRandomColor, setUnsavedChanges, clearUnsavedChanges, - hasUnsavedChanges + hasUnsavedChanges, + + getMoveUpDownButtonFieldHTML }; exports.los = los; diff --git a/public/javascripts/adminFees.min.js b/public/javascripts/adminFees.min.js index edaf74a1..5ab75c1d 100644 --- a/public/javascripts/adminFees.min.js +++ b/public/javascripts/adminFees.min.js @@ -1 +1 @@ -"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),(()=>{const e=exports.los,t=document.querySelector("#container--feeCategories");let s=exports.feeCategories;function o(){if(0!==s.length){t.innerHTML="";for(const e of s){const s=document.createElement("section");if(s.className="panel container--feeCategory",s.dataset.feeCategoryId=e.feeCategoryId.toString(),s.innerHTML='

'+cityssm.escapeHTML(e.feeCategory||"")+'

'+(0===e.fees.length?'
':"")+'
',0===e.fees.length)s.insertAdjacentHTML("beforeend",`
\n
\n

\n There are no fees in the\n "${cityssm.escapeHTML(e.feeCategory||"")}"\n category.\n

\n
\n
`),s.querySelector(".button--deleteFeeCategory").addEventListener("click",r);else for(const t of e.fees){const e=document.createElement("div");e.className="panel-block is-block container--fee",e.dataset.feeId=t.feeId.toString();const o=t.isRequired||t.occupancyTypeId||t.lotTypeId;e.innerHTML='

'+cityssm.escapeHTML(t.feeName||"")+"
"+cityssm.escapeHTML(t.feeDescription||"").replace(/\n/g,"
")+"

"+(o?'

'+(t.isRequired?'Required':"")+(t.occupancyTypeId?' '+cityssm.escapeHTML(t.occupancyType||"")+"":"")+(t.lotTypeId?' '+cityssm.escapeHTML(t.lotType||"")+"":"")+"

":"")+'
'+(t.feeFunction?cityssm.escapeHTML(t.feeFunction)+"
Fee Function":"$"+t.feeAmount.toFixed(2)+"
Fee")+'
'+(t.taxPercentage?t.taxPercentage+"%":"$"+t.taxAmount.toFixed(2))+'
Tax
'+(t.includeQuantity?cityssm.escapeHTML(t.quantityUnit||"")+"
Quantity":"")+'
',e.querySelector("a").addEventListener("click",i),e.querySelector(".button--moveFeeUp").addEventListener("click",d),e.querySelector(".button--moveFeeDown").addEventListener("click",u),s.append(e)}s.querySelector(".button--editFeeCategory").addEventListener("click",a),s.querySelector(".button--addFee").addEventListener("click",l),s.querySelector(".button--moveFeeCategoryUp").addEventListener("click",n),s.querySelector(".button--moveFeeCategoryDown").addEventListener("click",c),t.append(s)}}else t.innerHTML='

There are no available fees.

'}function a(t){const a=Number.parseInt(t.currentTarget.closest(".container--feeCategory").dataset.feeCategoryId,10),r=s.find(e=>e.feeCategoryId===a);let n;function c(t){t.preventDefault(),cityssm.postJSON(e.urlPrefix+"/admin/doUpdateFeeCategory",t.currentTarget,e=>{e.success?(s=e.feeCategories,n(),o()):bulmaJS.alert({title:"Error Updating Fee Category",message:e.errorMessage||"",contextualColorName:"danger"})})}cityssm.openHtmlModal("adminFees-editFeeCategory",{onshow(e){e.querySelector("#feeCategoryEdit--feeCategoryId").value=r.feeCategoryId.toString(),e.querySelector("#feeCategoryEdit--feeCategory").value=r.feeCategory},onshown(e,t){bulmaJS.toggleHtmlClipped(),n=t,e.querySelector("form").addEventListener("submit",c),e.querySelector("#feeCategoryEdit--feeCategory").focus()},onremoved:()=>{bulmaJS.toggleHtmlClipped()}})}function r(t){const a=Number.parseInt(t.currentTarget.closest(".container--feeCategory").dataset.feeCategoryId,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(e.urlPrefix+"/admin/doDeleteFeeCategory",{feeCategoryId:a},e=>{e.success?(s=e.feeCategories,o()):bulmaJS.alert({title:"Error Updating Fee Category",message:e.errorMessage||"",contextualColorName:"danger"})})}}})}function n(t){const a=Number.parseInt(t.currentTarget.closest(".container--feeCategory").dataset.feeCategoryId,10);cityssm.postJSON(e.urlPrefix+"/admin/doMoveFeeCategoryUp",{feeCategoryId:a,moveToTop:t.shiftKey?"1":"0"},e=>{e.success?(s=e.feeCategories,o()):bulmaJS.alert({title:"Error Moving Fee Category",message:e.errorMessage||"",contextualColorName:"danger"})})}function c(t){const a=Number.parseInt(t.currentTarget.closest(".container--feeCategory").dataset.feeCategoryId,10);cityssm.postJSON(e.urlPrefix+"/admin/doMoveFeeCategoryDown",{feeCategoryId:a,moveToBottom:t.shiftKey?"1":"0"},e=>{e.success?(s=e.feeCategories,o()):bulmaJS.alert({title:"Error Moving Fee Category",message:e.errorMessage||"",contextualColorName:"danger"})})}function l(t){const a=Number.parseInt(t.currentTarget.closest(".container--feeCategory").dataset.feeCategoryId,10);let r;function n(t){t.preventDefault(),cityssm.postJSON(e.urlPrefix+"/admin/doAddFee",t.currentTarget,e=>{e.success?(s=e.feeCategories,r(),o()):bulmaJS.alert({title:"Error Adding Fee",message:e.errorMessage||"",contextualColorName:"danger"})})}cityssm.openHtmlModal("adminFees-addFee",{onshow(t){const o=t.querySelector("#feeAdd--feeCategoryId");for(const e of s){const t=document.createElement("option");t.value=e.feeCategoryId.toString(),t.textContent=e.feeCategory,e.feeCategoryId===a&&(t.selected=!0),o.append(t)}const r=t.querySelector("#feeAdd--occupancyTypeId");for(const e of exports.occupancyTypes){const t=document.createElement("option");t.value=e.occupancyTypeId.toString(),t.textContent=e.occupancyType,r.append(t)}const n=t.querySelector("#feeAdd--lotTypeId");for(const e of exports.lotTypes){const t=document.createElement("option");t.value=e.lotTypeId.toString(),t.textContent=e.lotType,n.append(t)}t.querySelector("#feeAdd--taxPercentage").value=exports.taxPercentageDefault.toString(),e.populateAliases(t)},onshown(e,t){bulmaJS.toggleHtmlClipped(),r=t,e.querySelector("form").addEventListener("submit",n),e.querySelector("#feeAdd--feeName").focus(),e.querySelector("#feeAdd--feeFunction").addEventListener("change",()=>{const t=e.querySelector("#feeAdd--feeAmount"),s=e.querySelector("#feeAdd--feeFunction");""===s.value?(s.closest(".select").classList.remove("is-success"),t.classList.add("is-success"),t.disabled=!1):(s.closest(".select").classList.add("is-success"),t.classList.remove("is-success"),t.disabled=!0)}),e.querySelector("#feeAdd--taxPercentage").addEventListener("keyup",()=>{const t=e.querySelector("#feeAdd--taxAmount"),s=e.querySelector("#feeAdd--taxPercentage");""===s.value?(s.classList.remove("is-success"),t.classList.add("is-success"),t.disabled=!1):(s.classList.add("is-success"),t.classList.remove("is-success"),t.disabled=!0)}),e.querySelector("#feeAdd--includeQuantity").addEventListener("change",()=>{e.querySelector("#feeAdd--quantityUnit").disabled=""===e.querySelector("#feeAdd--includeQuantity").value})},onremoved(){bulmaJS.toggleHtmlClipped()}})}function i(t){t.preventDefault();const a=t.currentTarget.closest(".container--fee"),r=Number.parseInt(a.dataset.feeId,10),n=Number.parseInt(a.closest(".container--feeCategory").dataset.feeCategoryId),c=s.find(e=>e.feeCategoryId===n).fees.find(e=>e.feeId===r);let l,i;function d(t){t.preventDefault(),cityssm.postJSON(e.urlPrefix+"/admin/doUpdateFee",t.currentTarget,e=>{e.success?(s=e.feeCategories,l(),o()):bulmaJS.alert({title:"Error Updating Fee",message:e.errorMessage||"",contextualColorName:"danger"})})}function u(t){t.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:()=>{cityssm.postJSON(e.urlPrefix+"/admin/doDeleteFee",{feeId:r},e=>{e.success?(s=e.feeCategories,l(),o()):bulmaJS.alert({title:"Error Deleting Fee",message:e.errorMessage||"",contextualColorName:"danger"})})}}})}function y(){const e=i.querySelector("#feeEdit--feeAmount"),t=i.querySelector("#feeEdit--feeFunction");""===t.value?(t.closest(".select").classList.remove("is-success"),e.classList.add("is-success"),e.disabled=!1):(t.closest(".select").classList.add("is-success"),e.classList.remove("is-success"),e.disabled=!0)}function f(){const e=i.querySelector("#feeEdit--taxAmount"),t=i.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(){i.querySelector("#feeEdit--quantityUnit").disabled=""===i.querySelector("#feeEdit--includeQuantity").value}cityssm.openHtmlModal("adminFees-editFee",{onshow(t){i=t,t.querySelector("#feeEdit--feeId").value=c.feeId.toString();const o=t.querySelector("#feeEdit--feeCategoryId");for(const e of s){const t=document.createElement("option");t.value=e.feeCategoryId.toString(),t.textContent=e.feeCategory,e.feeCategoryId===n&&(t.selected=!0),o.append(t)}t.querySelector("#feeEdit--feeName").value=c.feeName,t.querySelector("#feeEdit--feeDescription").value=c.feeDescription;const a=t.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),a.append(t)}const r=t.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),r.append(t)}t.querySelector("#feeEdit--feeAmount").value=c.feeAmount?c.feeAmount.toFixed(2):"",t.querySelector("#feeEdit--feeFunction").addEventListener("change",y),y(),t.querySelector("#feeEdit--taxAmount").value=c.taxAmount?c.taxAmount.toFixed(2):"";const l=t.querySelector("#feeEdit--taxPercentage");l.value=c.taxPercentage?c.taxPercentage.toString():"",l.addEventListener("keyup",f),f();const d=t.querySelector("#feeEdit--includeQuantity");c.includeQuantity&&(d.value="1"),d.addEventListener("change",m),t.querySelector("#feeEdit--quantityUnit").value=c.quantityUnit||"",m(),c.isRequired&&(t.querySelector("#feeEdit--isRequired").value="1"),e.populateAliases(t)},onshown(e,t){bulmaJS.toggleHtmlClipped(),l=t,e.querySelector("form").addEventListener("submit",d),bulmaJS.init(e),e.querySelector(".button--deleteFee").addEventListener("click",u)},onremoved:()=>{bulmaJS.toggleHtmlClipped()}})}function d(t){const a=t.currentTarget.closest(".container--fee"),r=Number.parseInt(a.dataset.feeId,10);cityssm.postJSON(e.urlPrefix+"/admin/doMoveFeeUp",{feeId:r,moveToTop:t.shiftKey?"1":"0"},e=>{e.success?(s=e.feeCategories,o()):bulmaJS.alert({title:"Error Moving Fee",message:e.errorMessage||"",contextualColorName:"danger"})})}function u(t){const a=t.currentTarget.closest(".container--fee"),r=Number.parseInt(a.dataset.feeId,10);cityssm.postJSON(e.urlPrefix+"/admin/doMoveFeeDown",{feeId:r,moveToBottom:t.shiftKey?"1":"0"},e=>{e.success?(s=e.feeCategories,o()):bulmaJS.alert({title:"Error Moving Fee",message:e.errorMessage||"",contextualColorName:"danger"})})}delete exports.feeCategories,document.querySelector("#button--addFeeCategory").addEventListener("click",()=>{let t;const a=a=>{a.preventDefault(),cityssm.postJSON(e.urlPrefix+"/admin/doAddFeeCategory",a.currentTarget,e=>{e.success?(s=e.feeCategories,t(),o()):bulmaJS.alert({title:"Error Creating Fee Category",message:e.errorMessage||"",contextualColorName:"danger"})})};cityssm.openHtmlModal("adminFees-addFeeCategory",{onshown:(e,s)=>{bulmaJS.toggleHtmlClipped(),e.querySelector("#feeCategoryAdd--feeCategory").focus(),t=s,e.querySelector("form").addEventListener("submit",a)},onremoved:()=>{bulmaJS.toggleHtmlClipped()}})}),o()})(); \ No newline at end of file +"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),(()=>{const e=exports.los,t=document.querySelector("#container--feeCategories");let s=exports.feeCategories;function o(){if(0!==s.length){t.innerHTML="";for(const o of s){const s=document.createElement("section");if(s.className="panel container--feeCategory",s.dataset.feeCategoryId=o.feeCategoryId.toString(),s.innerHTML='

'+cityssm.escapeHTML(o.feeCategory||"")+'

'+(0===o.fees.length?'
':"")+'
'+e.getMoveUpDownButtonFieldHTML("button--moveFeeCategoryUp","button--moveFeeCategoryDown")+"
",0===o.fees.length)s.insertAdjacentHTML("beforeend",`
\n
\n

\n There are no fees in the\n "${cityssm.escapeHTML(o.feeCategory||"")}"\n category.\n

\n
\n
`),s.querySelector(".button--deleteFeeCategory").addEventListener("click",r);else for(const t of o.fees){const o=document.createElement("div");o.className="panel-block is-block container--fee",o.dataset.feeId=t.feeId.toString();const a=t.isRequired||t.occupancyTypeId||t.lotTypeId;o.innerHTML='

'+cityssm.escapeHTML(t.feeName||"")+"
"+cityssm.escapeHTML(t.feeDescription||"").replace(/\n/g,"
")+"

"+(a?'

'+(t.isRequired?'Required':"")+(t.occupancyTypeId?' '+cityssm.escapeHTML(t.occupancyType||"")+"":"")+(t.lotTypeId?' '+cityssm.escapeHTML(t.lotType||"")+"":"")+"

":"")+'
'+(t.feeFunction?cityssm.escapeHTML(t.feeFunction)+"
Fee Function":"$"+t.feeAmount.toFixed(2)+"
Fee")+'
'+(t.taxPercentage?t.taxPercentage+"%":"$"+t.taxAmount.toFixed(2))+'
Tax
'+(t.includeQuantity?cityssm.escapeHTML(t.quantityUnit||"")+"
Quantity":"")+'
'+e.getMoveUpDownButtonFieldHTML("button--moveFeeUp","button--moveFeeDown")+"
",o.querySelector("a").addEventListener("click",i),o.querySelector(".button--moveFeeUp").addEventListener("click",d),o.querySelector(".button--moveFeeDown").addEventListener("click",u),s.append(o)}s.querySelector(".button--editFeeCategory").addEventListener("click",a),s.querySelector(".button--addFee").addEventListener("click",l),s.querySelector(".button--moveFeeCategoryUp").addEventListener("click",n),s.querySelector(".button--moveFeeCategoryDown").addEventListener("click",c),t.append(s)}}else t.innerHTML='

There are no available fees.

'}function a(t){const a=Number.parseInt(t.currentTarget.closest(".container--feeCategory").dataset.feeCategoryId,10),r=s.find(e=>e.feeCategoryId===a);let n;function c(t){t.preventDefault(),cityssm.postJSON(e.urlPrefix+"/admin/doUpdateFeeCategory",t.currentTarget,e=>{e.success?(s=e.feeCategories,n(),o()):bulmaJS.alert({title:"Error Updating Fee Category",message:e.errorMessage||"",contextualColorName:"danger"})})}cityssm.openHtmlModal("adminFees-editFeeCategory",{onshow(e){e.querySelector("#feeCategoryEdit--feeCategoryId").value=r.feeCategoryId.toString(),e.querySelector("#feeCategoryEdit--feeCategory").value=r.feeCategory},onshown(e,t){bulmaJS.toggleHtmlClipped(),n=t,e.querySelector("form").addEventListener("submit",c),e.querySelector("#feeCategoryEdit--feeCategory").focus()},onremoved:()=>{bulmaJS.toggleHtmlClipped()}})}function r(t){const a=Number.parseInt(t.currentTarget.closest(".container--feeCategory").dataset.feeCategoryId,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(e.urlPrefix+"/admin/doDeleteFeeCategory",{feeCategoryId:a},e=>{e.success?(s=e.feeCategories,o()):bulmaJS.alert({title:"Error Updating Fee Category",message:e.errorMessage||"",contextualColorName:"danger"})})}}})}function n(t){const a=Number.parseInt(t.currentTarget.closest(".container--feeCategory").dataset.feeCategoryId,10);cityssm.postJSON(e.urlPrefix+"/admin/doMoveFeeCategoryUp",{feeCategoryId:a,moveToTop:t.shiftKey?"1":"0"},e=>{e.success?(s=e.feeCategories,o()):bulmaJS.alert({title:"Error Moving Fee Category",message:e.errorMessage||"",contextualColorName:"danger"})})}function c(t){const a=Number.parseInt(t.currentTarget.closest(".container--feeCategory").dataset.feeCategoryId,10);cityssm.postJSON(e.urlPrefix+"/admin/doMoveFeeCategoryDown",{feeCategoryId:a,moveToBottom:t.shiftKey?"1":"0"},e=>{e.success?(s=e.feeCategories,o()):bulmaJS.alert({title:"Error Moving Fee Category",message:e.errorMessage||"",contextualColorName:"danger"})})}function l(t){const a=Number.parseInt(t.currentTarget.closest(".container--feeCategory").dataset.feeCategoryId,10);let r;function n(t){t.preventDefault(),cityssm.postJSON(e.urlPrefix+"/admin/doAddFee",t.currentTarget,e=>{e.success?(s=e.feeCategories,r(),o()):bulmaJS.alert({title:"Error Adding Fee",message:e.errorMessage||"",contextualColorName:"danger"})})}cityssm.openHtmlModal("adminFees-addFee",{onshow(t){const o=t.querySelector("#feeAdd--feeCategoryId");for(const e of s){const t=document.createElement("option");t.value=e.feeCategoryId.toString(),t.textContent=e.feeCategory,e.feeCategoryId===a&&(t.selected=!0),o.append(t)}const r=t.querySelector("#feeAdd--occupancyTypeId");for(const e of exports.occupancyTypes){const t=document.createElement("option");t.value=e.occupancyTypeId.toString(),t.textContent=e.occupancyType,r.append(t)}const n=t.querySelector("#feeAdd--lotTypeId");for(const e of exports.lotTypes){const t=document.createElement("option");t.value=e.lotTypeId.toString(),t.textContent=e.lotType,n.append(t)}t.querySelector("#feeAdd--taxPercentage").value=exports.taxPercentageDefault.toString(),e.populateAliases(t)},onshown(e,t){bulmaJS.toggleHtmlClipped(),r=t,e.querySelector("form").addEventListener("submit",n),e.querySelector("#feeAdd--feeName").focus(),e.querySelector("#feeAdd--feeFunction").addEventListener("change",()=>{const t=e.querySelector("#feeAdd--feeAmount"),s=e.querySelector("#feeAdd--feeFunction");""===s.value?(s.closest(".select").classList.remove("is-success"),t.classList.add("is-success"),t.disabled=!1):(s.closest(".select").classList.add("is-success"),t.classList.remove("is-success"),t.disabled=!0)}),e.querySelector("#feeAdd--taxPercentage").addEventListener("keyup",()=>{const t=e.querySelector("#feeAdd--taxAmount"),s=e.querySelector("#feeAdd--taxPercentage");""===s.value?(s.classList.remove("is-success"),t.classList.add("is-success"),t.disabled=!1):(s.classList.add("is-success"),t.classList.remove("is-success"),t.disabled=!0)}),e.querySelector("#feeAdd--includeQuantity").addEventListener("change",()=>{e.querySelector("#feeAdd--quantityUnit").disabled=""===e.querySelector("#feeAdd--includeQuantity").value})},onremoved(){bulmaJS.toggleHtmlClipped()}})}function i(t){t.preventDefault();const a=t.currentTarget.closest(".container--fee"),r=Number.parseInt(a.dataset.feeId,10),n=Number.parseInt(a.closest(".container--feeCategory").dataset.feeCategoryId),c=s.find(e=>e.feeCategoryId===n).fees.find(e=>e.feeId===r);let l,i;function d(t){t.preventDefault(),cityssm.postJSON(e.urlPrefix+"/admin/doUpdateFee",t.currentTarget,e=>{e.success?(s=e.feeCategories,l(),o()):bulmaJS.alert({title:"Error Updating Fee",message:e.errorMessage||"",contextualColorName:"danger"})})}function u(t){t.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:()=>{cityssm.postJSON(e.urlPrefix+"/admin/doDeleteFee",{feeId:r},e=>{e.success?(s=e.feeCategories,l(),o()):bulmaJS.alert({title:"Error Deleting Fee",message:e.errorMessage||"",contextualColorName:"danger"})})}}})}function y(){const e=i.querySelector("#feeEdit--feeAmount"),t=i.querySelector("#feeEdit--feeFunction");""===t.value?(t.closest(".select").classList.remove("is-success"),e.classList.add("is-success"),e.disabled=!1):(t.closest(".select").classList.add("is-success"),e.classList.remove("is-success"),e.disabled=!0)}function m(){const e=i.querySelector("#feeEdit--taxAmount"),t=i.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 f(){i.querySelector("#feeEdit--quantityUnit").disabled=""===i.querySelector("#feeEdit--includeQuantity").value}cityssm.openHtmlModal("adminFees-editFee",{onshow(t){i=t,t.querySelector("#feeEdit--feeId").value=c.feeId.toString();const o=t.querySelector("#feeEdit--feeCategoryId");for(const e of s){const t=document.createElement("option");t.value=e.feeCategoryId.toString(),t.textContent=e.feeCategory,e.feeCategoryId===n&&(t.selected=!0),o.append(t)}t.querySelector("#feeEdit--feeName").value=c.feeName,t.querySelector("#feeEdit--feeDescription").value=c.feeDescription;const a=t.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),a.append(t)}const r=t.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),r.append(t)}t.querySelector("#feeEdit--feeAmount").value=c.feeAmount?c.feeAmount.toFixed(2):"",t.querySelector("#feeEdit--feeFunction").addEventListener("change",y),y(),t.querySelector("#feeEdit--taxAmount").value=c.taxAmount?c.taxAmount.toFixed(2):"";const l=t.querySelector("#feeEdit--taxPercentage");l.value=c.taxPercentage?c.taxPercentage.toString():"",l.addEventListener("keyup",m),m();const d=t.querySelector("#feeEdit--includeQuantity");c.includeQuantity&&(d.value="1"),d.addEventListener("change",f),t.querySelector("#feeEdit--quantityUnit").value=c.quantityUnit||"",f(),c.isRequired&&(t.querySelector("#feeEdit--isRequired").value="1"),e.populateAliases(t)},onshown(e,t){bulmaJS.toggleHtmlClipped(),l=t,e.querySelector("form").addEventListener("submit",d),bulmaJS.init(e),e.querySelector(".button--deleteFee").addEventListener("click",u)},onremoved:()=>{bulmaJS.toggleHtmlClipped()}})}function d(t){const a=t.currentTarget.closest(".container--fee"),r=Number.parseInt(a.dataset.feeId,10);cityssm.postJSON(e.urlPrefix+"/admin/doMoveFeeUp",{feeId:r,moveToTop:t.shiftKey?"1":"0"},e=>{e.success?(s=e.feeCategories,o()):bulmaJS.alert({title:"Error Moving Fee",message:e.errorMessage||"",contextualColorName:"danger"})})}function u(t){const a=t.currentTarget.closest(".container--fee"),r=Number.parseInt(a.dataset.feeId,10);cityssm.postJSON(e.urlPrefix+"/admin/doMoveFeeDown",{feeId:r,moveToBottom:t.shiftKey?"1":"0"},e=>{e.success?(s=e.feeCategories,o()):bulmaJS.alert({title:"Error Moving Fee",message:e.errorMessage||"",contextualColorName:"danger"})})}delete exports.feeCategories,document.querySelector("#button--addFeeCategory").addEventListener("click",()=>{let t;const a=a=>{a.preventDefault(),cityssm.postJSON(e.urlPrefix+"/admin/doAddFeeCategory",a.currentTarget,e=>{e.success?(s=e.feeCategories,t(),o()):bulmaJS.alert({title:"Error Creating Fee Category",message:e.errorMessage||"",contextualColorName:"danger"})})};cityssm.openHtmlModal("adminFees-addFeeCategory",{onshown:(e,s)=>{bulmaJS.toggleHtmlClipped(),e.querySelector("#feeCategoryAdd--feeCategory").focus(),t=s,e.querySelector("form").addEventListener("submit",a)},onremoved:()=>{bulmaJS.toggleHtmlClipped()}})}),o()})(); \ No newline at end of file diff --git a/public/javascripts/adminLotTypes.min.js b/public/javascripts/adminLotTypes.min.js index 3488af95..5a6b54a7 100644 --- a/public/javascripts/adminLotTypes.min.js +++ b/public/javascripts/adminLotTypes.min.js @@ -1 +1 @@ -"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),(()=>{const e=exports.los,t=document.querySelector("#container--lotTypes");let o=exports.lotTypes;delete exports.lotTypes;const l=new Set;function s(e){const t=e.currentTarget,o=t.closest(".container--lotType"),s=Number.parseInt(o.dataset.lotTypeId,10);l.has(s)?l.delete(s):l.add(s),t.innerHTML=l.has(s)?'':'';const i=o.querySelectorAll(".panel-block");for(const e of i)e.classList.toggle("is-hidden")}function i(e){e.success?(o=e.lotTypes,v()):bulmaJS.alert({title:`Error Updating ${exports.aliases.lot} Type`,message:e.errorMessage||"",contextualColorName:"danger"})}function a(t){const o=Number.parseInt(t.currentTarget.closest(".container--lotType").dataset.lotTypeId,10);bulmaJS.confirm({title:`Delete ${exports.aliases.lot} Type`,message:`Are you sure you want to delete this ${exports.aliases.lot.toLowerCase()} type?`,contextualColorName:"warning",okButton:{text:`Yes, Delete ${exports.aliases.lot} Type`,callbackFunction:function(){cityssm.postJSON(e.urlPrefix+"/admin/doDeleteLotType",{lotTypeId:o},i)}}})}function n(t){const l=Number.parseInt(t.currentTarget.closest(".container--lotType").dataset.lotTypeId,10),s=o.find(e=>l===e.lotTypeId);let a;const n=t=>{t.preventDefault(),cityssm.postJSON(e.urlPrefix+"/admin/doUpdateLotType",t.currentTarget,e=>{i(e),e.success&&a()})};cityssm.openHtmlModal("adminLotTypes-editLotType",{onshow(t){e.populateAliases(t),t.querySelector("#lotTypeEdit--lotTypeId").value=l.toString(),t.querySelector("#lotTypeEdit--lotType").value=s.lotType},onshown(e,t){a=t,e.querySelector("#lotTypeEdit--lotType").focus(),e.querySelector("form").addEventListener("submit",n),bulmaJS.toggleHtmlClipped()},onremoved(){bulmaJS.toggleHtmlClipped()}})}function d(t){const o=Number.parseInt(t.currentTarget.closest(".container--lotType").dataset.lotTypeId,10);let s;const a=t=>{t.preventDefault(),cityssm.postJSON(e.urlPrefix+"/admin/doAddLotTypeField",t.currentTarget,e=>{l.add(o),i(e),e.success&&(s(),p(o,e.lotTypeFieldId))})};cityssm.openHtmlModal("adminLotTypes-addLotTypeField",{onshow(t){e.populateAliases(t),o&&(t.querySelector("#lotTypeFieldAdd--lotTypeId").value=o.toString())},onshown(e,t){s=t,e.querySelector("#lotTypeFieldAdd--lotTypeField").focus(),e.querySelector("form").addEventListener("submit",a),bulmaJS.toggleHtmlClipped()},onremoved(){bulmaJS.toggleHtmlClipped()}})}function r(t){t.preventDefault();const o=t.currentTarget.closest(".container--lotType").dataset.lotTypeId;cityssm.postJSON(e.urlPrefix+"/admin/doMoveLotTypeUp",{lotTypeId:o,moveToTop:t.shiftKey?"1":"0"},i)}function c(t){t.preventDefault();const o=t.currentTarget.closest(".container--lotType").dataset.lotTypeId;cityssm.postJSON(e.urlPrefix+"/admin/doMoveLotTypeDown",{lotTypeId:o,moveToBottom:t.shiftKey?"1":"0"},i)}function p(t,l){const s=o.find(e=>e.lotTypeId===t).lotTypeFields.find(e=>e.lotTypeFieldId===l);let a,n,d,r,c;function p(){n.min=a.value}function u(){""===r.value?(a.disabled=!1,n.disabled=!1,d.disabled=!1):(a.disabled=!0,n.disabled=!0,d.disabled=!0)}function y(t){t.preventDefault(),cityssm.postJSON(e.urlPrefix+"/admin/doUpdateLotTypeField",t.currentTarget,e=>{i(e),e.success&&c()})}function m(){cityssm.postJSON(e.urlPrefix+"/admin/doDeleteLotTypeField",{lotTypeFieldId:l},e=>{i(e),e.success&&c()})}function T(){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("adminLotTypes-editLotTypeField",{onshow(t){e.populateAliases(t),t.querySelector("#lotTypeFieldEdit--lotTypeFieldId").value=s.lotTypeFieldId.toString(),t.querySelector("#lotTypeFieldEdit--lotTypeField").value=s.lotTypeField,t.querySelector("#lotTypeFieldEdit--isRequired").value=s.isRequired?"1":"0",(a=t.querySelector("#lotTypeFieldEdit--minimumLength")).value=s.minimumLength.toString(),(n=t.querySelector("#lotTypeFieldEdit--maximumLength")).value=s.maximumLength.toString(),(d=t.querySelector("#lotTypeFieldEdit--pattern")).value=s.pattern,(r=t.querySelector("#lotTypeFieldEdit--lotTypeFieldValues")).value=s.lotTypeFieldValues,u()},onshown(e,t){c=t,bulmaJS.init(e),bulmaJS.toggleHtmlClipped(),cityssm.enableNavBlocker(),e.querySelector("form").addEventListener("submit",y),a.addEventListener("keyup",p),p(),r.addEventListener("keyup",u),e.querySelector("#button--deleteLotTypeField").addEventListener("click",T)},onremoved(){bulmaJS.toggleHtmlClipped(),cityssm.disableNavBlocker()}})}function u(e){e.preventDefault();const t=Number.parseInt(e.currentTarget.closest(".container--lotTypeField").dataset.lotTypeFieldId,10);p(Number.parseInt(e.currentTarget.closest(".container--lotType").dataset.lotTypeId,10),t)}function y(t){t.preventDefault();const o=t.currentTarget.closest(".container--lotTypeField").dataset.lotTypeFieldId;cityssm.postJSON(e.urlPrefix+"/admin/doMoveLotTypeFieldUp",{lotTypeFieldId:o,moveToTop:t.shiftKey?"1":"0"},i)}function m(t){t.preventDefault();const o=t.currentTarget.closest(".container--lotTypeField").dataset.lotTypeFieldId;cityssm.postJSON(e.urlPrefix+"/admin/doMoveLotTypeFieldDown",{lotTypeFieldId:o,moveToBottom:t.shiftKey?"1":"0"},i)}function T(e,t,o){if(0===o.length)e.insertAdjacentHTML("beforeend",'

There are no additional fields.

');else for(const s of o){const o=document.createElement("div");o.className="panel-block is-block container--lotTypeField",l.has(t)||o.classList.add("is-hidden"),o.dataset.lotTypeFieldId=s.lotTypeFieldId.toString(),o.innerHTML='',o.querySelector(".button--editLotTypeField").addEventListener("click",u),o.querySelector(".button--moveLotTypeFieldUp").addEventListener("click",y),o.querySelector(".button--moveLotTypeFieldDown").addEventListener("click",m),e.append(o)}}function v(){if(t.innerHTML="",0!==o.length)for(const e of o){const o=document.createElement("div");o.className="panel container--lotType",o.dataset.lotTypeId=e.lotTypeId.toString(),o.innerHTML='

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

',T(o,e.lotTypeId,e.lotTypeFields),o.querySelector(".button--toggleLotTypeFields").addEventListener("click",s),o.querySelector(".button--deleteLotType").addEventListener("click",a),o.querySelector(".button--editLotType").addEventListener("click",n),o.querySelector(".button--addLotTypeField").addEventListener("click",d),o.querySelector(".button--moveLotTypeUp").addEventListener("click",r),o.querySelector(".button--moveLotTypeDown").addEventListener("click",c),t.append(o)}else t.insertAdjacentHTML("afterbegin",`
There are no active ${exports.aliases.lot.toLowerCase()} types.

\n
`)}document.querySelector("#button--addLotType").addEventListener("click",()=>{let t;const l=l=>{l.preventDefault(),cityssm.postJSON(e.urlPrefix+"/admin/doAddLotType",l.currentTarget,e=>{e.success?(t(),o=e.lotTypes,v()):bulmaJS.alert({title:"Error Adding "+exports.aliases.lot+" Type",message:e.errorMessage||"",contextualColorName:"danger"})})};cityssm.openHtmlModal("adminLotTypes-addLotType",{onshow(t){e.populateAliases(t)},onshown(e,o){t=o,e.querySelector("#lotTypeAdd--lotType").focus(),e.querySelector("form").addEventListener("submit",l),bulmaJS.toggleHtmlClipped()},onremoved(){bulmaJS.toggleHtmlClipped()}})}),v()})(); \ No newline at end of file +"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),(()=>{const e=exports.los,t=document.querySelector("#container--lotTypes");let l=exports.lotTypes;delete exports.lotTypes;const o=new Set;function s(e){const t=e.currentTarget,l=t.closest(".container--lotType"),s=Number.parseInt(l.dataset.lotTypeId,10);o.has(s)?o.delete(s):o.add(s),t.innerHTML=o.has(s)?'':'';const i=l.querySelectorAll(".panel-block");for(const e of i)e.classList.toggle("is-hidden")}function i(e){e.success?(l=e.lotTypes,v()):bulmaJS.alert({title:`Error Updating ${exports.aliases.lot} Type`,message:e.errorMessage||"",contextualColorName:"danger"})}function a(t){const l=Number.parseInt(t.currentTarget.closest(".container--lotType").dataset.lotTypeId,10);bulmaJS.confirm({title:`Delete ${exports.aliases.lot} Type`,message:`Are you sure you want to delete this ${exports.aliases.lot.toLowerCase()} type?`,contextualColorName:"warning",okButton:{text:`Yes, Delete ${exports.aliases.lot} Type`,callbackFunction:function(){cityssm.postJSON(e.urlPrefix+"/admin/doDeleteLotType",{lotTypeId:l},i)}}})}function n(t){const o=Number.parseInt(t.currentTarget.closest(".container--lotType").dataset.lotTypeId,10),s=l.find(e=>o===e.lotTypeId);let a;const n=t=>{t.preventDefault(),cityssm.postJSON(e.urlPrefix+"/admin/doUpdateLotType",t.currentTarget,e=>{i(e),e.success&&a()})};cityssm.openHtmlModal("adminLotTypes-editLotType",{onshow(t){e.populateAliases(t),t.querySelector("#lotTypeEdit--lotTypeId").value=o.toString(),t.querySelector("#lotTypeEdit--lotType").value=s.lotType},onshown(e,t){a=t,e.querySelector("#lotTypeEdit--lotType").focus(),e.querySelector("form").addEventListener("submit",n),bulmaJS.toggleHtmlClipped()},onremoved(){bulmaJS.toggleHtmlClipped()}})}function d(t){const l=Number.parseInt(t.currentTarget.closest(".container--lotType").dataset.lotTypeId,10);let s;const a=t=>{t.preventDefault(),cityssm.postJSON(e.urlPrefix+"/admin/doAddLotTypeField",t.currentTarget,e=>{o.add(l),i(e),e.success&&(s(),p(l,e.lotTypeFieldId))})};cityssm.openHtmlModal("adminLotTypes-addLotTypeField",{onshow(t){e.populateAliases(t),l&&(t.querySelector("#lotTypeFieldAdd--lotTypeId").value=l.toString())},onshown(e,t){s=t,e.querySelector("#lotTypeFieldAdd--lotTypeField").focus(),e.querySelector("form").addEventListener("submit",a),bulmaJS.toggleHtmlClipped()},onremoved(){bulmaJS.toggleHtmlClipped()}})}function r(t){t.preventDefault();const l=t.currentTarget.closest(".container--lotType").dataset.lotTypeId;cityssm.postJSON(e.urlPrefix+"/admin/doMoveLotTypeUp",{lotTypeId:l,moveToTop:t.shiftKey?"1":"0"},i)}function c(t){t.preventDefault();const l=t.currentTarget.closest(".container--lotType").dataset.lotTypeId;cityssm.postJSON(e.urlPrefix+"/admin/doMoveLotTypeDown",{lotTypeId:l,moveToBottom:t.shiftKey?"1":"0"},i)}function p(t,o){const s=l.find(e=>e.lotTypeId===t).lotTypeFields.find(e=>e.lotTypeFieldId===o);let a,n,d,r,c;function p(){n.min=a.value}function u(){""===r.value?(a.disabled=!1,n.disabled=!1,d.disabled=!1):(a.disabled=!0,n.disabled=!0,d.disabled=!0)}function y(t){t.preventDefault(),cityssm.postJSON(e.urlPrefix+"/admin/doUpdateLotTypeField",t.currentTarget,e=>{i(e),e.success&&c()})}function T(){cityssm.postJSON(e.urlPrefix+"/admin/doDeleteLotTypeField",{lotTypeFieldId:o},e=>{i(e),e.success&&c()})}function m(){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:T}})}cityssm.openHtmlModal("adminLotTypes-editLotTypeField",{onshow(t){e.populateAliases(t),t.querySelector("#lotTypeFieldEdit--lotTypeFieldId").value=s.lotTypeFieldId.toString(),t.querySelector("#lotTypeFieldEdit--lotTypeField").value=s.lotTypeField,t.querySelector("#lotTypeFieldEdit--isRequired").value=s.isRequired?"1":"0",(a=t.querySelector("#lotTypeFieldEdit--minimumLength")).value=s.minimumLength.toString(),(n=t.querySelector("#lotTypeFieldEdit--maximumLength")).value=s.maximumLength.toString(),(d=t.querySelector("#lotTypeFieldEdit--pattern")).value=s.pattern,(r=t.querySelector("#lotTypeFieldEdit--lotTypeFieldValues")).value=s.lotTypeFieldValues,u()},onshown(e,t){c=t,bulmaJS.init(e),bulmaJS.toggleHtmlClipped(),cityssm.enableNavBlocker(),e.querySelector("form").addEventListener("submit",y),a.addEventListener("keyup",p),p(),r.addEventListener("keyup",u),e.querySelector("#button--deleteLotTypeField").addEventListener("click",m)},onremoved(){bulmaJS.toggleHtmlClipped(),cityssm.disableNavBlocker()}})}function u(e){e.preventDefault();const t=Number.parseInt(e.currentTarget.closest(".container--lotTypeField").dataset.lotTypeFieldId,10);p(Number.parseInt(e.currentTarget.closest(".container--lotType").dataset.lotTypeId,10),t)}function y(t){t.preventDefault();const l=t.currentTarget.closest(".container--lotTypeField").dataset.lotTypeFieldId;cityssm.postJSON(e.urlPrefix+"/admin/doMoveLotTypeFieldUp",{lotTypeFieldId:l,moveToTop:t.shiftKey?"1":"0"},i)}function T(t){t.preventDefault();const l=t.currentTarget.closest(".container--lotTypeField").dataset.lotTypeFieldId;cityssm.postJSON(e.urlPrefix+"/admin/doMoveLotTypeFieldDown",{lotTypeFieldId:l,moveToBottom:t.shiftKey?"1":"0"},i)}function m(t,l,s){if(0===s.length)t.insertAdjacentHTML("beforeend",'

There are no additional fields.

');else for(const i of s){const s=document.createElement("div");s.className="panel-block is-block container--lotTypeField",o.has(l)||s.classList.add("is-hidden"),s.dataset.lotTypeFieldId=i.lotTypeFieldId.toString(),s.innerHTML='
'+e.getMoveUpDownButtonFieldHTML("button--moveLotTypeFieldUp","button--moveLotTypeFieldDown")+"
",s.querySelector(".button--editLotTypeField").addEventListener("click",u),s.querySelector(".button--moveLotTypeFieldUp").addEventListener("click",y),s.querySelector(".button--moveLotTypeFieldDown").addEventListener("click",T),t.append(s)}}function v(){if(t.innerHTML="",0!==l.length)for(const i of l){const l=document.createElement("div");l.className="panel container--lotType",l.dataset.lotTypeId=i.lotTypeId.toString(),l.innerHTML='

'+cityssm.escapeHTML(i.lotType)+'

'+e.getMoveUpDownButtonFieldHTML("button--moveLotTypeUp","button--moveLotTypeDown")+"
",m(l,i.lotTypeId,i.lotTypeFields),l.querySelector(".button--toggleLotTypeFields").addEventListener("click",s),l.querySelector(".button--deleteLotType").addEventListener("click",a),l.querySelector(".button--editLotType").addEventListener("click",n),l.querySelector(".button--addLotTypeField").addEventListener("click",d),l.querySelector(".button--moveLotTypeUp").addEventListener("click",r),l.querySelector(".button--moveLotTypeDown").addEventListener("click",c),t.append(l)}else t.insertAdjacentHTML("afterbegin",`
There are no active ${exports.aliases.lot.toLowerCase()} types.

\n
`)}document.querySelector("#button--addLotType").addEventListener("click",()=>{let t;const o=o=>{o.preventDefault(),cityssm.postJSON(e.urlPrefix+"/admin/doAddLotType",o.currentTarget,e=>{e.success?(t(),l=e.lotTypes,v()):bulmaJS.alert({title:"Error Adding "+exports.aliases.lot+" Type",message:e.errorMessage||"",contextualColorName:"danger"})})};cityssm.openHtmlModal("adminLotTypes-addLotType",{onshow(t){e.populateAliases(t)},onshown(e,l){t=l,e.querySelector("#lotTypeAdd--lotType").focus(),e.querySelector("form").addEventListener("submit",o),bulmaJS.toggleHtmlClipped()},onremoved(){bulmaJS.toggleHtmlClipped()}})}),v()})(); \ No newline at end of file diff --git a/public/javascripts/adminOccupancyTypes.min.js b/public/javascripts/adminOccupancyTypes.min.js index 65358294..d9e9ae16 100644 --- a/public/javascripts/adminOccupancyTypes.min.js +++ b/public/javascripts/adminOccupancyTypes.min.js @@ -1 +1 @@ -"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()})(); \ No newline at end of file +"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 s=new Set;function i(e){const c=e.currentTarget,t=c.closest(".container--occupancyType"),n=Number.parseInt(t.dataset.occupancyTypeId,10);s.has(n)?s.delete(n):s.add(n),c.innerHTML=s.has(n)?'':'';const a=t.querySelectorAll(".panel-block");for(const e of a)e.classList.toggle("is-hidden")}function o(e){e.success?(n=e.occupancyTypes,a=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),a=n.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=a.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 n;function a(c){c.preventDefault(),cityssm.postJSON(e.urlPrefix+"/admin/doAddOccupancyTypeField",c.currentTarget,e=>{s.add(t),o(e),e.success&&(n(),y(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){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=n.find(e=>e.occupancyTypeId===c));const i=(s?s.occupancyTypeFields:a).find(e=>e.occupancyTypeFieldId===t);let l,p,d,u,r;function y(){p.min=l.value}function T(){""===u.value?(l.disabled=!1,p.disabled=!1,d.disabled=!1):(l.disabled=!0,p.disabled=!0,d.disabled=!0)}function v(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,T()},onshown:(e,c)=>{r=c,bulmaJS.init(e),bulmaJS.toggleHtmlClipped(),cityssm.enableNavBlocker(),e.querySelector("form").addEventListener("submit",v),l.addEventListener("keyup",y),y(),u.addEventListener("keyup",T),e.querySelector("#button--deleteOccupancyTypeField").addEventListener("click",f)},onremoved:()=>{bulmaJS.toggleHtmlClipped(),cityssm.disableNavBlocker()}})}function T(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 v(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(c,t,n){if(0===n.length)c.insertAdjacentHTML("beforeend",'

There are no additional fields.

');else for(const a of n){const n=document.createElement("div");n.className="panel-block is-block container--occupancyTypeField",t&&!s.has(t)&&n.classList.add("is-hidden"),n.dataset.occupancyTypeFieldId=a.occupancyTypeFieldId.toString(),n.innerHTML='
'+e.getMoveUpDownButtonFieldHTML("button--moveOccupancyTypeFieldUp","button--moveOccupancyTypeFieldDown")+"
",n.querySelector(".button--editOccupancyTypeField").addEventListener("click",T),n.querySelector(".button--moveOccupancyTypeFieldUp").addEventListener("click",v),n.querySelector(".button--moveOccupancyTypeFieldDown").addEventListener("click",m),c.append(n)}}function b(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(),o(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 g(c){c.preventDefault();const t=c.currentTarget.closest(".container--occupancyTypePrint").dataset.printEJS,n=c.currentTarget.closest(".container--occupancyTypePrintList").dataset.occupancyTypeId;cityssm.postJSON(e.urlPrefix+"/admin/doMoveOccupancyTypePrintUp",{occupancyTypeId:n,printEJS:t,moveToTop:c.shiftKey?"1":"0"},o)}function S(c){c.preventDefault();const t=c.currentTarget.closest(".container--occupancyTypePrint").dataset.printEJS,n=c.currentTarget.closest(".container--occupancyTypePrintList").dataset.occupancyTypeId;cityssm.postJSON(e.urlPrefix+"/admin/doMoveOccupancyTypePrintDown",{occupancyTypeId:n,printEJS:t,moveToBottom:c.shiftKey?"1":"0"},o)}function h(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},o)}}})}function O(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 s="fa-star";t.startsWith("pdf/")?s="fa-file-pdf":t.startsWith("screen/")&&(s="fa-file"),n.innerHTML='
'+cityssm.escapeHTML(a||t)+'
'+e.getMoveUpDownButtonFieldHTML("button--moveOccupancyTypePrintUp","button--moveOccupancyTypePrintDown")+'
',n.querySelector(".button--moveOccupancyTypePrintUp").addEventListener("click",g),n.querySelector(".button--moveOccupancyTypePrintDown").addEventListener("click",S),n.querySelector(".button--deleteOccupancyTypePrint").addEventListener("click",h),c.append(n)}}function F(){if(c.innerHTML='

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

',t.innerHTML="",f(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")+"
",f(t,a.occupancyTypeId,a.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 e=document.createElement("div");e.className="panel container--occupancyTypePrintList",e.dataset.occupancyTypeId=a.occupancyTypeId.toString(),e.innerHTML='

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

',O(e,a.occupancyTypeId,a.occupancyTypePrints),e.querySelector(".button--addOccupancyTypePrint").addEventListener("click",b),t.append(e)}}}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(),n=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,n)=>{c=n,e.querySelector("#occupancyTypeAdd--occupancyType").focus(),e.querySelector("form").addEventListener("submit",t),bulmaJS.toggleHtmlClipped()},onremoved:()=>{bulmaJS.toggleHtmlClipped()}})}),F()})(); \ No newline at end of file diff --git a/public/javascripts/adminTables.min.js b/public/javascripts/adminTables.min.js index 56b287f2..0d40cf6d 100644 --- a/public/javascripts/adminTables.min.js +++ b/public/javascripts/adminTables.min.js @@ -1 +1 @@ -"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),(()=>{const e=exports.los,t=e=>{const t=e.currentTarget,s=t.value;t.closest(".field").querySelectorAll(".button.is-static")[1].innerHTML=''};Object.defineProperty(exports,"__esModule",{value:!0});let s=exports.workOrderTypes;delete exports.workOrderTypes;const o=t=>{t.preventDefault(),cityssm.postJSON(e.urlPrefix+"/admin/doUpdateWorkOrderType",t.currentTarget,e=>{e.success?(s=e.workOrderTypes,bulmaJS.alert({message:"Work Order Type Updated Successfully",contextualColorName:"success"})):bulmaJS.alert({title:"Error Updating Work Order Type",message:e.errorMessage||"",contextualColorName:"danger"})})},r=t=>{const o=t.currentTarget.closest("tr"),r=o.dataset.workOrderTypeId;bulmaJS.confirm({title:"Delete Work Order Type",message:"Are you sure you want to delete this work order type?
Note that no work orders will be removed.",messageIsHtml:!0,contextualColorName:"warning",okButton:{text:"Yes, Delete Work Order Type",callbackFunction:()=>{cityssm.postJSON(e.urlPrefix+"/admin/doDeleteWorkOrderType",{workOrderTypeId:r},e=>{e.success?(0===(s=e.workOrderTypes).length?n():o.remove(),bulmaJS.alert({message:"Work Order Type Deleted Successfully",contextualColorName:"success"})):bulmaJS.alert({title:"Error Deleting Work Order Type",message:e.errorMessage||"",contextualColorName:"danger"})})}}})},a=t=>{const o=t.currentTarget.closest("tr").dataset.workOrderTypeId;cityssm.postJSON(e.urlPrefix+"/admin/doMoveWorkOrderTypeUp",{workOrderTypeId:o,moveToTop:t.shiftKey?"1":"0"},e=>{e.success?(s=e.workOrderTypes,n()):bulmaJS.alert({title:"Error Moving Work Order Type",message:e.errorMessage||"",contextualColorName:"danger"})})},l=t=>{const o=t.currentTarget.closest("tr").dataset.workOrderTypeId;cityssm.postJSON(e.urlPrefix+"/admin/doMoveWorkOrderTypeDown",{workOrderTypeId:o,moveToBottom:t.shiftKey?"1":"0"},e=>{e.success?(s=e.workOrderTypes,n()):bulmaJS.alert({title:"Error Moving Work Order Type",message:e.errorMessage||"",contextualColorName:"danger"})})},n=()=>{const e=document.querySelector("#container--workOrderTypes");if(0!==s.length){e.innerHTML="";for(const t of s){const s=document.createElement("tr");s.dataset.workOrderTypeId=t.workOrderTypeId.toString(),s.innerHTML='
',s.querySelector("form").addEventListener("submit",o),s.querySelector(".button--moveWorkOrderTypeUp").addEventListener("click",a),s.querySelector(".button--moveWorkOrderTypeDown").addEventListener("click",l),s.querySelector(".button--deleteWorkOrderType").addEventListener("click",r),e.append(s)}}else e.innerHTML='

There are no active work order types.

'};document.querySelector("#form--addWorkOrderType").addEventListener("submit",t=>{t.preventDefault();const o=t.currentTarget;cityssm.postJSON(e.urlPrefix+"/admin/doAddWorkOrderType",o,e=>{e.success?(s=e.workOrderTypes,n(),o.reset(),o.querySelector("input").focus()):bulmaJS.alert({title:"Error Adding Work Order Type",message:e.errorMessage||"",contextualColorName:"danger"})})}),n(),Object.defineProperty(exports,"__esModule",{value:!0});let i=exports.workOrderMilestoneTypes;delete exports.workOrderMilestoneTypes;const c=t=>{t.preventDefault(),cityssm.postJSON(e.urlPrefix+"/admin/doUpdateWorkOrderMilestoneType",t.currentTarget,e=>{e.success?(i=e.workOrderMilestoneTypes,bulmaJS.alert({message:"Work Order Milestone Type Updated Successfully",contextualColorName:"success"})):bulmaJS.alert({title:"Error Updating Work Order Milestone Type",message:e.errorMessage||"",contextualColorName:"danger"})})},d=t=>{const s=t.currentTarget.closest("tr"),o=s.dataset.workOrderMilestoneTypeId;bulmaJS.confirm({title:"Delete Work Order Milestone Type",message:"Are you sure you want to delete this work order milestone type?
Note that no work orders will be removed.",messageIsHtml:!0,contextualColorName:"warning",okButton:{text:"Yes, Delete Work Order Milestone Type",callbackFunction:()=>{cityssm.postJSON(e.urlPrefix+"/admin/doDeleteWorkOrderMilestoneType",{workOrderMilestoneTypeId:o},e=>{e.success?(0===(i=e.workOrderMilestoneTypes).length?m():s.remove(),bulmaJS.alert({message:"Work Order Milestone Type Deleted Successfully",contextualColorName:"success"})):bulmaJS.alert({title:"Error Deleting Work Order Milestone Type",message:e.errorMessage||"",contextualColorName:"danger"})})}}})},u=t=>{const s=t.currentTarget.closest("tr").dataset.workOrderMilestoneTypeId;cityssm.postJSON(e.urlPrefix+"/admin/doMoveWorkOrderMilestoneTypeUp",{workOrderMilestoneTypeId:s,moveToTop:t.shiftKey?"1":"0"},e=>{e.success?(i=e.workOrderMilestoneTypes,m()):bulmaJS.alert({title:"Error Moving Work Order Milestone Type",message:e.errorMessage||"",contextualColorName:"danger"})})},p=t=>{const s=t.currentTarget.closest("tr").dataset.workOrderMilestoneTypeId;cityssm.postJSON(e.urlPrefix+"/admin/doMoveWorkOrderMilestoneTypeDown",{workOrderMilestoneTypeId:s,moveToBottom:t.shiftKey?"1":"0"},e=>{e.success?(i=e.workOrderMilestoneTypes,m()):bulmaJS.alert({title:"Error Moving Work Order Milestone Type",message:e.errorMessage||"",contextualColorName:"danger"})})},m=()=>{const e=document.querySelector("#container--workOrderMilestoneTypes");if(0!==i.length){e.innerHTML="";for(const t of i){const s=document.createElement("tr");s.dataset.workOrderMilestoneTypeId=t.workOrderMilestoneTypeId.toString(),s.innerHTML='
',s.querySelector("form").addEventListener("submit",c),s.querySelector(".button--moveWorkOrderMilestoneTypeUp").addEventListener("click",u),s.querySelector(".button--moveWorkOrderMilestoneTypeDown").addEventListener("click",p),s.querySelector(".button--deleteWorkOrderMilestoneType").addEventListener("click",d),e.append(s)}}else e.innerHTML='

There are no active work order milestone types.

'};document.querySelector("#form--addWorkOrderMilestoneType").addEventListener("submit",t=>{t.preventDefault();const s=t.currentTarget;cityssm.postJSON(e.urlPrefix+"/admin/doAddWorkOrderMilestoneType",s,e=>{e.success?(i=e.workOrderMilestoneTypes,m(),s.reset(),s.querySelector("input").focus()):bulmaJS.alert({title:"Error Adding Work Order Milestone Type",message:e.errorMessage||"",contextualColorName:"danger"})})}),m(),Object.defineProperty(exports,"__esModule",{value:!0});let y=exports.lotStatuses;delete exports.lotStatuses;const v=t=>{t.preventDefault(),cityssm.postJSON(e.urlPrefix+"/admin/doUpdateLotStatus",t.currentTarget,e=>{e.success?(y=e.lotStatuses,bulmaJS.alert({message:exports.aliases.lot+" Status Updated Successfully",contextualColorName:"success"})):bulmaJS.alert({title:"Error Updating "+exports.aliases.lot+" Status",message:e.errorMessage||"",contextualColorName:"danger"})})},T=t=>{const s=t.currentTarget.closest("tr"),o=s.dataset.lotStatusId;bulmaJS.confirm({title:"Delete "+exports.aliases.lot+" Status",message:"Are you sure you want to delete this status?
Note that no "+exports.aliases.lots.toLowerCase()+" will be removed.",messageIsHtml:!0,contextualColorName:"warning",okButton:{text:"Yes, Delete Status",callbackFunction:()=>{cityssm.postJSON(e.urlPrefix+"/admin/doDeleteLotStatus",{lotStatusId:o},e=>{e.success?(0===(y=e.lotStatuses).length?f():s.remove(),bulmaJS.alert({message:exports.aliases.lot+" Status Deleted Successfully",contextualColorName:"success"})):bulmaJS.alert({title:"Error Deleting "+exports.aliases.lot+" Status",message:e.errorMessage||"",contextualColorName:"danger"})})}}})},b=t=>{const s=t.currentTarget.closest("tr").dataset.lotStatusId;cityssm.postJSON(e.urlPrefix+"/admin/doMoveLotStatusUp",{lotStatusId:s,moveToTop:t.shiftKey?"1":"0"},e=>{e.success?(y=e.lotStatuses,f()):bulmaJS.alert({title:"Error Moving "+exports.aliases.lot+" Status",message:e.errorMessage||"",contextualColorName:"danger"})})},g=t=>{const s=t.currentTarget.closest("tr").dataset.lotStatusId;cityssm.postJSON(e.urlPrefix+"/admin/doMoveLotStatusDown",{lotStatusId:s,moveToBottom:t.shiftKey?"1":"0"},e=>{e.success?(y=e.lotStatuses,f()):bulmaJS.alert({title:"Error Moving "+exports.aliases.lot+" Status",message:e.errorMessage||"",contextualColorName:"danger"})})},f=()=>{const e=document.querySelector("#container--lotStatuses");if(0!==y.length){e.innerHTML="";for(const t of y){const s=document.createElement("tr");s.dataset.lotStatusId=t.lotStatusId.toString(),s.innerHTML='
',s.querySelector("form").addEventListener("submit",v),s.querySelector(".button--moveLotStatusUp").addEventListener("click",b),s.querySelector(".button--moveLotStatusDown").addEventListener("click",g),s.querySelector(".button--deleteLotStatus").addEventListener("click",T),e.append(s)}}else e.innerHTML='

There are no active '+cityssm.escapeHTML(exports.aliases.lot.toLowerCase())+" statuses.

"};document.querySelector("#form--addLotStatus").addEventListener("submit",t=>{t.preventDefault();const s=t.currentTarget;cityssm.postJSON(e.urlPrefix+"/admin/doAddLotStatus",s,e=>{e.success?(y=e.lotStatuses,f(),s.reset(),s.querySelector("input").focus()):bulmaJS.alert({title:"Error Adding "+exports.aliases.lot+" Status",message:e.errorMessage||"",contextualColorName:"danger"})})}),f(),Object.defineProperty(exports,"__esModule",{value:!0});let S=exports.lotOccupantTypes;delete exports.lotOccupantTypes;const O=t=>{t.preventDefault(),cityssm.postJSON(e.urlPrefix+"/admin/doUpdateLotOccupantType",t.currentTarget,e=>{e.success?(S=e.lotOccupantTypes,bulmaJS.alert({message:exports.aliases.lot+" "+exports.aliases.occupant+" Type Updated Successfully",contextualColorName:"success"})):bulmaJS.alert({title:"Error Updating "+exports.aliases.lot+" "+exports.aliases.occupant+" Type",message:e.errorMessage||"",contextualColorName:"danger"})})},M=t=>{const s=t.currentTarget.closest("tr"),o=s.dataset.lotOccupantTypeId;bulmaJS.confirm({title:"Delete "+exports.aliases.lot+" "+exports.aliases.occupant+" Type",message:"Are you sure you want to delete this "+exports.aliases.lot.toLowerCase()+" "+exports.aliases.occupant.toLowerCase()+" type?
Note that no "+exports.aliases.lot.toLowerCase()+" "+exports.aliases.occupancy.toLowerCase()+" will be removed.",messageIsHtml:!0,contextualColorName:"warning",okButton:{text:"Yes, Delete "+exports.aliases.lot+" "+exports.aliases.occupant+" Type",callbackFunction:()=>{cityssm.postJSON(e.urlPrefix+"/admin/doDeleteLotOccupantType",{lotOccupantTypeId:o},e=>{e.success?(0===(S=e.lotOccupantTypes).length?w():s.remove(),bulmaJS.alert({message:exports.aliases.lot+" "+exports.aliases.occupant+" Type Deleted Successfully",contextualColorName:"success"})):bulmaJS.alert({title:"Error Deleting "+exports.aliases.lot+" "+exports.aliases.occupant+" Type",message:e.errorMessage||"",contextualColorName:"danger"})})}}})},x=t=>{const s=t.currentTarget.closest("tr").dataset.lotOccupantTypeId;cityssm.postJSON(e.urlPrefix+"/admin/doMoveLotOccupantTypeUp",{lotOccupantTypeId:s,moveToTop:t.shiftKey?"1":"0"},e=>{e.success?(S=e.lotOccupantTypes,w()):bulmaJS.alert({title:"Error Moving "+exports.aliases.lot+" "+exports.aliases.occupant+" Type",message:e.errorMessage||"",contextualColorName:"danger"})})},k=t=>{const s=t.currentTarget.closest("tr").dataset.lotOccupantTypeId;cityssm.postJSON(e.urlPrefix+"/admin/doMoveLotOccupantTypeDown",{lotOccupantTypeId:s,moveToBottom:t.shiftKey?"1":"0"},e=>{e.success?(S=e.lotOccupantTypes,w()):bulmaJS.alert({title:"Error Moving "+exports.aliases.lot+" "+exports.aliases.occupant+" Type",message:e.errorMessage||"",contextualColorName:"danger"})})},w=()=>{const e=document.querySelector("#container--lotOccupantTypes");if(0!==S.length){e.innerHTML="";for(const s of S){const o=document.createElement("tr");o.dataset.lotOccupantTypeId=s.lotOccupantTypeId.toString();const r="form--lotOccupantType-"+s.lotOccupantTypeId;o.innerHTML='
fa-
';const a=o.querySelector("input[name='fontAwesomeIconClass']");a.addEventListener("keyup",t),a.addEventListener("change",t),o.querySelector("form").addEventListener("submit",O),o.querySelector(".button--moveLotOccupantTypeUp").addEventListener("click",x),o.querySelector(".button--moveLotOccupantTypeDown").addEventListener("click",k),o.querySelector(".button--deleteLotOccupantType").addEventListener("click",M),e.append(o)}}else e.innerHTML='

There are no active '+cityssm.escapeHTML(exports.aliases.lot.toLowerCase())+" "+cityssm.escapeHTML(exports.aliases.occupant.toLowerCase())+" types.

"};document.querySelector("#form--addLotOccupantType").addEventListener("submit",t=>{t.preventDefault();const s=t.currentTarget;cityssm.postJSON(e.urlPrefix+"/admin/doAddLotOccupantType",s,e=>{e.success?(S=e.lotOccupantTypes,w(),s.reset(),s.querySelector("input").focus()):bulmaJS.alert({title:"Error Adding "+exports.aliases.lot+" "+exports.aliases.occupant+" Type",message:e.errorMessage||"",contextualColorName:"danger"})})}),w()})(); \ No newline at end of file +"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),(()=>{const e=exports.los,t=e=>{const t=e.currentTarget,s=t.value;t.closest(".field").querySelectorAll(".button.is-static")[1].innerHTML=''};Object.defineProperty(exports,"__esModule",{value:!0});let s=exports.workOrderTypes;delete exports.workOrderTypes;const r=t=>{t.preventDefault(),cityssm.postJSON(e.urlPrefix+"/admin/doUpdateWorkOrderType",t.currentTarget,e=>{e.success?(s=e.workOrderTypes,bulmaJS.alert({message:"Work Order Type Updated Successfully",contextualColorName:"success"})):bulmaJS.alert({title:"Error Updating Work Order Type",message:e.errorMessage||"",contextualColorName:"danger"})})},o=t=>{const r=t.currentTarget.closest("tr"),o=r.dataset.workOrderTypeId;bulmaJS.confirm({title:"Delete Work Order Type",message:"Are you sure you want to delete this work order type?
Note that no work orders will be removed.",messageIsHtml:!0,contextualColorName:"warning",okButton:{text:"Yes, Delete Work Order Type",callbackFunction:()=>{cityssm.postJSON(e.urlPrefix+"/admin/doDeleteWorkOrderType",{workOrderTypeId:o},e=>{e.success?(0===(s=e.workOrderTypes).length?n():r.remove(),bulmaJS.alert({message:"Work Order Type Deleted Successfully",contextualColorName:"success"})):bulmaJS.alert({title:"Error Deleting Work Order Type",message:e.errorMessage||"",contextualColorName:"danger"})})}}})},a=t=>{const r=t.currentTarget.closest("tr").dataset.workOrderTypeId;cityssm.postJSON(e.urlPrefix+"/admin/doMoveWorkOrderTypeUp",{workOrderTypeId:r,moveToTop:t.shiftKey?"1":"0"},e=>{e.success?(s=e.workOrderTypes,n()):bulmaJS.alert({title:"Error Moving Work Order Type",message:e.errorMessage||"",contextualColorName:"danger"})})},l=t=>{const r=t.currentTarget.closest("tr").dataset.workOrderTypeId;cityssm.postJSON(e.urlPrefix+"/admin/doMoveWorkOrderTypeDown",{workOrderTypeId:r,moveToBottom:t.shiftKey?"1":"0"},e=>{e.success?(s=e.workOrderTypes,n()):bulmaJS.alert({title:"Error Moving Work Order Type",message:e.errorMessage||"",contextualColorName:"danger"})})},n=()=>{const t=document.querySelector("#container--workOrderTypes");if(0!==s.length){t.innerHTML="";for(const n of s){const s=document.createElement("tr");s.dataset.workOrderTypeId=n.workOrderTypeId.toString(),s.innerHTML='
'+e.getMoveUpDownButtonFieldHTML("button--moveWorkOrderTypeUp","button--moveWorkOrderTypeDown",!1)+'
',s.querySelector("form").addEventListener("submit",r),s.querySelector(".button--moveWorkOrderTypeUp").addEventListener("click",a),s.querySelector(".button--moveWorkOrderTypeDown").addEventListener("click",l),s.querySelector(".button--deleteWorkOrderType").addEventListener("click",o),t.append(s)}}else t.innerHTML='

There are no active work order types.

'};document.querySelector("#form--addWorkOrderType").addEventListener("submit",t=>{t.preventDefault();const r=t.currentTarget;cityssm.postJSON(e.urlPrefix+"/admin/doAddWorkOrderType",r,e=>{e.success?(s=e.workOrderTypes,n(),r.reset(),r.querySelector("input").focus()):bulmaJS.alert({title:"Error Adding Work Order Type",message:e.errorMessage||"",contextualColorName:"danger"})})}),n(),Object.defineProperty(exports,"__esModule",{value:!0});let c=exports.workOrderMilestoneTypes;delete exports.workOrderMilestoneTypes;const i=t=>{t.preventDefault(),cityssm.postJSON(e.urlPrefix+"/admin/doUpdateWorkOrderMilestoneType",t.currentTarget,e=>{e.success?(c=e.workOrderMilestoneTypes,bulmaJS.alert({message:"Work Order Milestone Type Updated Successfully",contextualColorName:"success"})):bulmaJS.alert({title:"Error Updating Work Order Milestone Type",message:e.errorMessage||"",contextualColorName:"danger"})})},d=t=>{const s=t.currentTarget.closest("tr"),r=s.dataset.workOrderMilestoneTypeId;bulmaJS.confirm({title:"Delete Work Order Milestone Type",message:"Are you sure you want to delete this work order milestone type?
Note that no work orders will be removed.",messageIsHtml:!0,contextualColorName:"warning",okButton:{text:"Yes, Delete Work Order Milestone Type",callbackFunction:()=>{cityssm.postJSON(e.urlPrefix+"/admin/doDeleteWorkOrderMilestoneType",{workOrderMilestoneTypeId:r},e=>{e.success?(0===(c=e.workOrderMilestoneTypes).length?m():s.remove(),bulmaJS.alert({message:"Work Order Milestone Type Deleted Successfully",contextualColorName:"success"})):bulmaJS.alert({title:"Error Deleting Work Order Milestone Type",message:e.errorMessage||"",contextualColorName:"danger"})})}}})},u=t=>{const s=t.currentTarget.closest("tr").dataset.workOrderMilestoneTypeId;cityssm.postJSON(e.urlPrefix+"/admin/doMoveWorkOrderMilestoneTypeUp",{workOrderMilestoneTypeId:s,moveToTop:t.shiftKey?"1":"0"},e=>{e.success?(c=e.workOrderMilestoneTypes,m()):bulmaJS.alert({title:"Error Moving Work Order Milestone Type",message:e.errorMessage||"",contextualColorName:"danger"})})},p=t=>{const s=t.currentTarget.closest("tr").dataset.workOrderMilestoneTypeId;cityssm.postJSON(e.urlPrefix+"/admin/doMoveWorkOrderMilestoneTypeDown",{workOrderMilestoneTypeId:s,moveToBottom:t.shiftKey?"1":"0"},e=>{e.success?(c=e.workOrderMilestoneTypes,m()):bulmaJS.alert({title:"Error Moving Work Order Milestone Type",message:e.errorMessage||"",contextualColorName:"danger"})})},m=()=>{const t=document.querySelector("#container--workOrderMilestoneTypes");if(0!==c.length){t.innerHTML="";for(const s of c){const r=document.createElement("tr");r.dataset.workOrderMilestoneTypeId=s.workOrderMilestoneTypeId.toString(),r.innerHTML='
'+e.getMoveUpDownButtonFieldHTML("button--moveWorkOrderMilestoneTypeUp","button--moveWorkOrderMilestoneTypeDown",!1)+'
',r.querySelector("form").addEventListener("submit",i),r.querySelector(".button--moveWorkOrderMilestoneTypeUp").addEventListener("click",u),r.querySelector(".button--moveWorkOrderMilestoneTypeDown").addEventListener("click",p),r.querySelector(".button--deleteWorkOrderMilestoneType").addEventListener("click",d),t.append(r)}}else t.innerHTML='

There are no active work order milestone types.

'};document.querySelector("#form--addWorkOrderMilestoneType").addEventListener("submit",t=>{t.preventDefault();const s=t.currentTarget;cityssm.postJSON(e.urlPrefix+"/admin/doAddWorkOrderMilestoneType",s,e=>{e.success?(c=e.workOrderMilestoneTypes,m(),s.reset(),s.querySelector("input").focus()):bulmaJS.alert({title:"Error Adding Work Order Milestone Type",message:e.errorMessage||"",contextualColorName:"danger"})})}),m(),Object.defineProperty(exports,"__esModule",{value:!0});let y=exports.lotStatuses;delete exports.lotStatuses;const T=t=>{t.preventDefault(),cityssm.postJSON(e.urlPrefix+"/admin/doUpdateLotStatus",t.currentTarget,e=>{e.success?(y=e.lotStatuses,bulmaJS.alert({message:exports.aliases.lot+" Status Updated Successfully",contextualColorName:"success"})):bulmaJS.alert({title:"Error Updating "+exports.aliases.lot+" Status",message:e.errorMessage||"",contextualColorName:"danger"})})},g=t=>{const s=t.currentTarget.closest("tr"),r=s.dataset.lotStatusId;bulmaJS.confirm({title:"Delete "+exports.aliases.lot+" Status",message:"Are you sure you want to delete this status?
Note that no "+exports.aliases.lots.toLowerCase()+" will be removed.",messageIsHtml:!0,contextualColorName:"warning",okButton:{text:"Yes, Delete Status",callbackFunction:()=>{cityssm.postJSON(e.urlPrefix+"/admin/doDeleteLotStatus",{lotStatusId:r},e=>{e.success?(0===(y=e.lotStatuses).length?O():s.remove(),bulmaJS.alert({message:exports.aliases.lot+" Status Deleted Successfully",contextualColorName:"success"})):bulmaJS.alert({title:"Error Deleting "+exports.aliases.lot+" Status",message:e.errorMessage||"",contextualColorName:"danger"})})}}})},v=t=>{const s=t.currentTarget.closest("tr").dataset.lotStatusId;cityssm.postJSON(e.urlPrefix+"/admin/doMoveLotStatusUp",{lotStatusId:s,moveToTop:t.shiftKey?"1":"0"},e=>{e.success?(y=e.lotStatuses,O()):bulmaJS.alert({title:"Error Moving "+exports.aliases.lot+" Status",message:e.errorMessage||"",contextualColorName:"danger"})})},S=t=>{const s=t.currentTarget.closest("tr").dataset.lotStatusId;cityssm.postJSON(e.urlPrefix+"/admin/doMoveLotStatusDown",{lotStatusId:s,moveToBottom:t.shiftKey?"1":"0"},e=>{e.success?(y=e.lotStatuses,O()):bulmaJS.alert({title:"Error Moving "+exports.aliases.lot+" Status",message:e.errorMessage||"",contextualColorName:"danger"})})},O=()=>{const t=document.querySelector("#container--lotStatuses");if(0!==y.length){t.innerHTML="";for(const s of y){const r=document.createElement("tr");r.dataset.lotStatusId=s.lotStatusId.toString(),r.innerHTML='
'+e.getMoveUpDownButtonFieldHTML("button--moveLotStatusUp","button--moveLotStatusDown",!1)+'
',r.querySelector("form").addEventListener("submit",T),r.querySelector(".button--moveLotStatusUp").addEventListener("click",v),r.querySelector(".button--moveLotStatusDown").addEventListener("click",S),r.querySelector(".button--deleteLotStatus").addEventListener("click",g),t.append(r)}}else t.innerHTML='

There are no active '+cityssm.escapeHTML(exports.aliases.lot.toLowerCase())+" statuses.

"};document.querySelector("#form--addLotStatus").addEventListener("submit",t=>{t.preventDefault();const s=t.currentTarget;cityssm.postJSON(e.urlPrefix+"/admin/doAddLotStatus",s,e=>{e.success?(y=e.lotStatuses,O(),s.reset(),s.querySelector("input").focus()):bulmaJS.alert({title:"Error Adding "+exports.aliases.lot+" Status",message:e.errorMessage||"",contextualColorName:"danger"})})}),O(),Object.defineProperty(exports,"__esModule",{value:!0});let b=exports.lotOccupantTypes;delete exports.lotOccupantTypes;const f=t=>{t.preventDefault(),cityssm.postJSON(e.urlPrefix+"/admin/doUpdateLotOccupantType",t.currentTarget,e=>{e.success?(b=e.lotOccupantTypes,bulmaJS.alert({message:exports.aliases.lot+" "+exports.aliases.occupant+" Type Updated Successfully",contextualColorName:"success"})):bulmaJS.alert({title:"Error Updating "+exports.aliases.lot+" "+exports.aliases.occupant+" Type",message:e.errorMessage||"",contextualColorName:"danger"})})},x=t=>{const s=t.currentTarget.closest("tr"),r=s.dataset.lotOccupantTypeId;bulmaJS.confirm({title:"Delete "+exports.aliases.lot+" "+exports.aliases.occupant+" Type",message:"Are you sure you want to delete this "+exports.aliases.lot.toLowerCase()+" "+exports.aliases.occupant.toLowerCase()+" type?
Note that no "+exports.aliases.lot.toLowerCase()+" "+exports.aliases.occupancy.toLowerCase()+" will be removed.",messageIsHtml:!0,contextualColorName:"warning",okButton:{text:"Yes, Delete "+exports.aliases.lot+" "+exports.aliases.occupant+" Type",callbackFunction:()=>{cityssm.postJSON(e.urlPrefix+"/admin/doDeleteLotOccupantType",{lotOccupantTypeId:r},e=>{e.success?(0===(b=e.lotOccupantTypes).length?w():s.remove(),bulmaJS.alert({message:exports.aliases.lot+" "+exports.aliases.occupant+" Type Deleted Successfully",contextualColorName:"success"})):bulmaJS.alert({title:"Error Deleting "+exports.aliases.lot+" "+exports.aliases.occupant+" Type",message:e.errorMessage||"",contextualColorName:"danger"})})}}})},M=t=>{const s=t.currentTarget.closest("tr").dataset.lotOccupantTypeId;cityssm.postJSON(e.urlPrefix+"/admin/doMoveLotOccupantTypeUp",{lotOccupantTypeId:s,moveToTop:t.shiftKey?"1":"0"},e=>{e.success?(b=e.lotOccupantTypes,w()):bulmaJS.alert({title:"Error Moving "+exports.aliases.lot+" "+exports.aliases.occupant+" Type",message:e.errorMessage||"",contextualColorName:"danger"})})},k=t=>{const s=t.currentTarget.closest("tr").dataset.lotOccupantTypeId;cityssm.postJSON(e.urlPrefix+"/admin/doMoveLotOccupantTypeDown",{lotOccupantTypeId:s,moveToBottom:t.shiftKey?"1":"0"},e=>{e.success?(b=e.lotOccupantTypes,w()):bulmaJS.alert({title:"Error Moving "+exports.aliases.lot+" "+exports.aliases.occupant+" Type",message:e.errorMessage||"",contextualColorName:"danger"})})},w=()=>{const s=document.querySelector("#container--lotOccupantTypes");if(0!==b.length){s.innerHTML="";for(const r of b){const o=document.createElement("tr");o.dataset.lotOccupantTypeId=r.lotOccupantTypeId.toString();const a="form--lotOccupantType-"+r.lotOccupantTypeId;o.innerHTML='
fa-
'+e.getMoveUpDownButtonFieldHTML("button--moveLotOccupantTypeUp","button--moveLotOccupantTypeDown",!1)+'
';const l=o.querySelector("input[name='fontAwesomeIconClass']");l.addEventListener("keyup",t),l.addEventListener("change",t),o.querySelector("form").addEventListener("submit",f),o.querySelector(".button--moveLotOccupantTypeUp").addEventListener("click",M),o.querySelector(".button--moveLotOccupantTypeDown").addEventListener("click",k),o.querySelector(".button--deleteLotOccupantType").addEventListener("click",x),s.append(o)}}else s.innerHTML='

There are no active '+cityssm.escapeHTML(exports.aliases.lot.toLowerCase())+" "+cityssm.escapeHTML(exports.aliases.occupant.toLowerCase())+" types.

"};document.querySelector("#form--addLotOccupantType").addEventListener("submit",t=>{t.preventDefault();const s=t.currentTarget;cityssm.postJSON(e.urlPrefix+"/admin/doAddLotOccupantType",s,e=>{e.success?(b=e.lotOccupantTypes,w(),s.reset(),s.querySelector("input").focus()):bulmaJS.alert({title:"Error Adding "+exports.aliases.lot+" "+exports.aliases.occupant+" Type",message:e.errorMessage||"",contextualColorName:"danger"})})}),w()})(); \ No newline at end of file diff --git a/public/javascripts/main.min.js b/public/javascripts/main.min.js index 6545c12d..5f90c3ad 100644 --- a/public/javascripts/main.min.js +++ b/public/javascripts/main.min.js @@ -1 +1 @@ -"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),(()=>{let e=!1;function t(){return e}function s(e){const t=e.currentTarget.closest(".field").querySelector("input, select");if(t.classList.remove("is-readonly"),"INPUT"===t.tagName)t.readOnly=!1,t.disabled=!1;else{const e=t.querySelectorAll("option");for(const t of e)t.disabled=!1}t.focus()}const a={type:"date",dateFormat:"yyyy-MM-dd",showFooter:!1,color:"info",displayMode:"dialog"};const o=Object.freeze({Map:cityssm.escapeHTML(exports.aliases.map),map:cityssm.escapeHTML(exports.aliases.map.toLowerCase()),Lot:cityssm.escapeHTML(exports.aliases.lot),lot:cityssm.escapeHTML(exports.aliases.lot.toLowerCase()),Lots:cityssm.escapeHTML(exports.aliases.lots),lots:cityssm.escapeHTML(exports.aliases.lots.toLowerCase()),Occupancy:cityssm.escapeHTML(exports.aliases.occupancy),occupancy:cityssm.escapeHTML(exports.aliases.occupancy.toLowerCase()),Occupancies:cityssm.escapeHTML(exports.aliases.occupancies),occupancies:cityssm.escapeHTML(exports.aliases.occupancies.toLowerCase()),Occupant:cityssm.escapeHTML(exports.aliases.occupant),occupant:cityssm.escapeHTML(exports.aliases.occupant.toLowerCase()),Occupants:cityssm.escapeHTML(exports.aliases.occupants),occupants:cityssm.escapeHTML(exports.aliases.occupants.toLowerCase()),ExternalReceiptNumber:cityssm.escapeHTML(exports.aliases.externalReceiptNumber),externalReceiptNumber:cityssm.escapeHTML(exports.aliases.externalReceiptNumber.toLowerCase()),OccupancyStartDate:cityssm.escapeHTML(exports.aliases.occupancyStartDate),occupancyStartDate:cityssm.escapeHTML(exports.aliases.occupancyStartDate.toLowerCase()),WorkOrderOpenDate:cityssm.escapeHTML(exports.aliases.workOrderOpenDate),workOrderOpenDate:cityssm.escapeHTML(exports.aliases.workOrderOpenDate.toLowerCase()),WorkOrderCloseDate:cityssm.escapeHTML(exports.aliases.workOrderCloseDate),workOrderCloseDate:cityssm.escapeHTML(exports.aliases.workOrderCloseDate.toLowerCase())}),c=["red","green","orange","blue","pink","yellow","purple"],r=["bright","light","dark"];const i={urlPrefix:document.querySelector("main").dataset.urlPrefix,apiKey:document.querySelector("main").dataset.apiKey,highlightMap:function(e,t,s){let a,o=t;for(;!(a=e.querySelector("#"+o))&&o.includes("-");)o=o.slice(0,Math.max(0,o.lastIndexOf("-")));if(a){a.style.fill="",a.classList.add("highlight","is-"+s);const e=a.querySelectorAll("path");for(const t of e)t.style.fill=""}},initializeUnlockFieldButtons:function(e){const t=e.querySelectorAll(".is-unlock-field-button");for(const e of t)e.addEventListener("click",s)},initializeDatePickers:function(e){const t=e.querySelectorAll("input[type='date']");for(const s of t){const t=Object.assign({},a);s.required&&(t.showClearButton=!1),s.min&&(t.minDate=cityssm.dateStringToDate(s.min)),s.max&&(t.maxDate=cityssm.dateStringToDate(s.max));const o=exports.bulmaCalendar.attach(s,t)[0];o.on("save",()=>{s.value=o.value(),s.dispatchEvent(new Event("change"))}),o.on("show",()=>{document.querySelector("html").classList.add("is-clipped")}),o.on("hide",()=>{bulmaJS.toggleHtmlClipped()});const c=e.querySelector("#"+o._id),r=c.querySelectorAll(".datepicker-nav button.is-text");for(const e of r)e.classList.add("is-"+a.color),e.classList.remove("is-text");const i=c.querySelector(".datetimepicker-clear-button");i&&(s.required?i.remove():(i.dataset.tooltip="Clear",i.ariaLabel="Clear",i.innerHTML=''));const n=document.querySelector("label[for='"+s.id+"']");n&&(c.querySelector(".datetimepicker-dummy-input").ariaLabel=n.textContent)}},populateAliases:function(e){const t=e.querySelectorAll(".alias");for(const e of t)switch(e.dataset.alias){case"Map":e.textContent=exports.aliases.map;break;case"Lot":e.textContent=exports.aliases.lot;break;case"lot":e.textContent=exports.aliases.lot.toLowerCase();break;case"Occupancy":e.textContent=exports.aliases.occupancy;break;case"occupancy":e.textContent=exports.aliases.occupancy.toLowerCase();break;case"Occupant":e.textContent=exports.aliases.occupant;break;case"occupant":e.textContent=exports.aliases.occupant.toLowerCase();break;case"ExternalReceiptNumber":e.textContent=exports.aliases.externalReceiptNumber}},escapedAliases:o,getRandomColor:function(e){let t=e;return t.length<2&&(t+="a1"),exports.randomColor({seed:t+t,hue:c[t.codePointAt(t.length-1)%c.length],luminosity:r[t.codePointAt(t.length-2)%r.length]})},setUnsavedChanges:function(){t()||(e=!0,cityssm.enableNavBlocker())},clearUnsavedChanges:function(){e=!1,cityssm.disableNavBlocker()},hasUnsavedChanges:t};exports.los=i})(); \ No newline at end of file +"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),(()=>{let e=!1;function t(){return e}function s(e){const t=e.currentTarget.closest(".field").querySelector("input, select");if(t.classList.remove("is-readonly"),"INPUT"===t.tagName)t.readOnly=!1,t.disabled=!1;else{const e=t.querySelectorAll("option");for(const t of e)t.disabled=!1}t.focus()}const a={type:"date",dateFormat:"yyyy-MM-dd",showFooter:!1,color:"info",displayMode:"dialog"};const o=Object.freeze({Map:cityssm.escapeHTML(exports.aliases.map),map:cityssm.escapeHTML(exports.aliases.map.toLowerCase()),Lot:cityssm.escapeHTML(exports.aliases.lot),lot:cityssm.escapeHTML(exports.aliases.lot.toLowerCase()),Lots:cityssm.escapeHTML(exports.aliases.lots),lots:cityssm.escapeHTML(exports.aliases.lots.toLowerCase()),Occupancy:cityssm.escapeHTML(exports.aliases.occupancy),occupancy:cityssm.escapeHTML(exports.aliases.occupancy.toLowerCase()),Occupancies:cityssm.escapeHTML(exports.aliases.occupancies),occupancies:cityssm.escapeHTML(exports.aliases.occupancies.toLowerCase()),Occupant:cityssm.escapeHTML(exports.aliases.occupant),occupant:cityssm.escapeHTML(exports.aliases.occupant.toLowerCase()),Occupants:cityssm.escapeHTML(exports.aliases.occupants),occupants:cityssm.escapeHTML(exports.aliases.occupants.toLowerCase()),ExternalReceiptNumber:cityssm.escapeHTML(exports.aliases.externalReceiptNumber),externalReceiptNumber:cityssm.escapeHTML(exports.aliases.externalReceiptNumber.toLowerCase()),OccupancyStartDate:cityssm.escapeHTML(exports.aliases.occupancyStartDate),occupancyStartDate:cityssm.escapeHTML(exports.aliases.occupancyStartDate.toLowerCase()),WorkOrderOpenDate:cityssm.escapeHTML(exports.aliases.workOrderOpenDate),workOrderOpenDate:cityssm.escapeHTML(exports.aliases.workOrderOpenDate.toLowerCase()),WorkOrderCloseDate:cityssm.escapeHTML(exports.aliases.workOrderCloseDate),workOrderCloseDate:cityssm.escapeHTML(exports.aliases.workOrderCloseDate.toLowerCase())}),c=["red","green","orange","blue","pink","yellow","purple"],r=["bright","light","dark"];const n={urlPrefix:document.querySelector("main").dataset.urlPrefix,apiKey:document.querySelector("main").dataset.apiKey,highlightMap:function(e,t,s){let a,o=t;for(;!(a=e.querySelector("#"+o))&&o.includes("-");)o=o.slice(0,Math.max(0,o.lastIndexOf("-")));if(a){a.style.fill="",a.classList.add("highlight","is-"+s);const e=a.querySelectorAll("path");for(const t of e)t.style.fill=""}},initializeUnlockFieldButtons:function(e){const t=e.querySelectorAll(".is-unlock-field-button");for(const e of t)e.addEventListener("click",s)},initializeDatePickers:function(e){const t=e.querySelectorAll("input[type='date']");for(const s of t){const t=Object.assign({},a);s.required&&(t.showClearButton=!1),s.min&&(t.minDate=cityssm.dateStringToDate(s.min)),s.max&&(t.maxDate=cityssm.dateStringToDate(s.max));const o=exports.bulmaCalendar.attach(s,t)[0];o.on("save",()=>{s.value=o.value(),s.dispatchEvent(new Event("change"))}),o.on("show",()=>{document.querySelector("html").classList.add("is-clipped")}),o.on("hide",()=>{bulmaJS.toggleHtmlClipped()});const c=e.querySelector("#"+o._id),r=c.querySelectorAll(".datepicker-nav button.is-text");for(const e of r)e.classList.add("is-"+a.color),e.classList.remove("is-text");const n=c.querySelector(".datetimepicker-clear-button");n&&(s.required?n.remove():(n.dataset.tooltip="Clear",n.ariaLabel="Clear",n.innerHTML=''));const i=document.querySelector("label[for='"+s.id+"']");i&&(c.querySelector(".datetimepicker-dummy-input").ariaLabel=i.textContent)}},populateAliases:function(e){const t=e.querySelectorAll(".alias");for(const e of t)switch(e.dataset.alias){case"Map":e.textContent=exports.aliases.map;break;case"Lot":e.textContent=exports.aliases.lot;break;case"lot":e.textContent=exports.aliases.lot.toLowerCase();break;case"Occupancy":e.textContent=exports.aliases.occupancy;break;case"occupancy":e.textContent=exports.aliases.occupancy.toLowerCase();break;case"Occupant":e.textContent=exports.aliases.occupant;break;case"occupant":e.textContent=exports.aliases.occupant.toLowerCase();break;case"ExternalReceiptNumber":e.textContent=exports.aliases.externalReceiptNumber}},escapedAliases:o,getRandomColor:function(e){let t=e;return t.length<2&&(t+="a1"),exports.randomColor({seed:t+t,hue:c[t.codePointAt(t.length-1)%c.length],luminosity:r[t.codePointAt(t.length-2)%r.length]})},setUnsavedChanges:function(){t()||(e=!0,cityssm.enableNavBlocker())},clearUnsavedChanges:function(){e=!1,cityssm.disableNavBlocker()},hasUnsavedChanges:t,getMoveUpDownButtonFieldHTML:function(e,t,s=!0){return`
\n
\n \n \n \n
\n
\n \n \n \n
\n
`}};exports.los=n})(); \ No newline at end of file diff --git a/types/globalTypes.d.ts b/types/globalTypes.d.ts index 1a37316c..beefd331 100644 --- a/types/globalTypes.d.ts +++ b/types/globalTypes.d.ts @@ -33,4 +33,5 @@ export interface LOS { setUnsavedChanges: () => void; clearUnsavedChanges: () => void; hasUnsavedChanges: () => boolean; + getMoveUpDownButtonFieldHTML: (upButtonClassNames: string, downButtonClassNames: string, isSmall?: boolean) => string; } diff --git a/types/globalTypes.ts b/types/globalTypes.ts index b891d603..5c885c10 100644 --- a/types/globalTypes.ts +++ b/types/globalTypes.ts @@ -45,4 +45,6 @@ export interface LOS { setUnsavedChanges: () => void; clearUnsavedChanges: () => void; hasUnsavedChanges: () => boolean; + + getMoveUpDownButtonFieldHTML: (upButtonClassNames: string, downButtonClassNames: string, isSmall?: boolean) => string; }