"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); (() => { const sunrise = exports.sunrise; let intermentContainerTypes = exports.intermentContainerTypes; delete exports.intermentContainerTypes; function updateIntermentContainerType(submitEvent) { submitEvent.preventDefault(); cityssm.postJSON(`${sunrise.urlPrefix}/admin/doUpdateIntermentContainerType`, submitEvent.currentTarget, (rawResponseJSON) => { const responseJSON = rawResponseJSON; if (responseJSON.success) { intermentContainerTypes = responseJSON.intermentContainerTypes; bulmaJS.alert({ message: 'Interment Container Type Updated Successfully', contextualColorName: 'success' }); } else { bulmaJS.alert({ title: 'Error Updating Interment Container Type', message: responseJSON.errorMessage ?? '', contextualColorName: 'danger' }); } }); } function deleteIntermentContainerType(clickEvent) { const tableRowElement = clickEvent.currentTarget.closest('tr'); const intermentContainerTypeId = tableRowElement.dataset.intermentContainerTypeId; function doDelete() { cityssm.postJSON(`${sunrise.urlPrefix}/admin/doDeleteIntermentContainerType`, { intermentContainerTypeId }, (rawResponseJSON) => { const responseJSON = rawResponseJSON; if (responseJSON.success) { intermentContainerTypes = responseJSON.intermentContainerTypes; if (intermentContainerTypes.length === 0) { renderIntermentContainerTypes(); } else { tableRowElement.remove(); } bulmaJS.alert({ message: 'Interment Container Type Deleted Successfully', contextualColorName: 'success' }); } else { bulmaJS.alert({ title: 'Error Deleting Interment Container Type', message: responseJSON.errorMessage ?? '', contextualColorName: 'danger' }); } }); } bulmaJS.confirm({ title: 'Delete Interment Container Type', message: `Are you sure you want to delete this type?
Note that no contracts will be removed.`, messageIsHtml: true, contextualColorName: 'warning', okButton: { text: 'Yes, Delete Type', callbackFunction: doDelete } }); } function moveIntermentContainerType(clickEvent) { const buttonElement = clickEvent.currentTarget; const tableRowElement = buttonElement.closest('tr'); const intermentContainerTypeId = tableRowElement.dataset.intermentContainerTypeId; cityssm.postJSON(`${sunrise.urlPrefix}/admin/${buttonElement.dataset.direction === 'up' ? 'doMoveIntermentContainerTypeUp' : 'doMoveIntermentContainerTypeDown'}`, { intermentContainerTypeId, moveToEnd: clickEvent.shiftKey ? '1' : '0' }, (rawResponseJSON) => { const responseJSON = rawResponseJSON; if (responseJSON.success) { intermentContainerTypes = responseJSON.intermentContainerTypes; renderIntermentContainerTypes(); } else { bulmaJS.alert({ title: 'Error Moving Interment Container Type', message: responseJSON.errorMessage ?? '', contextualColorName: 'danger' }); } }); } function renderIntermentContainerTypes() { const containerElement = document.querySelector('#container--intermentContainerTypes'); if (intermentContainerTypes.length === 0) { containerElement.innerHTML = `

There are no active interment container types.

`; return; } containerElement.innerHTML = ''; for (const intermentContainerType of intermentContainerTypes) { const tableRowElement = document.createElement('tr'); tableRowElement.dataset.intermentContainerTypeId = intermentContainerType.intermentContainerTypeId.toString(); const formId = `form--updateIntermentContainerType_${intermentContainerType.intermentContainerTypeId.toString()}`; // eslint-disable-next-line no-unsanitized/property tableRowElement.innerHTML = `
${sunrise.getMoveUpDownButtonFieldHTML('button--moveIntermentContainerTypeUp', 'button--moveIntermentContainerTypeDown', false)}
`; tableRowElement .querySelector('form') ?.addEventListener('submit', updateIntermentContainerType); tableRowElement.querySelector('.button--moveIntermentContainerTypeUp').addEventListener('click', moveIntermentContainerType); tableRowElement.querySelector('.button--moveIntermentContainerTypeDown').addEventListener('click', moveIntermentContainerType); tableRowElement .querySelector('.button--deleteIntermentContainerType') ?.addEventListener('click', deleteIntermentContainerType); containerElement.append(tableRowElement); } } ; document.querySelector('#form--addIntermentContainerType').addEventListener('submit', (submitEvent) => { submitEvent.preventDefault(); const formElement = submitEvent.currentTarget; cityssm.postJSON(`${sunrise.urlPrefix}/admin/doAddIntermentContainerType`, formElement, (rawResponseJSON) => { const responseJSON = rawResponseJSON; if (responseJSON.success) { intermentContainerTypes = responseJSON.intermentContainerTypes; renderIntermentContainerTypes(); formElement.reset(); formElement.querySelector('input')?.focus(); } else { bulmaJS.alert({ title: 'Error Adding Interment Container Type', message: responseJSON.errorMessage ?? '', contextualColorName: 'danger' }); } }); }); renderIntermentContainerTypes(); })();