"use strict"; // eslint-disable-next-line @eslint-community/eslint-comments/disable-enable-pair /* eslint-disable unicorn/prefer-module */ Object.defineProperty(exports, "__esModule", { value: true }); let lotOccupantTypes = exports.lotOccupantTypes; delete exports.lotOccupantTypes; function updateLotOccupantType(submitEvent) { submitEvent.preventDefault(); cityssm.postJSON(`${los.urlPrefix}/admin/doUpdateLotOccupantType`, submitEvent.currentTarget, (rawResponseJSON) => { const responseJSON = rawResponseJSON; if (responseJSON.success) { lotOccupantTypes = responseJSON.lotOccupantTypes; bulmaJS.alert({ message: `${los.escapedAliases.Lot} ${los.escapedAliases.Occupant} Type Updated Successfully`, contextualColorName: 'success' }); } else { bulmaJS.alert({ title: `Error Updating ${los.escapedAliases.Lot} ${los.escapedAliases.Occupant} Type`, message: responseJSON.errorMessage ?? '', contextualColorName: 'danger' }); } }); } function deleteLotOccupantType(clickEvent) { const tableRowElement = clickEvent.currentTarget.closest('tr'); const lotOccupantTypeId = tableRowElement.dataset.lotOccupantTypeId; function doDelete() { cityssm.postJSON(`${los.urlPrefix}/admin/doDeleteLotOccupantType`, { lotOccupantTypeId }, (rawResponseJSON) => { const responseJSON = rawResponseJSON; if (responseJSON.success) { lotOccupantTypes = responseJSON.lotOccupantTypes; if (lotOccupantTypes.length === 0) { renderLotOccupantTypes(); } else { tableRowElement.remove(); } bulmaJS.alert({ message: `${los.escapedAliases.Lot} ${los.escapedAliases.Occupant} Type Deleted Successfully`, contextualColorName: 'success' }); } else { bulmaJS.alert({ title: `Error Deleting ${los.escapedAliases.Lot} ${los.escapedAliases.Occupant} Type`, message: responseJSON.errorMessage ?? '', contextualColorName: 'danger' }); } }); } bulmaJS.confirm({ title: `Delete ${los.escapedAliases.Lot} ${los.escapedAliases.Occupant} Type`, message: `Are you sure you want to delete this ${los.escapedAliases.lot} ${los.escapedAliases.occupant} type?
Note that no ${los.escapedAliases.lot} ${los.escapedAliases.occupants} will be removed.`, messageIsHtml: true, contextualColorName: 'warning', okButton: { text: `Yes, Delete ${los.escapedAliases.Lot} ${los.escapedAliases.Occupant} Type`, callbackFunction: doDelete } }); } function moveLotOccupantType(clickEvent) { const buttonElement = clickEvent.currentTarget; const tableRowElement = buttonElement.closest('tr'); const lotOccupantTypeId = tableRowElement.dataset.lotOccupantTypeId; cityssm.postJSON(`${los.urlPrefix}/admin/${buttonElement.dataset.direction === 'up' ? 'doMoveLotOccupantTypeUp' : 'doMoveLotOccupantTypeDown'}`, { lotOccupantTypeId, moveToEnd: clickEvent.shiftKey ? '1' : '0' }, (rawResponseJSON) => { const responseJSON = rawResponseJSON; if (responseJSON.success) { lotOccupantTypes = responseJSON.lotOccupantTypes; renderLotOccupantTypes(); } else { bulmaJS.alert({ title: `Error Moving ${los.escapedAliases.Lot} ${los.escapedAliases.Occupant} Type`, message: responseJSON.errorMessage ?? '', contextualColorName: 'danger' }); } }); } function renderLotOccupantTypes() { const containerElement = document.querySelector('#container--lotOccupantTypes'); if (lotOccupantTypes.length === 0) { // eslint-disable-next-line no-unsanitized/property containerElement.innerHTML = `

There are no active ${los.escapedAliases.lot} ${los.escapedAliases.occupant} types.

`; return; } containerElement.innerHTML = ''; for (const lotOccupantType of lotOccupantTypes) { const tableRowElement = document.createElement('tr'); tableRowElement.dataset.lotOccupantTypeId = lotOccupantType.lotOccupantTypeId.toString(); const formId = `form--lotOccupantType-${lotOccupantType.lotOccupantTypeId.toString()}`; // eslint-disable-next-line no-unsanitized/property tableRowElement.innerHTML = `
fa-
${los.getMoveUpDownButtonFieldHTML('button--moveLotOccupantTypeUp', 'button--moveLotOccupantTypeDown', false)}
`; const fontAwesomeInputElement = tableRowElement.querySelector("input[name='fontAwesomeIconClass']"); fontAwesomeInputElement.addEventListener('keyup', refreshFontAwesomeIcon); fontAwesomeInputElement.addEventListener('change', refreshFontAwesomeIcon); tableRowElement .querySelector('form') ?.addEventListener('submit', updateLotOccupantType); tableRowElement.querySelector('.button--moveLotOccupantTypeUp').addEventListener('click', moveLotOccupantType); tableRowElement.querySelector('.button--moveLotOccupantTypeDown').addEventListener('click', moveLotOccupantType); tableRowElement .querySelector('.button--deleteLotOccupantType') ?.addEventListener('click', deleteLotOccupantType); containerElement.append(tableRowElement); } } ; document.querySelector('#form--addLotOccupantType').addEventListener('submit', (submitEvent) => { submitEvent.preventDefault(); const formElement = submitEvent.currentTarget; cityssm.postJSON(`${los.urlPrefix}/admin/doAddLotOccupantType`, formElement, (rawResponseJSON) => { const responseJSON = rawResponseJSON; if (responseJSON.success) { lotOccupantTypes = responseJSON.lotOccupantTypes; renderLotOccupantTypes(); formElement.reset(); formElement.querySelector('input')?.focus(); } else { bulmaJS.alert({ title: `Error Adding ${los.escapedAliases.Lot} ${los.escapedAliases.Occupant} Type`, message: responseJSON.errorMessage ?? '', contextualColorName: 'danger' }); } }); }); renderLotOccupantTypes();