linting and polish

pull/11/head
Dan Gowans 2025-04-02 14:02:48 -04:00
parent 01f44f0727
commit 1f19359195
7 changed files with 67 additions and 21 deletions

View File

@ -1,7 +1,7 @@
import type { PoolConnection } from 'better-sqlite-pool';
import type { BurialSite } from '../types/recordTypes.js';
export interface GetBurialSitesFilters {
burialSiteNameSearchType?: '' | 'startsWith' | 'endsWith';
burialSiteNameSearchType?: '' | 'endsWith' | 'startsWith';
burialSiteName?: string;
cemeteryId?: number | string;
burialSiteTypeId?: number | string;
@ -12,7 +12,7 @@ export interface GetBurialSitesFilters {
export interface GetBurialSitesOptions {
/** -1 for no limit */
limit: number;
offset: string | number;
offset: number | string;
includeContractCount?: boolean;
}
export default function getBurialSites(filters: GetBurialSitesFilters, options: GetBurialSitesOptions, connectedDatabase?: PoolConnection): Promise<{

View File

@ -1,13 +1,14 @@
import { dateToInteger } from '@cityssm/utils-datetime'
import type { PoolConnection } from 'better-sqlite-pool'
import { dateToInteger } from '@cityssm/utils-datetime'
import { getBurialSiteNameWhereClause } from '../helpers/functions.sqlFilters.js'
import type { BurialSite } from '../types/recordTypes.js'
import { acquireConnection } from './pool.js'
export interface GetBurialSitesFilters {
burialSiteNameSearchType?: '' | 'startsWith' | 'endsWith'
burialSiteNameSearchType?: '' | 'endsWith' | 'startsWith'
burialSiteName?: string
cemeteryId?: number | string
burialSiteTypeId?: number | string
@ -19,7 +20,7 @@ export interface GetBurialSitesFilters {
export interface GetBurialSitesOptions {
/** -1 for no limit */
limit: number
offset: string | number
offset: number | string
includeContractCount?: boolean
}

View File

@ -3,13 +3,20 @@ import { getCemeterySVGs } from '../../helpers/images.helpers.js';
export default async function handler(_request, response) {
const cemetery = {
cemeteryCity: getConfigProperty('settings.cityDefault'),
cemeteryProvince: getConfigProperty('settings.provinceDefault')
cemeteryProvince: getConfigProperty('settings.provinceDefault'),
cemeteryAddress1: '',
cemeteryAddress2: '',
cemeteryDescription: '',
cemeteryKey: '',
cemeteryName: '',
cemeteryPhoneNumber: '',
cemeteryPostalCode: ''
};
const cemeterySVGs = await getCemeterySVGs();
response.render('cemetery-edit', {
headTitle: "Create a Cemetery",
headTitle: 'Create a Cemetery',
cemetery,
cemeterySVGs,
isCreate: true,
isCreate: true
});
}

View File

@ -10,16 +10,24 @@ export default async function handler(
): Promise<void> {
const cemetery: Cemetery = {
cemeteryCity: getConfigProperty('settings.cityDefault'),
cemeteryProvince: getConfigProperty('settings.provinceDefault')
cemeteryProvince: getConfigProperty('settings.provinceDefault'),
cemeteryAddress1: '',
cemeteryAddress2: '',
cemeteryDescription: '',
cemeteryKey: '',
cemeteryName: '',
cemeteryPhoneNumber: '',
cemeteryPostalCode: ''
}
const cemeterySVGs = await getCemeterySVGs()
response.render('cemetery-edit', {
headTitle: "Create a Cemetery",
headTitle: 'Create a Cemetery',
cemetery,
cemeterySVGs,
isCreate: true,
isCreate: true
})
}

View File

@ -34,7 +34,7 @@
<input id="searchFilter--offset" name="offset" type="hidden" value="0" />
<div class="columns">
<div class="column">
<label class="label" for="searchFilter--burialSiteName">Burial Site</label>
<label class="label" for="searchFilter--burialSiteName">Burial Site Name</label>
<div class="field has-addons">
<div class="control has-icons-left">
<div class="select">

View File

@ -90,20 +90,31 @@
<div class="panel-block is-block">
<div class="field">
<label class="label" for="cemetery--cemeteryName">Cemetery Name</label>
<div class="control">
<div class="control has-icons-right">
<input class="input" id="cemetery--cemeteryName" name="cemeteryName" type="text"
value="<%= cemetery.cemeteryName %>" maxlength="200" required
accesskey="f"
<%= (isCreate ? " autofocus" : "") %> />
<span class="icon is-small is-right">
<i class="fas fa-asterisk" aria-hidden="true"></i>
</span>
</div>
</div>
<%
const cemeteryKeyIsRequired = configFunctions.getConfigProperty('settings.burialSites.burialSiteNameSegments.includeCemeteryKey');
%>
<div class="field">
<label class="label" for="cemetery--cemeteryKey">Cemetery Key</label>
<div class="control">
<div class="control has-icons-right">
<input class="input" id="cemetery--cemeteryKey" name="cemeteryKey" type="text"
value="<%= cemetery.cemeteryKey %>" maxlength="20"
<%= configFunctions.getConfigProperty('settings.burialSites.burialSiteNameSegments.includeCemeteryKey') ? ' required' : '' %> />
<% if (configFunctions.getConfigProperty('settings.burialSites.burialSiteNameSegments.includeCemeteryKey')) { %>
<%= cemeteryKeyIsRequired ? ' required' : '' %> />
<% if (cemeteryKeyIsRequired) { %>
<span class="icon is-small is-right">
<i class="fas fa-asterisk" aria-hidden="true"></i>
</span>
<% } %>
<% if (cemeteryKeyIsRequired) { %>
<p class="help">
The cemetery key is prepended to the burial site names.
</p>

View File

@ -17,10 +17,28 @@
</ul>
</nav>
<h1 class="title is-1">
Work Order
#<%= workOrder.workOrderNumber || "(No Number)" %>
</h1>
<div class="level is-mobile">
<div class="level-left">
<div class="level-item">
<h1 class="title is-1">
Work Order
#<%= workOrder.workOrderNumber || "(No Number)" %>
</h1>
</div>
</div>
<% if (workOrder.workOrderCloseDate) { %>
<div class="level-right">
<div class="level-item">
<span class="tag is-info is-medium">
<span class="icon is-small">
<i class="fas fa-stop" aria-hidden="true"></i>
</span>
<span>Closed</span>
</span>
</div>
</div>
<% } %>
</div>
<div class="columns is-vcentered is-fixed-bottom has-background-white has-shadow is-hidden-print">
<div class="column">
@ -65,7 +83,8 @@
<% if (user.userProperties.canUpdate) { %>
<% if (workOrder.workOrderCloseDate) { %>
<button class="button is-warning" id="button--reopenWorkOrder" data-work-order-id="<%= workOrder.workOrderId %>" type="button">
Reopen Work Order
<span class="icon"><i class="fas fa-undo" aria-hidden="true"></i></span>
<span>Reopen Work Order</span>
</button>
<% } else { %>
<a class="button is-primary"