deepsource-autofix-76c6eb20
Dan Gowans 2023-01-24 14:45:58 -05:00
parent 6a6081635d
commit c88e4912f8
36 changed files with 259 additions and 259 deletions

View File

@ -8,12 +8,12 @@ export async function getLotStatusSummary(filters) {
sqlParameters.push(filters.mapId);
}
const lotStatuses = database
.prepare('select s.lotStatusId, s.lotStatus, count(l.lotId) as lotCount' +
' from Lots l' +
' left join LotStatuses s on l.lotStatusId = s.lotStatusId' +
sqlWhereClause +
' group by s.lotStatusId, s.lotStatus, s.orderNumber' +
' order by s.orderNumber')
.prepare(`select s.lotStatusId, s.lotStatus, count(l.lotId) as lotCount
from Lots l
left join LotStatuses s on l.lotStatusId = s.lotStatusId
${sqlWhereClause}
group by s.lotStatusId, s.lotStatus, s.orderNumber
order by s.orderNumber`)
.all(sqlParameters);
database.release();
return lotStatuses;

View File

@ -25,12 +25,12 @@ export async function getLotStatusSummary(
const lotStatuses: LotStatusSummary[] = database
.prepare(
'select s.lotStatusId, s.lotStatus, count(l.lotId) as lotCount' +
' from Lots l' +
' left join LotStatuses s on l.lotStatusId = s.lotStatusId' +
sqlWhereClause +
' group by s.lotStatusId, s.lotStatus, s.orderNumber' +
' order by s.orderNumber'
`select s.lotStatusId, s.lotStatus, count(l.lotId) as lotCount
from Lots l
left join LotStatuses s on l.lotStatusId = s.lotStatusId
${sqlWhereClause}
group by s.lotStatusId, s.lotStatus, s.orderNumber
order by s.orderNumber`
)
.all(sqlParameters)

View File

@ -8,12 +8,12 @@ export async function getLotTypeSummary(filters) {
sqlParameters.push(filters.mapId);
}
const lotTypes = database
.prepare('select t.lotTypeId, t.lotType, count(l.lotId) as lotCount' +
' from Lots l' +
' left join LotTypes t on l.lotTypeId = t.lotTypeId' +
sqlWhereClause +
' group by t.lotTypeId, t.lotType, t.orderNumber' +
' order by t.orderNumber')
.prepare(`select t.lotTypeId, t.lotType, count(l.lotId) as lotCount
from Lots l
left join LotTypes t on l.lotTypeId = t.lotTypeId
${sqlWhereClause}
group by t.lotTypeId, t.lotType, t.orderNumber
order by t.orderNumber`)
.all(sqlParameters);
database.release();
return lotTypes;

View File

@ -25,12 +25,12 @@ export async function getLotTypeSummary(
const lotTypes: LotTypeSummary[] = database
.prepare(
'select t.lotTypeId, t.lotType, count(l.lotId) as lotCount' +
' from Lots l' +
' left join LotTypes t on l.lotTypeId = t.lotTypeId' +
sqlWhereClause +
' group by t.lotTypeId, t.lotType, t.orderNumber' +
' order by t.orderNumber'
`select t.lotTypeId, t.lotType, count(l.lotId) as lotCount
from Lots l
left join LotTypes t on l.lotTypeId = t.lotTypeId
${sqlWhereClause}
group by t.lotTypeId, t.lotType, t.orderNumber
order by t.orderNumber`
)
.all(sqlParameters)

View File

@ -51,8 +51,8 @@ export async function getLots(filters, options, connectedDatabase) {
left join (
select lotId, count(lotOccupancyId) as lotOccupancyCount from LotOccupancies
where recordDelete_timeMillis is null
and occupancyStartDate <= ${currentDate}
and (occupancyEndDate is null or occupancyEndDate >= ${currentDate})
and occupancyStartDate <= ${currentDate.toString()}
and (occupancyEndDate is null or occupancyEndDate >= ${currentDate.toString()})
group by lotId
) o on l.lotId = o.lotId
${sqlWhereClause}`)
@ -82,7 +82,9 @@ export async function getLots(filters, options, connectedDatabase) {
') o on l.lotId = o.lotId') +
sqlWhereClause +
' order by userFn_lotNameSortName(l.lotName), l.lotId' +
(options.limit === -1 ? '' : ` limit ${options.limit} offset ${options.offset}`))
(options.limit === -1
? ''
: ` limit ${options.limit.toString()} offset ${options.offset.toString()}`))
.all(sqlParameters);
if (options.limit === -1) {
count = lots.length;

View File

@ -97,8 +97,8 @@ export async function getLots(
left join (
select lotId, count(lotOccupancyId) as lotOccupancyCount from LotOccupancies
where recordDelete_timeMillis is null
and occupancyStartDate <= ${currentDate}
and (occupancyEndDate is null or occupancyEndDate >= ${currentDate})
and occupancyStartDate <= ${currentDate.toString()}
and (occupancyEndDate is null or occupancyEndDate >= ${currentDate.toString()})
group by lotId
) o on l.lotId = o.lotId
${sqlWhereClause}`
@ -137,7 +137,9 @@ export async function getLots(
') o on l.lotId = o.lotId') +
sqlWhereClause +
' order by userFn_lotNameSortName(l.lotName), l.lotId' +
(options.limit === -1 ? '' : ` limit ${options.limit} offset ${options.offset}`)
(options.limit === -1
? ''
: ` limit ${options.limit.toString()} offset ${options.offset.toString()}`)
)
.all(sqlParameters)

View File

@ -9,9 +9,9 @@ export async function getNextWorkOrderNumber(connectedDatabase) {
return regex.test(workOrderNumber) ? 1 : 0;
});
const workOrderNumberRecord = database
.prepare('select workOrderNumber from WorkOrders' +
' where userFn_matchesWorkOrderNumberSyntax(workOrderNumber) = 1' +
" order by cast(substr(workOrderNumber, instr(workOrderNumber, '-') + 1) as integer) desc")
.prepare(`select workOrderNumber from WorkOrders
where userFn_matchesWorkOrderNumberSyntax(workOrderNumber) = 1
order by cast(substr(workOrderNumber, instr(workOrderNumber, '-') + 1) as integer) desc`)
.get();
if (connectedDatabase === undefined) {
database.release();

View File

@ -24,9 +24,9 @@ export async function getNextWorkOrderNumber(
const workOrderNumberRecord = database
.prepare(
'select workOrderNumber from WorkOrders' +
' where userFn_matchesWorkOrderNumberSyntax(workOrderNumber) = 1' +
" order by cast(substr(workOrderNumber, instr(workOrderNumber, '-') + 1) as integer) desc"
`select workOrderNumber from WorkOrders
where userFn_matchesWorkOrderNumberSyntax(workOrderNumber) = 1
order by cast(substr(workOrderNumber, instr(workOrderNumber, '-') + 1) as integer) desc`
)
.get()

View File

@ -3,7 +3,7 @@ import { updateRecordOrderNumber } from './updateRecordOrderNumber.js';
export async function getOccupancyTypeFields(occupancyTypeId, connectedDatabase) {
const database = connectedDatabase ?? (await acquireConnection());
const sqlParameters = [];
if (occupancyTypeId) {
if ((occupancyTypeId ?? -1) !== -1) {
sqlParameters.push(occupancyTypeId);
}
const occupancyTypeFields = database
@ -13,9 +13,9 @@ export async function getOccupancyTypeFields(occupancyTypeId, connectedDatabase)
' orderNumber' +
' from OccupancyTypeFields' +
' where recordDelete_timeMillis is null' +
(occupancyTypeId
? ' and occupancyTypeId = ?'
: ' and occupancyTypeId is null') +
((occupancyTypeId ?? -1) === -1
? ' and occupancyTypeId is null'
: ' and occupancyTypeId = ?') +
' order by orderNumber, occupancyTypeField')
.all(sqlParameters);
let expectedOrderNumber = 0;

View File

@ -12,7 +12,7 @@ export async function getOccupancyTypeFields(
const sqlParameters: unknown[] = []
if (occupancyTypeId) {
if ((occupancyTypeId ?? -1) !== -1) {
sqlParameters.push(occupancyTypeId)
}
@ -24,9 +24,9 @@ export async function getOccupancyTypeFields(
' orderNumber' +
' from OccupancyTypeFields' +
' where recordDelete_timeMillis is null' +
(occupancyTypeId
? ' and occupancyTypeId = ?'
: ' and occupancyTypeId is null') +
((occupancyTypeId ?? -1) === -1
? ' and occupancyTypeId is null'
: ' and occupancyTypeId = ?') +
' order by orderNumber, occupancyTypeField'
)
.all(sqlParameters)

View File

@ -1,4 +1,4 @@
import sqlite from 'better-sqlite3'
import type sqlite from 'better-sqlite3'
import { acquireConnection } from './pool.js'
import { clearCacheByTableName } from '../functions.cache.js'

View File

@ -1,2 +1,2 @@
import { PoolConnection } from 'better-sqlite-pool';
import { type PoolConnection } from 'better-sqlite-pool';
export declare function acquireConnection(): Promise<PoolConnection>;

View File

@ -1,4 +1,4 @@
import { Pool, PoolConnection } from 'better-sqlite-pool'
import { Pool, type PoolConnection } from 'better-sqlite-pool'
import { lotOccupancyDB as databasePath } from '../../data/databasePaths.js'

View File

@ -132,7 +132,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
'</div>') +
('<div class="column has-text-centered">' +
(fee.taxPercentage
? fee.taxPercentage + '%'
? fee.taxPercentage.toString() + '%'
: '$' + fee.taxAmount.toFixed(2)) +
'<br /><small>Tax</small>' +
'</div>') +

View File

@ -163,7 +163,7 @@ declare const bulmaJS: BulmaJS
'</div>') +
('<div class="column has-text-centered">' +
(fee.taxPercentage
? fee.taxPercentage + '%'
? fee.taxPercentage.toString() + '%'
: '$' + fee.taxAmount!.toFixed(2)) +
'<br /><small>Tax</small>' +
'</div>') +

View File

@ -432,7 +432,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
('<div class="level-left">' +
'<div class="level-item">' +
('<h2 class="title is-4">(All ' +
cityssm.escapeHTML(exports.aliases.occupancy) +
los.escapedAliases.Occupancy +
' Types)</h2>') +
'</div>' +
'</div>') +

View File

@ -770,7 +770,7 @@ declare const bulmaJS: BulmaJS
('<div class="level-left">' +
'<div class="level-item">' +
('<h2 class="title is-4">(All ' +
cityssm.escapeHTML(exports.aliases.occupancy) +
los.escapedAliases.Occupancy +
' Types)</h2>') +
'</div>' +
'</div>') +

View File

@ -86,6 +86,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
cityssm.postJSON(los.urlPrefix + '/lots/doGetLotTypeFields', {
lotTypeId: lotTypeIdElement.value
}, (responseJSON) => {
var _a;
if (responseJSON.lotTypeFields.length === 0) {
lotFieldsContainerElement.innerHTML = `<div class="message is-info">
<p class="message-body">There are no additional fields for this ${los.escapedAliases.lot} type.</p>
@ -95,8 +96,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
lotFieldsContainerElement.innerHTML = '';
let lotTypeFieldIds = '';
for (const lotTypeField of responseJSON.lotTypeFields) {
lotTypeFieldIds += ',' + lotTypeField.lotTypeFieldId;
const fieldName = 'lotFieldValue_' + lotTypeField.lotTypeFieldId;
lotTypeFieldIds += ',' + lotTypeField.lotTypeFieldId.toString();
const fieldName = 'lotFieldValue_' + lotTypeField.lotTypeFieldId.toString();
const fieldId = 'lot--' + fieldName;
const fieldElement = document.createElement('div');
fieldElement.className = 'field';
@ -112,7 +113,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
inputElement.required = lotTypeField.isRequired;
inputElement.minLength = lotTypeField.minimumLength;
inputElement.maxLength = lotTypeField.maximumLength;
if (lotTypeField.pattern && lotTypeField.pattern !== '') {
if (((_a = lotTypeField.pattern) !== null && _a !== void 0 ? _a : '') !== '') {
inputElement.pattern = lotTypeField.pattern;
}
fieldElement.querySelector('.control').append(inputElement);

View File

@ -141,9 +141,10 @@ declare const bulmaJS: BulmaJS
let lotTypeFieldIds = ''
for (const lotTypeField of responseJSON.lotTypeFields) {
lotTypeFieldIds += ',' + lotTypeField.lotTypeFieldId
lotTypeFieldIds += ',' + lotTypeField.lotTypeFieldId.toString()
const fieldName = 'lotFieldValue_' + lotTypeField.lotTypeFieldId
const fieldName =
'lotFieldValue_' + lotTypeField.lotTypeFieldId.toString()
const fieldId = 'lot--' + fieldName
@ -170,8 +171,8 @@ declare const bulmaJS: BulmaJS
inputElement.minLength = lotTypeField.minimumLength as number
inputElement.maxLength = lotTypeField.maximumLength as number
if (lotTypeField.pattern && lotTypeField.pattern !== '') {
inputElement.pattern = lotTypeField.pattern
if ((lotTypeField.pattern ?? '') !== '') {
inputElement.pattern = lotTypeField.pattern!
}
fieldElement.querySelector('.control')!.append(inputElement)
@ -417,10 +418,10 @@ declare const bulmaJS: BulmaJS
cityssm.escapeHTML(lotComment.recordCreate_userName ?? '') +
'</td>' +
'<td>' +
lotComment.lotCommentDateString +
lotComment.lotCommentDateString! +
(lotComment.lotCommentTime === 0
? ''
: ' ' + lotComment.lotCommentTimeString) +
: ' ' + lotComment.lotCommentTimeString!) +
'</td>' +
'<td>' +
cityssm.escapeHTML(lotComment.lotComment ?? '') +

View File

@ -8,7 +8,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
const limit = Number.parseInt(document.querySelector('#searchFilter--limit').value, 10);
const offsetElement = document.querySelector('#searchFilter--offset');
function renderLotOccupancies(responseJSON) {
var _a, _b, _c, _d, _e, _f, _g;
var _a, _b, _c, _d, _e, _f, _g, _h;
if (responseJSON.lotOccupancies.length === 0) {
searchResultsContainerElement.innerHTML = `<div class="message is-info">
<p class="message-body">
@ -62,20 +62,20 @@ Object.defineProperty(exports, "__esModule", { value: true });
'</a>' +
'</td>') +
('<td>' +
(lotOccupancy.lotName
? '<a class="has-tooltip-right" data-tooltip="' +
cityssm.escapeHTML((_d = lotOccupancy.lotType) !== null && _d !== void 0 ? _d : '') +
(((_d = lotOccupancy.lotId) !== null && _d !== void 0 ? _d : -1) === -1
? '<span class="has-text-grey">(No ' +
los.escapedAliases.Lot +
')</span>'
: '<a class="has-tooltip-right" data-tooltip="' +
cityssm.escapeHTML((_e = lotOccupancy.lotType) !== null && _e !== void 0 ? _e : '') +
'" href="' +
los.getLotURL(lotOccupancy.lotId) +
'">' +
cityssm.escapeHTML(lotOccupancy.lotName) +
'</a>'
: '<span class="has-text-grey">(No ' +
los.escapedAliases.Lot +
')</span>') +
'</a>') +
'<br />' +
('<span class="is-size-7">' +
cityssm.escapeHTML((_e = lotOccupancy.mapName) !== null && _e !== void 0 ? _e : '') +
cityssm.escapeHTML((_f = lotOccupancy.mapName) !== null && _f !== void 0 ? _f : '') +
'</span>') +
'</td>') +
('<td>' + lotOccupancy.occupancyStartDateString + '</td>') +
@ -115,10 +115,10 @@ Object.defineProperty(exports, "__esModule", { value: true });
.querySelector('table')
.append(resultsTbodyElement);
searchResultsContainerElement.insertAdjacentHTML('beforeend', los.getSearchResultsPagerHTML(limit, responseJSON.offset, responseJSON.count));
(_f = searchResultsContainerElement
.querySelector("button[data-page='previous']")) === null || _f === void 0 ? void 0 : _f.addEventListener('click', previousAndGetLotOccupancies);
(_g = searchResultsContainerElement
.querySelector("button[data-page='next']")) === null || _g === void 0 ? void 0 : _g.addEventListener('click', nextAndGetLotOccupancies);
.querySelector("button[data-page='previous']")) === null || _g === void 0 ? void 0 : _g.addEventListener('click', previousAndGetLotOccupancies);
(_h = searchResultsContainerElement
.querySelector("button[data-page='next']")) === null || _h === void 0 ? void 0 : _h.addEventListener('click', nextAndGetLotOccupancies);
}
function getLotOccupancies() {
searchResultsContainerElement.innerHTML = los.getLoadingParagraphHTML(`Loading ${los.escapedAliases.Occupancies}...`);
@ -142,7 +142,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
}
searchFilterFormElement.addEventListener('submit', (formEvent) => {
formEvent.preventDefault();
resetOffsetAndGetLotOccupancies();
});
getLotOccupancies();
})();

View File

@ -96,17 +96,17 @@ declare const cityssm: cityssmGlobal
'</a>' +
'</td>') +
('<td>' +
(lotOccupancy.lotName
? '<a class="has-tooltip-right" data-tooltip="' +
((lotOccupancy.lotId ?? -1) === -1
? '<span class="has-text-grey">(No ' +
los.escapedAliases.Lot +
')</span>'
: '<a class="has-tooltip-right" data-tooltip="' +
cityssm.escapeHTML(lotOccupancy.lotType ?? '') +
'" href="' +
los.getLotURL(lotOccupancy.lotId) +
'">' +
cityssm.escapeHTML(lotOccupancy.lotName) +
'</a>'
: '<span class="has-text-grey">(No ' +
los.escapedAliases.Lot +
')</span>') +
cityssm.escapeHTML(lotOccupancy.lotName!) +
'</a>') +
'<br />' +
('<span class="is-size-7">' +
cityssm.escapeHTML(lotOccupancy.mapName ?? '') +
@ -211,7 +211,6 @@ declare const cityssm: cityssmGlobal
searchFilterFormElement.addEventListener('submit', (formEvent) => {
formEvent.preventDefault()
resetOffsetAndGetLotOccupancies()
})
getLotOccupancies()

View File

@ -85,7 +85,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
}
searchFilterFormElement.addEventListener('submit', (formEvent) => {
formEvent.preventDefault();
resetOffsetAndGetLots();
});
getLots();
})();

View File

@ -146,7 +146,6 @@ declare const cityssm: cityssmGlobal
searchFilterFormElement.addEventListener('submit', (formEvent) => {
formEvent.preventDefault()
resetOffsetAndGetLots()
})
getLots()

View File

@ -7,7 +7,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
const searchFilterElement = document.querySelector('#searchFilter--map');
const searchResultsContainerElement = document.querySelector('#container--searchResults');
function renderResults() {
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q;
searchResultsContainerElement.innerHTML = los.getLoadingParagraphHTML(`Loading ${los.escapedAliases.Maps}...`);
let searchResultCount = 0;
const searchResultsTbodyElement = document.createElement('tbody');
@ -42,28 +42,28 @@ Object.defineProperty(exports, "__esModule", { value: true });
('<td>' +
(((_f = map.mapAddress1) !== null && _f !== void 0 ? _f : '') === ''
? ''
: cityssm.escapeHTML(map.mapAddress1) + '<br />') +
(((_g = map.mapAddress2) !== null && _g !== void 0 ? _g : '') === ''
: cityssm.escapeHTML((_g = map.mapAddress1) !== null && _g !== void 0 ? _g : '') + '<br />') +
(((_h = map.mapAddress2) !== null && _h !== void 0 ? _h : '') === ''
? ''
: cityssm.escapeHTML(map.mapAddress2) + '<br />') +
: cityssm.escapeHTML((_j = map.mapAddress2) !== null && _j !== void 0 ? _j : '') + '<br />') +
(map.mapCity || map.mapProvince
? cityssm.escapeHTML((_h = map.mapCity) !== null && _h !== void 0 ? _h : '') +
? cityssm.escapeHTML((_k = map.mapCity) !== null && _k !== void 0 ? _k : '') +
', ' +
cityssm.escapeHTML((_j = map.mapProvince) !== null && _j !== void 0 ? _j : '') +
cityssm.escapeHTML((_l = map.mapProvince) !== null && _l !== void 0 ? _l : '') +
'<br />'
: '') +
(((_k = map.mapPostalCode) !== null && _k !== void 0 ? _k : '') === ''
(((_m = map.mapPostalCode) !== null && _m !== void 0 ? _m : '') === ''
? ''
: cityssm.escapeHTML(map.mapPostalCode)) +
: cityssm.escapeHTML((_o = map.mapPostalCode) !== null && _o !== void 0 ? _o : '')) +
'</td>') +
('<td>' + cityssm.escapeHTML((_l = map.mapPhoneNumber) !== null && _l !== void 0 ? _l : '') + '</td>') +
('<td>' + cityssm.escapeHTML((_p = map.mapPhoneNumber) !== null && _p !== void 0 ? _p : '') + '</td>') +
'<td class="has-text-centered">' +
(map.mapLatitude && map.mapLongitude
? '<span data-tooltip="Has Geographic Coordinates"><i class="fas fa-map-marker-alt" aria-label="Has Geographic Coordinates"></i></span>'
: '') +
'</td>' +
'<td class="has-text-centered">' +
(((_m = map.mapSVG) !== null && _m !== void 0 ? _m : '') === ''
(((_q = map.mapSVG) !== null && _q !== void 0 ? _q : '') === ''
? ''
: '<span data-tooltip="Has Image"><i class="fas fa-image" aria-label="Has Image"></i></span>') +
'</td>' +

View File

@ -70,10 +70,10 @@ declare const cityssm: cityssmGlobal
('<td>' +
((map.mapAddress1 ?? '') === ''
? ''
: cityssm.escapeHTML(map.mapAddress1!) + '<br />') +
: cityssm.escapeHTML(map.mapAddress1 ?? '') + '<br />') +
((map.mapAddress2 ?? '') === ''
? ''
: cityssm.escapeHTML(map.mapAddress2!) + '<br />') +
: cityssm.escapeHTML(map.mapAddress2 ?? '') + '<br />') +
(map.mapCity || map.mapProvince
? cityssm.escapeHTML(map.mapCity ?? '') +
', ' +
@ -82,7 +82,7 @@ declare const cityssm: cityssmGlobal
: '') +
((map.mapPostalCode ?? '') === ''
? ''
: cityssm.escapeHTML(map.mapPostalCode!)) +
: cityssm.escapeHTML(map.mapPostalCode ?? '')) +
'</td>') +
('<td>' + cityssm.escapeHTML(map.mapPhoneNumber ?? '') + '</td>') +
'<td class="has-text-centered">' +

View File

@ -159,7 +159,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
}
searchFilterFormElement.addEventListener('submit', (formEvent) => {
formEvent.preventDefault();
resetOffsetAndGetWorkOrders();
});
/*
const workOrderOpenDateStringElement = document.querySelector("#searchFilter--workOrderOpenDateString") as HTMLInputElement;

View File

@ -231,7 +231,6 @@ declare const cityssm: cityssmGlobal
searchFilterFormElement.addEventListener('submit', (formEvent) => {
formEvent.preventDefault()
resetOffsetAndGetWorkOrders()
})
/*

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1 +1 @@
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),(()=>{const t=exports.los,e=document.querySelector("#form--searchFilters"),a=document.querySelector("#container--searchResults"),s=Number.parseInt(document.querySelector("#searchFilter--limit").value,10),c=document.querySelector("#searchFilter--offset");function n(e){var c,n,i,l,p,d,u;if(0===e.lotOccupancies.length)return void(a.innerHTML=`<div class="message is-info">\n <p class="message-body">\n There are no ${t.escapedAliases.occupancy} records that meet the search criteria.\n </p>\n </div>`);const h=document.createElement("tbody"),y=cityssm.dateToString(new Date);for(const a of e.lotOccupancies){let e="";e=a.occupancyStartDateString<=y&&(""===a.occupancyEndDateString||a.occupancyEndDateString>=y)?`<span class="has-tooltip-right" data-tooltip="Current ${t.escapedAliases.Occupancy}">\n <i class="fas fa-play" aria-label="Current ${t.escapedAliases.Occupancy}"></i>\n </span>`:a.occupancyStartDateString>y?`<span class="has-tooltip-right" data-tooltip="Future ${t.escapedAliases.Occupancy}">\n <i class="fas fa-fast-forward" aria-label="Future ${t.escapedAliases.Occupancy}"></i>\n </span>`:`<span class="has-tooltip-right" data-tooltip="Past ${t.escapedAliases.Occupancy}">\n <i class="fas fa-stop" aria-label="Past ${t.escapedAliases.Occupancy}"></i>\n </span>`;let s="";for(const t of a.lotOccupancyOccupants)s+='<span class="has-tooltip-left" data-tooltip="'+cityssm.escapeHTML(null!==(c=t.lotOccupantType)&&void 0!==c?c:"")+'"><i class="fas fa-fw fa-'+cityssm.escapeHTML(""===(null!==(n=t.fontAwesomeIconClass)&&void 0!==n?n:"")?"user":t.fontAwesomeIconClass)+'" aria-hidden="true"></i> '+cityssm.escapeHTML(null!==(i=t.occupantName)&&void 0!==i?i:"")+"</span><br />";h.insertAdjacentHTML("beforeend",'<tr><td class="has-width-1">'+e+'</td><td><a class="has-text-weight-bold" href="'+t.getLotOccupancyURL(a.lotOccupancyId)+'">'+cityssm.escapeHTML(a.occupancyType)+"</a></td><td>"+(a.lotName?'<a class="has-tooltip-right" data-tooltip="'+cityssm.escapeHTML(null!==(l=a.lotType)&&void 0!==l?l:"")+'" href="'+t.getLotURL(a.lotId)+'">'+cityssm.escapeHTML(a.lotName)+"</a>":'<span class="has-text-grey">(No '+t.escapedAliases.Lot+")</span>")+'<br /><span class="is-size-7">'+cityssm.escapeHTML(null!==(p=a.mapName)&&void 0!==p?p:"")+"</span></td><td>"+a.occupancyStartDateString+"</td><td>"+(a.occupancyEndDate?a.occupancyEndDateString:'<span class="has-text-grey">(No End Date)</span>')+"</td><td>"+s+"</td><td>"+(a.printEJS?'<a class="button is-small" data-tooltip="Print" href="'+t.urlPrefix+"/print/"+a.printEJS+"/?lotOccupancyId="+a.lotOccupancyId+'" target="_blank"><i class="fas fa-print" aria-label="Print"></i></a>':"")+"</td></tr>")}a.innerHTML=`<table class="table is-fullwidth is-striped is-hoverable has-sticky-header">\n <thead><tr>\n <th class="has-width-1"></th>\n <th>${t.escapedAliases.Occupancy} Type</th>\n <th>${t.escapedAliases.Lot}</th>\n <th>${t.escapedAliases.OccupancyStartDate}</th>\n <th>End Date</th>\n <th>${t.escapedAliases.Occupants}</th>\n <th class="has-width-1"><span class="is-sr-only">Print</span></th>\n </tr></thead>\n <table>`,a.querySelector("table").append(h),a.insertAdjacentHTML("beforeend",t.getSearchResultsPagerHTML(s,e.offset,e.count)),null===(d=a.querySelector("button[data-page='previous']"))||void 0===d||d.addEventListener("click",o),null===(u=a.querySelector("button[data-page='next']"))||void 0===u||u.addEventListener("click",r)}function i(){a.innerHTML=t.getLoadingParagraphHTML(`Loading ${t.escapedAliases.Occupancies}...`),cityssm.postJSON(t.urlPrefix+"/lotOccupancies/doSearchLotOccupancies",e,n)}function l(){c.value="0",i()}function o(){c.value=Math.max(Number.parseInt(c.value,10)-s,0).toString(),i()}function r(){c.value=(Number.parseInt(c.value,10)+s).toString(),i()}const p=e.querySelectorAll("input, select");for(const t of p)t.addEventListener("change",l);e.addEventListener("submit",t=>{t.preventDefault(),l()}),i()})();
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),(()=>{const t=exports.los,e=document.querySelector("#form--searchFilters"),a=document.querySelector("#container--searchResults"),s=Number.parseInt(document.querySelector("#searchFilter--limit").value,10),c=document.querySelector("#searchFilter--offset");function n(e){var c,n,i,l,p,d,u,h;if(0===e.lotOccupancies.length)return void(a.innerHTML=`<div class="message is-info">\n <p class="message-body">\n There are no ${t.escapedAliases.occupancy} records that meet the search criteria.\n </p>\n </div>`);const y=document.createElement("tbody"),f=cityssm.dateToString(new Date);for(const a of e.lotOccupancies){let e="";e=a.occupancyStartDateString<=f&&(""===a.occupancyEndDateString||a.occupancyEndDateString>=f)?`<span class="has-tooltip-right" data-tooltip="Current ${t.escapedAliases.Occupancy}">\n <i class="fas fa-play" aria-label="Current ${t.escapedAliases.Occupancy}"></i>\n </span>`:a.occupancyStartDateString>f?`<span class="has-tooltip-right" data-tooltip="Future ${t.escapedAliases.Occupancy}">\n <i class="fas fa-fast-forward" aria-label="Future ${t.escapedAliases.Occupancy}"></i>\n </span>`:`<span class="has-tooltip-right" data-tooltip="Past ${t.escapedAliases.Occupancy}">\n <i class="fas fa-stop" aria-label="Past ${t.escapedAliases.Occupancy}"></i>\n </span>`;let s="";for(const t of a.lotOccupancyOccupants)s+='<span class="has-tooltip-left" data-tooltip="'+cityssm.escapeHTML(null!==(c=t.lotOccupantType)&&void 0!==c?c:"")+'"><i class="fas fa-fw fa-'+cityssm.escapeHTML(""===(null!==(n=t.fontAwesomeIconClass)&&void 0!==n?n:"")?"user":t.fontAwesomeIconClass)+'" aria-hidden="true"></i> '+cityssm.escapeHTML(null!==(i=t.occupantName)&&void 0!==i?i:"")+"</span><br />";y.insertAdjacentHTML("beforeend",'<tr><td class="has-width-1">'+e+'</td><td><a class="has-text-weight-bold" href="'+t.getLotOccupancyURL(a.lotOccupancyId)+'">'+cityssm.escapeHTML(a.occupancyType)+"</a></td><td>"+(-1===(null!==(l=a.lotId)&&void 0!==l?l:-1)?'<span class="has-text-grey">(No '+t.escapedAliases.Lot+")</span>":'<a class="has-tooltip-right" data-tooltip="'+cityssm.escapeHTML(null!==(p=a.lotType)&&void 0!==p?p:"")+'" href="'+t.getLotURL(a.lotId)+'">'+cityssm.escapeHTML(a.lotName)+"</a>")+'<br /><span class="is-size-7">'+cityssm.escapeHTML(null!==(d=a.mapName)&&void 0!==d?d:"")+"</span></td><td>"+a.occupancyStartDateString+"</td><td>"+(a.occupancyEndDate?a.occupancyEndDateString:'<span class="has-text-grey">(No End Date)</span>')+"</td><td>"+s+"</td><td>"+(a.printEJS?'<a class="button is-small" data-tooltip="Print" href="'+t.urlPrefix+"/print/"+a.printEJS+"/?lotOccupancyId="+a.lotOccupancyId+'" target="_blank"><i class="fas fa-print" aria-label="Print"></i></a>':"")+"</td></tr>")}a.innerHTML=`<table class="table is-fullwidth is-striped is-hoverable has-sticky-header">\n <thead><tr>\n <th class="has-width-1"></th>\n <th>${t.escapedAliases.Occupancy} Type</th>\n <th>${t.escapedAliases.Lot}</th>\n <th>${t.escapedAliases.OccupancyStartDate}</th>\n <th>End Date</th>\n <th>${t.escapedAliases.Occupants}</th>\n <th class="has-width-1"><span class="is-sr-only">Print</span></th>\n </tr></thead>\n <table>`,a.querySelector("table").append(y),a.insertAdjacentHTML("beforeend",t.getSearchResultsPagerHTML(s,e.offset,e.count)),null===(u=a.querySelector("button[data-page='previous']"))||void 0===u||u.addEventListener("click",o),null===(h=a.querySelector("button[data-page='next']"))||void 0===h||h.addEventListener("click",r)}function i(){a.innerHTML=t.getLoadingParagraphHTML(`Loading ${t.escapedAliases.Occupancies}...`),cityssm.postJSON(t.urlPrefix+"/lotOccupancies/doSearchLotOccupancies",e,n)}function l(){c.value="0",i()}function o(){c.value=Math.max(Number.parseInt(c.value,10)-s,0).toString(),i()}function r(){c.value=(Number.parseInt(c.value,10)+s).toString(),i()}const p=e.querySelectorAll("input, select");for(const t of p)t.addEventListener("change",l);e.addEventListener("submit",t=>{t.preventDefault()}),i()})();

View File

@ -1 +1 @@
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),(()=>{const e=exports.los,t=document.querySelector("#form--searchFilters"),s=document.querySelector("#container--searchResults"),a=Number.parseInt(document.querySelector("#searchFilter--limit").value,10),n=document.querySelector("#searchFilter--offset");function r(t){var n,r,o,c;if(0===t.lots.length)return void(s.innerHTML=`<div class="message is-info">\n <p class="message-body">There are no ${e.escapedAliases.lots} that meet the search criteria.</p>\n </div>`);const d=document.createElement("tbody");for(const s of t.lots)d.insertAdjacentHTML("beforeend",'<tr><td><a class="has-text-weight-bold" href="'+e.getLotURL(s.lotId)+'">'+cityssm.escapeHTML(null!==(n=s.lotName)&&void 0!==n?n:"")+'</a></td><td><a href="'+e.getMapURL(s.mapId)+'">'+(s.mapName?cityssm.escapeHTML(s.mapName):'<span class="has-text-grey">(No Name)</span>')+"</a></td><td>"+cityssm.escapeHTML(null!==(r=s.lotType)&&void 0!==r?r:"")+"</td><td>"+(s.lotStatusId?cityssm.escapeHTML(s.lotStatus):'<span class="has-text-grey">(No Status)</span>')+"<br />"+(s.lotOccupancyCount>0?'<span class="is-size-7">Currently Occupied</span>':"")+"</td></tr>");s.innerHTML=`<table class="table is-fullwidth is-striped is-hoverable has-sticky-header">\n <thead><tr>\n <th>${e.escapedAliases.Lot}</th>\n <th>${e.escapedAliases.Map}</th>\n <th>${e.escapedAliases.Lot} Type</th>\n <th>Status</th>\n </tr></thead>\n <table>`,s.insertAdjacentHTML("beforeend",e.getSearchResultsPagerHTML(a,t.offset,t.count)),s.querySelector("table").append(d),null===(o=s.querySelector("button[data-page='previous']"))||void 0===o||o.addEventListener("click",l),null===(c=s.querySelector("button[data-page='next']"))||void 0===c||c.addEventListener("click",i)}function o(){s.innerHTML=e.getLoadingParagraphHTML(`Loading ${e.escapedAliases.Lots}...`),cityssm.postJSON(e.urlPrefix+"/lots/doSearchLots",t,r)}function c(){n.value="0",o()}function l(){n.value=Math.max(Number.parseInt(n.value,10)-a,0).toString(),o()}function i(){n.value=(Number.parseInt(n.value,10)+a).toString(),o()}const d=t.querySelectorAll("input, select");for(const e of d)e.addEventListener("change",c);t.addEventListener("submit",e=>{e.preventDefault(),c()}),o()})();
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),(()=>{const e=exports.los,t=document.querySelector("#form--searchFilters"),s=document.querySelector("#container--searchResults"),a=Number.parseInt(document.querySelector("#searchFilter--limit").value,10),n=document.querySelector("#searchFilter--offset");function r(t){var n,r,o,c;if(0===t.lots.length)return void(s.innerHTML=`<div class="message is-info">\n <p class="message-body">There are no ${e.escapedAliases.lots} that meet the search criteria.</p>\n </div>`);const d=document.createElement("tbody");for(const s of t.lots)d.insertAdjacentHTML("beforeend",'<tr><td><a class="has-text-weight-bold" href="'+e.getLotURL(s.lotId)+'">'+cityssm.escapeHTML(null!==(n=s.lotName)&&void 0!==n?n:"")+'</a></td><td><a href="'+e.getMapURL(s.mapId)+'">'+(s.mapName?cityssm.escapeHTML(s.mapName):'<span class="has-text-grey">(No Name)</span>')+"</a></td><td>"+cityssm.escapeHTML(null!==(r=s.lotType)&&void 0!==r?r:"")+"</td><td>"+(s.lotStatusId?cityssm.escapeHTML(s.lotStatus):'<span class="has-text-grey">(No Status)</span>')+"<br />"+(s.lotOccupancyCount>0?'<span class="is-size-7">Currently Occupied</span>':"")+"</td></tr>");s.innerHTML=`<table class="table is-fullwidth is-striped is-hoverable has-sticky-header">\n <thead><tr>\n <th>${e.escapedAliases.Lot}</th>\n <th>${e.escapedAliases.Map}</th>\n <th>${e.escapedAliases.Lot} Type</th>\n <th>Status</th>\n </tr></thead>\n <table>`,s.insertAdjacentHTML("beforeend",e.getSearchResultsPagerHTML(a,t.offset,t.count)),s.querySelector("table").append(d),null===(o=s.querySelector("button[data-page='previous']"))||void 0===o||o.addEventListener("click",l),null===(c=s.querySelector("button[data-page='next']"))||void 0===c||c.addEventListener("click",i)}function o(){s.innerHTML=e.getLoadingParagraphHTML(`Loading ${e.escapedAliases.Lots}...`),cityssm.postJSON(e.urlPrefix+"/lots/doSearchLots",t,r)}function c(){n.value="0",o()}function l(){n.value=Math.max(Number.parseInt(n.value,10)-a,0).toString(),o()}function i(){n.value=(Number.parseInt(n.value,10)+a).toString(),o()}const d=t.querySelectorAll("input, select");for(const e of d)e.addEventListener("change",c);t.addEventListener("submit",e=>{e.preventDefault()}),o()})();

View File

@ -1 +1 @@
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),(()=>{const e=exports.los,a=exports.maps,s=document.querySelector("#searchFilter--map"),t=document.querySelector("#container--searchResults");function i(){var i,r,d,n,o,l,c,p,m,h,u,L;t.innerHTML=e.getLoadingParagraphHTML(`Loading ${e.escapedAliases.Maps}...`);let v=0;const f=document.createElement("tbody"),b=s.value.trim().toLowerCase().split(" ");for(const s of a){const a=`${null!==(i=s.mapName)&&void 0!==i?i:""} ${null!==(r=s.mapDescription)&&void 0!==r?r:""} ${null!==(d=s.mapAddress1)&&void 0!==d?d:""} ${null!==(n=s.mapAddress2)&&void 0!==n?n:""}`.toLowerCase();let t=!0;for(const e of b)if(!a.includes(e)){t=!1;break}t&&(v+=1,f.insertAdjacentHTML("beforeend",'<tr><td><a class="has-text-weight-bold" href="'+e.getMapURL(s.mapId)+'">'+cityssm.escapeHTML(""===s.mapName?"(No Name)":s.mapName)+'</a><br /><span class="is-size-7">'+cityssm.escapeHTML(null!==(o=s.mapDescription)&&void 0!==o?o:"")+"</span></td><td>"+(""===(null!==(l=s.mapAddress1)&&void 0!==l?l:"")?"":cityssm.escapeHTML(s.mapAddress1)+"<br />")+(""===(null!==(c=s.mapAddress2)&&void 0!==c?c:"")?"":cityssm.escapeHTML(s.mapAddress2)+"<br />")+(s.mapCity||s.mapProvince?cityssm.escapeHTML(null!==(p=s.mapCity)&&void 0!==p?p:"")+", "+cityssm.escapeHTML(null!==(m=s.mapProvince)&&void 0!==m?m:"")+"<br />":"")+(""===(null!==(h=s.mapPostalCode)&&void 0!==h?h:"")?"":cityssm.escapeHTML(s.mapPostalCode))+"</td><td>"+cityssm.escapeHTML(null!==(u=s.mapPhoneNumber)&&void 0!==u?u:"")+'</td><td class="has-text-centered">'+(s.mapLatitude&&s.mapLongitude?'<span data-tooltip="Has Geographic Coordinates"><i class="fas fa-map-marker-alt" aria-label="Has Geographic Coordinates"></i></span>':"")+'</td><td class="has-text-centered">'+(""===(null!==(L=s.mapSVG)&&void 0!==L?L:"")?"":'<span data-tooltip="Has Image"><i class="fas fa-image" aria-label="Has Image"></i></span>')+"</td>"+`<td class="has-text-right">\n <a href="${e.urlPrefix}/lots?mapId=${s.mapId}">${s.lotCount}</a>\n </td>`+"</tr>"))}if(t.innerHTML="",0===v)t.innerHTML=`<div class="message is-info">\n <p class="message-body">There are no ${e.escapedAliases.maps} that meet the search criteria.</p>\n </div>`;else{const a=document.createElement("table");a.className="table is-fullwidth is-striped is-hoverable has-sticky-header",a.innerHTML=`<thead><tr>\n <th>${e.escapedAliases.Map}</th>\n <th>Address</th>\n <th>Phone Number</th>\n <th class="has-text-centered">Coordinates</th>\n <th class="has-text-centered">Image</th>\n <th class="has-text-right">${e.escapedAliases.Lot} Count</th>\n </tr></thead>`,a.append(f),t.append(a)}}s.addEventListener("keyup",i),document.querySelector("#form--searchFilters").addEventListener("submit",e=>{e.preventDefault(),i()}),i()})();
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),(()=>{const e=exports.los,a=exports.maps,s=document.querySelector("#searchFilter--map"),t=document.querySelector("#container--searchResults");function i(){var i,d,n,r,o,l,c,p,m,h,u,v,L,f,b;t.innerHTML=e.getLoadingParagraphHTML(`Loading ${e.escapedAliases.Maps}...`);let y=0;const H=document.createElement("tbody"),M=s.value.trim().toLowerCase().split(" ");for(const s of a){const a=`${null!==(i=s.mapName)&&void 0!==i?i:""} ${null!==(d=s.mapDescription)&&void 0!==d?d:""} ${null!==(n=s.mapAddress1)&&void 0!==n?n:""} ${null!==(r=s.mapAddress2)&&void 0!==r?r:""}`.toLowerCase();let t=!0;for(const e of M)if(!a.includes(e)){t=!1;break}t&&(y+=1,H.insertAdjacentHTML("beforeend",'<tr><td><a class="has-text-weight-bold" href="'+e.getMapURL(s.mapId)+'">'+cityssm.escapeHTML(""===s.mapName?"(No Name)":s.mapName)+'</a><br /><span class="is-size-7">'+cityssm.escapeHTML(null!==(o=s.mapDescription)&&void 0!==o?o:"")+"</span></td><td>"+(""===(null!==(l=s.mapAddress1)&&void 0!==l?l:"")?"":cityssm.escapeHTML(null!==(c=s.mapAddress1)&&void 0!==c?c:"")+"<br />")+(""===(null!==(p=s.mapAddress2)&&void 0!==p?p:"")?"":cityssm.escapeHTML(null!==(m=s.mapAddress2)&&void 0!==m?m:"")+"<br />")+(s.mapCity||s.mapProvince?cityssm.escapeHTML(null!==(h=s.mapCity)&&void 0!==h?h:"")+", "+cityssm.escapeHTML(null!==(u=s.mapProvince)&&void 0!==u?u:"")+"<br />":"")+(""===(null!==(v=s.mapPostalCode)&&void 0!==v?v:"")?"":cityssm.escapeHTML(null!==(L=s.mapPostalCode)&&void 0!==L?L:""))+"</td><td>"+cityssm.escapeHTML(null!==(f=s.mapPhoneNumber)&&void 0!==f?f:"")+'</td><td class="has-text-centered">'+(s.mapLatitude&&s.mapLongitude?'<span data-tooltip="Has Geographic Coordinates"><i class="fas fa-map-marker-alt" aria-label="Has Geographic Coordinates"></i></span>':"")+'</td><td class="has-text-centered">'+(""===(null!==(b=s.mapSVG)&&void 0!==b?b:"")?"":'<span data-tooltip="Has Image"><i class="fas fa-image" aria-label="Has Image"></i></span>')+"</td>"+`<td class="has-text-right">\n <a href="${e.urlPrefix}/lots?mapId=${s.mapId}">${s.lotCount}</a>\n </td>`+"</tr>"))}if(t.innerHTML="",0===y)t.innerHTML=`<div class="message is-info">\n <p class="message-body">There are no ${e.escapedAliases.maps} that meet the search criteria.</p>\n </div>`;else{const a=document.createElement("table");a.className="table is-fullwidth is-striped is-hoverable has-sticky-header",a.innerHTML=`<thead><tr>\n <th>${e.escapedAliases.Map}</th>\n <th>Address</th>\n <th>Phone Number</th>\n <th class="has-text-centered">Coordinates</th>\n <th class="has-text-centered">Image</th>\n <th class="has-text-right">${e.escapedAliases.Lot} Count</th>\n </tr></thead>`,a.append(H),t.append(a)}}s.addEventListener("keyup",i),document.querySelector("#form--searchFilters").addEventListener("submit",e=>{e.preventDefault(),i()}),i()})();

View File

@ -1 +1 @@
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),(()=>{const e=exports.los,t=exports.workOrderPrints,s=document.querySelector("#form--searchFilters");e.initializeDatePickers(s);const a=document.querySelector("#container--searchResults"),r=Number.parseInt(document.querySelector("#searchFilter--limit").value,10),o=document.querySelector("#searchFilter--offset");function l(s){var o,l,i,n,p,u,f,h,m,O;if(0===s.workOrders.length)return void(a.innerHTML='<div class="message is-info"><p class="message-body">There are no work orders that meet the search criteria.</p></div>');const k=document.createElement("tbody");for(const a of s.workOrders){let s="";for(const t of a.workOrderLots)s+='<span class="has-tooltip-left" data-tooltip="'+cityssm.escapeHTML(null!==(o=t.mapName)&&void 0!==o?o:"")+'"><i class="fas fa-fw fa-vector-square" aria-label="'+e.escapedAliases.Lot+'"></i> '+cityssm.escapeHTML(""===(null!==(l=t.lotName)&&void 0!==l?l:"")?"(No "+e.escapedAliases.Lot+" Name)":t.lotName)+"</span><br />";for(const t of a.workOrderLotOccupancies)for(const a of t.lotOccupancyOccupants)s+='<span class="has-tooltip-left" data-tooltip="'+cityssm.escapeHTML(null!==(i=a.lotOccupantType)&&void 0!==i?i:"")+'"><i class="fas fa-fw fa-'+cityssm.escapeHTML(""===(null!==(n=a.fontAwesomeIconClass)&&void 0!==n?n:"")?"user":a.fontAwesomeIconClass)+'" aria-label="'+e.escapedAliases.occupant+'"></i> '+cityssm.escapeHTML(""===(null!==(p=a.occupantName)&&void 0!==p?p:"")?"(No Name)":a.occupantName)+"</span><br />";k.insertAdjacentHTML("beforeend",'<tr><td><a class="has-text-weight-bold" href="'+e.getWorkOrderURL(a.workOrderId)+'">'+(a.workOrderNumber.trim()?cityssm.escapeHTML(null!==(u=a.workOrderNumber)&&void 0!==u?u:""):"(No Number)")+"</a></td><td>"+cityssm.escapeHTML(null!==(f=a.workOrderType)&&void 0!==f?f:"")+'<br /><span class="is-size-7">'+cityssm.escapeHTML(null!==(h=a.workOrderDescription)&&void 0!==h?h:"")+'</span></td><td class="is-nowrap"><span class="is-size-7">'+s+'</span></td><td class="is-nowrap"><span class="has-tooltip-left" data-tooltip="'+e.escapedAliases.WorkOrderOpenDate+'"><i class="fas fa-fw fa-play" aria-label="'+e.escapedAliases.WorkOrderOpenDate+'"></i> '+a.workOrderOpenDateString+'</span><br /><span class="has-tooltip-left" data-tooltip="'+e.escapedAliases.WorkOrderCloseDate+'"><i class="fas fa-fw fa-stop" aria-label="'+e.escapedAliases.WorkOrderCloseDate+'"></i> '+(a.workOrderCloseDate?a.workOrderCloseDateString:'<span class="has-text-grey">(No '+e.escapedAliases.WorkOrderCloseDate+")</span>")+"</span></td><td>"+(0===a.workOrderMilestoneCount?"-":a.workOrderMilestoneCompletionCount+" / "+a.workOrderMilestoneCount)+"</td>"+(t.length>0?'<td><a class="button is-small" data-tooltip="Print" href="'+e.urlPrefix+"/print/"+t[0]+"/?workOrderId="+a.workOrderId+'" target="_blank"><i class="fas fa-print" aria-label="Print"></i></a></td>':"")+"</tr>")}a.innerHTML='<table class="table is-fullwidth is-striped is-hoverable has-sticky-header"><thead><tr><th>Work Order Number</th><th>Description</th><th>Related</th><th>Date</th><th class="has-tooltip-bottom" data-tooltip="Completed / Total Milestones">Progress</th>'+(t.length>0?'<th class="has-width-1"></th>':"")+"</tr></thead><table>",a.insertAdjacentHTML("beforeend",e.getSearchResultsPagerHTML(r,s.offset,s.count)),a.querySelector("table").append(k),null===(m=a.querySelector("button[data-page='previous']"))||void 0===m||m.addEventListener("click",c),null===(O=a.querySelector("button[data-page='next']"))||void 0===O||O.addEventListener("click",d)}function i(){a.innerHTML=e.getLoadingParagraphHTML("Loading Work Orders..."),cityssm.postJSON(e.urlPrefix+"/workOrders/doSearchWorkOrders",s,l)}function n(){o.value="0",i()}function c(){o.value=Math.max(Number.parseInt(o.value,10)-r,0).toString(),i()}function d(){o.value=(Number.parseInt(o.value,10)+r).toString(),i()}const p=s.querySelectorAll("input, select");for(const e of p)e.addEventListener("change",n);s.addEventListener("submit",e=>{e.preventDefault(),n()}),i()})();
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),(()=>{const e=exports.los,t=exports.workOrderPrints,s=document.querySelector("#form--searchFilters");e.initializeDatePickers(s);const a=document.querySelector("#container--searchResults"),r=Number.parseInt(document.querySelector("#searchFilter--limit").value,10),o=document.querySelector("#searchFilter--offset");function l(s){var o,l,i,n,p,u,f,h,m,O;if(0===s.workOrders.length)return void(a.innerHTML='<div class="message is-info"><p class="message-body">There are no work orders that meet the search criteria.</p></div>');const k=document.createElement("tbody");for(const a of s.workOrders){let s="";for(const t of a.workOrderLots)s+='<span class="has-tooltip-left" data-tooltip="'+cityssm.escapeHTML(null!==(o=t.mapName)&&void 0!==o?o:"")+'"><i class="fas fa-fw fa-vector-square" aria-label="'+e.escapedAliases.Lot+'"></i> '+cityssm.escapeHTML(""===(null!==(l=t.lotName)&&void 0!==l?l:"")?"(No "+e.escapedAliases.Lot+" Name)":t.lotName)+"</span><br />";for(const t of a.workOrderLotOccupancies)for(const a of t.lotOccupancyOccupants)s+='<span class="has-tooltip-left" data-tooltip="'+cityssm.escapeHTML(null!==(i=a.lotOccupantType)&&void 0!==i?i:"")+'"><i class="fas fa-fw fa-'+cityssm.escapeHTML(""===(null!==(n=a.fontAwesomeIconClass)&&void 0!==n?n:"")?"user":a.fontAwesomeIconClass)+'" aria-label="'+e.escapedAliases.occupant+'"></i> '+cityssm.escapeHTML(""===(null!==(p=a.occupantName)&&void 0!==p?p:"")?"(No Name)":a.occupantName)+"</span><br />";k.insertAdjacentHTML("beforeend",'<tr><td><a class="has-text-weight-bold" href="'+e.getWorkOrderURL(a.workOrderId)+'">'+(a.workOrderNumber.trim()?cityssm.escapeHTML(null!==(u=a.workOrderNumber)&&void 0!==u?u:""):"(No Number)")+"</a></td><td>"+cityssm.escapeHTML(null!==(f=a.workOrderType)&&void 0!==f?f:"")+'<br /><span class="is-size-7">'+cityssm.escapeHTML(null!==(h=a.workOrderDescription)&&void 0!==h?h:"")+'</span></td><td class="is-nowrap"><span class="is-size-7">'+s+'</span></td><td class="is-nowrap"><span class="has-tooltip-left" data-tooltip="'+e.escapedAliases.WorkOrderOpenDate+'"><i class="fas fa-fw fa-play" aria-label="'+e.escapedAliases.WorkOrderOpenDate+'"></i> '+a.workOrderOpenDateString+'</span><br /><span class="has-tooltip-left" data-tooltip="'+e.escapedAliases.WorkOrderCloseDate+'"><i class="fas fa-fw fa-stop" aria-label="'+e.escapedAliases.WorkOrderCloseDate+'"></i> '+(a.workOrderCloseDate?a.workOrderCloseDateString:'<span class="has-text-grey">(No '+e.escapedAliases.WorkOrderCloseDate+")</span>")+"</span></td><td>"+(0===a.workOrderMilestoneCount?"-":a.workOrderMilestoneCompletionCount+" / "+a.workOrderMilestoneCount)+"</td>"+(t.length>0?'<td><a class="button is-small" data-tooltip="Print" href="'+e.urlPrefix+"/print/"+t[0]+"/?workOrderId="+a.workOrderId+'" target="_blank"><i class="fas fa-print" aria-label="Print"></i></a></td>':"")+"</tr>")}a.innerHTML='<table class="table is-fullwidth is-striped is-hoverable has-sticky-header"><thead><tr><th>Work Order Number</th><th>Description</th><th>Related</th><th>Date</th><th class="has-tooltip-bottom" data-tooltip="Completed / Total Milestones">Progress</th>'+(t.length>0?'<th class="has-width-1"></th>':"")+"</tr></thead><table>",a.insertAdjacentHTML("beforeend",e.getSearchResultsPagerHTML(r,s.offset,s.count)),a.querySelector("table").append(k),null===(m=a.querySelector("button[data-page='previous']"))||void 0===m||m.addEventListener("click",c),null===(O=a.querySelector("button[data-page='next']"))||void 0===O||O.addEventListener("click",d)}function i(){a.innerHTML=e.getLoadingParagraphHTML("Loading Work Orders..."),cityssm.postJSON(e.urlPrefix+"/workOrders/doSearchWorkOrders",s,l)}function n(){o.value="0",i()}function c(){o.value=Math.max(Number.parseInt(o.value,10)-r,0).toString(),i()}function d(){o.value=(Number.parseInt(o.value,10)+r).toString(),i()}const p=s.querySelectorAll("input, select");for(const e of p)e.addEventListener("change",n);s.addEventListener("submit",e=>{e.preventDefault()}),i()})();