centralize search results pager
parent
41e453e180
commit
062c210674
|
|
@ -116,48 +116,19 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|||
"</td>" +
|
||||
"</tr>");
|
||||
}
|
||||
searchResultsContainerElement.innerHTML =
|
||||
'<table class="table is-fullwidth is-striped is-hoverable has-sticky-header">' +
|
||||
"<thead><tr>" +
|
||||
'<th class="has-width-1"></th>' +
|
||||
("<th>" + los.escapedAliases.Occupancy + " Type</th>") +
|
||||
("<th>" + los.escapedAliases.Lot + "</th>") +
|
||||
("<th>" + los.escapedAliases.OccupancyStartDate + "</th>") +
|
||||
"<th>End Date</th>" +
|
||||
("<th>" + los.escapedAliases.Occupants + "</th>") +
|
||||
'<th class="has-width-1"><span class="is-sr-only">Print</span></th>' +
|
||||
"</tr></thead>" +
|
||||
"<table>" +
|
||||
'<div class="level">' +
|
||||
('<div class="level-left">' +
|
||||
'<div class="level-item has-text-weight-bold">' +
|
||||
"Displaying " +
|
||||
(responseJSON.offset + 1).toString() +
|
||||
" to " +
|
||||
Math.min(responseJSON.count, limit + responseJSON.offset) +
|
||||
" of " +
|
||||
responseJSON.count +
|
||||
"</div>" +
|
||||
"</div>") +
|
||||
('<div class="level-right">' +
|
||||
(responseJSON.offset > 0
|
||||
? '<div class="level-item">' +
|
||||
'<button class="button is-rounded is-link is-outlined" data-page="previous" type="button" title="Previous">' +
|
||||
'<i class="fas fa-arrow-left" aria-hidden="true"></i>' +
|
||||
"</button>" +
|
||||
"</div>"
|
||||
: "") +
|
||||
(limit + responseJSON.offset < responseJSON.count
|
||||
? '<div class="level-item">' +
|
||||
'<button class="button is-rounded is-link" data-page="next" type="button" title="Next">' +
|
||||
"<span>Next</span>" +
|
||||
'<span class="icon"><i class="fas fa-arrow-right" aria-hidden="true"></i></span>' +
|
||||
"</button>" +
|
||||
"</div>"
|
||||
: "") +
|
||||
"</div>") +
|
||||
"</div>";
|
||||
searchResultsContainerElement.innerHTML = `<table class="table is-fullwidth is-striped is-hoverable has-sticky-header">
|
||||
<thead><tr>
|
||||
<th class="has-width-1"></th>
|
||||
<th>${los.escapedAliases.Occupancy} Type</th>
|
||||
<th>${los.escapedAliases.Lot}</th>
|
||||
<th>${los.escapedAliases.OccupancyStartDate}</th>
|
||||
<th>End Date</th>
|
||||
<th>${los.escapedAliases.Occupants}</th>
|
||||
<th class="has-width-1"><span class="is-sr-only">Print</span></th>
|
||||
</tr></thead>
|
||||
<table>`;
|
||||
searchResultsContainerElement.querySelector("table").append(resultsTbodyElement);
|
||||
searchResultsContainerElement.insertAdjacentHTML("beforeend", los.getSearchResultsPagerHTML(limit, responseJSON.offset, responseJSON.count));
|
||||
if (responseJSON.offset > 0) {
|
||||
searchResultsContainerElement
|
||||
.querySelector("button[data-page='previous']")
|
||||
|
|
|
|||
|
|
@ -149,50 +149,25 @@ declare const cityssm: cityssmGlobal;
|
|||
);
|
||||
}
|
||||
|
||||
searchResultsContainerElement.innerHTML =
|
||||
'<table class="table is-fullwidth is-striped is-hoverable has-sticky-header">' +
|
||||
"<thead><tr>" +
|
||||
'<th class="has-width-1"></th>' +
|
||||
("<th>" + los.escapedAliases.Occupancy + " Type</th>") +
|
||||
("<th>" + los.escapedAliases.Lot + "</th>") +
|
||||
("<th>" + los.escapedAliases.OccupancyStartDate + "</th>") +
|
||||
"<th>End Date</th>" +
|
||||
("<th>" + los.escapedAliases.Occupants + "</th>") +
|
||||
'<th class="has-width-1"><span class="is-sr-only">Print</span></th>' +
|
||||
"</tr></thead>" +
|
||||
"<table>" +
|
||||
'<div class="level">' +
|
||||
('<div class="level-left">' +
|
||||
'<div class="level-item has-text-weight-bold">' +
|
||||
"Displaying " +
|
||||
(responseJSON.offset + 1).toString() +
|
||||
" to " +
|
||||
Math.min(responseJSON.count, limit + responseJSON.offset) +
|
||||
" of " +
|
||||
responseJSON.count +
|
||||
"</div>" +
|
||||
"</div>") +
|
||||
('<div class="level-right">' +
|
||||
(responseJSON.offset > 0
|
||||
? '<div class="level-item">' +
|
||||
'<button class="button is-rounded is-link is-outlined" data-page="previous" type="button" title="Previous">' +
|
||||
'<i class="fas fa-arrow-left" aria-hidden="true"></i>' +
|
||||
"</button>" +
|
||||
"</div>"
|
||||
: "") +
|
||||
(limit + responseJSON.offset < responseJSON.count
|
||||
? '<div class="level-item">' +
|
||||
'<button class="button is-rounded is-link" data-page="next" type="button" title="Next">' +
|
||||
"<span>Next</span>" +
|
||||
'<span class="icon"><i class="fas fa-arrow-right" aria-hidden="true"></i></span>' +
|
||||
"</button>" +
|
||||
"</div>"
|
||||
: "") +
|
||||
"</div>") +
|
||||
"</div>";
|
||||
searchResultsContainerElement.innerHTML = `<table class="table is-fullwidth is-striped is-hoverable has-sticky-header">
|
||||
<thead><tr>
|
||||
<th class="has-width-1"></th>
|
||||
<th>${los.escapedAliases.Occupancy} Type</th>
|
||||
<th>${los.escapedAliases.Lot}</th>
|
||||
<th>${los.escapedAliases.OccupancyStartDate}</th>
|
||||
<th>End Date</th>
|
||||
<th>${los.escapedAliases.Occupants}</th>
|
||||
<th class="has-width-1"><span class="is-sr-only">Print</span></th>
|
||||
</tr></thead>
|
||||
<table>`;
|
||||
|
||||
searchResultsContainerElement.querySelector("table")!.append(resultsTbodyElement);
|
||||
|
||||
searchResultsContainerElement.insertAdjacentHTML(
|
||||
"beforeend",
|
||||
los.getSearchResultsPagerHTML(limit, responseJSON.offset, responseJSON.count)
|
||||
);
|
||||
|
||||
if (responseJSON.offset > 0) {
|
||||
searchResultsContainerElement
|
||||
.querySelector("button[data-page='previous']")!
|
||||
|
|
|
|||
|
|
@ -52,44 +52,15 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|||
"</td>") +
|
||||
"</tr>");
|
||||
}
|
||||
searchResultsContainerElement.innerHTML =
|
||||
'<table class="table is-fullwidth is-striped is-hoverable has-sticky-header">' +
|
||||
"<thead><tr>" +
|
||||
("<th>" + los.escapedAliases.Lot + "</th>") +
|
||||
("<th>" + los.escapedAliases.Map + "</th>") +
|
||||
("<th>" + los.escapedAliases.Lot + " Type</th>") +
|
||||
"<th>Status</th>" +
|
||||
"</tr></thead>" +
|
||||
"<table>" +
|
||||
'<div class="level">' +
|
||||
('<div class="level-left">' +
|
||||
'<div class="level-item has-text-weight-bold">' +
|
||||
"Displaying " +
|
||||
(responseJSON.offset + 1).toString() +
|
||||
" to " +
|
||||
Math.min(responseJSON.count, limit + responseJSON.offset) +
|
||||
" of " +
|
||||
responseJSON.count +
|
||||
"</div>" +
|
||||
"</div>") +
|
||||
('<div class="level-right">' +
|
||||
(responseJSON.offset > 0
|
||||
? '<div class="level-item">' +
|
||||
'<button class="button is-rounded is-link is-outlined" data-page="previous" type="button" title="Previous">' +
|
||||
'<i class="fas fa-arrow-left" aria-hidden="true"></i>' +
|
||||
"</button>" +
|
||||
"</div>"
|
||||
: "") +
|
||||
(limit + responseJSON.offset < responseJSON.count
|
||||
? '<div class="level-item">' +
|
||||
'<button class="button is-rounded is-link" data-page="next" type="button" title="Next">' +
|
||||
"<span>Next</span>" +
|
||||
'<span class="icon"><i class="fas fa-arrow-right" aria-hidden="true"></i></span>' +
|
||||
"</button>" +
|
||||
"</div>"
|
||||
: "") +
|
||||
"</div>") +
|
||||
"</div>";
|
||||
searchResultsContainerElement.innerHTML = `<table class="table is-fullwidth is-striped is-hoverable has-sticky-header">
|
||||
<thead><tr>
|
||||
<th>${los.escapedAliases.Lot}</th>
|
||||
<th>${los.escapedAliases.Map}</th>
|
||||
<th>${los.escapedAliases.Lot} Type</th>
|
||||
<th>Status</th>
|
||||
</tr></thead>
|
||||
<table>`;
|
||||
searchResultsContainerElement.insertAdjacentHTML("beforeend", los.getSearchResultsPagerHTML(limit, responseJSON.offset, responseJSON.count));
|
||||
searchResultsContainerElement.querySelector("table").append(resultsTbodyElement);
|
||||
if (responseJSON.offset > 0) {
|
||||
searchResultsContainerElement
|
||||
|
|
|
|||
|
|
@ -80,44 +80,19 @@ declare const cityssm: cityssmGlobal;
|
|||
);
|
||||
}
|
||||
|
||||
searchResultsContainerElement.innerHTML =
|
||||
'<table class="table is-fullwidth is-striped is-hoverable has-sticky-header">' +
|
||||
"<thead><tr>" +
|
||||
("<th>" + los.escapedAliases.Lot + "</th>") +
|
||||
("<th>" + los.escapedAliases.Map + "</th>") +
|
||||
("<th>" + los.escapedAliases.Lot + " Type</th>") +
|
||||
"<th>Status</th>" +
|
||||
"</tr></thead>" +
|
||||
"<table>" +
|
||||
'<div class="level">' +
|
||||
('<div class="level-left">' +
|
||||
'<div class="level-item has-text-weight-bold">' +
|
||||
"Displaying " +
|
||||
(responseJSON.offset + 1).toString() +
|
||||
" to " +
|
||||
Math.min(responseJSON.count, limit + responseJSON.offset) +
|
||||
" of " +
|
||||
responseJSON.count +
|
||||
"</div>" +
|
||||
"</div>") +
|
||||
('<div class="level-right">' +
|
||||
(responseJSON.offset > 0
|
||||
? '<div class="level-item">' +
|
||||
'<button class="button is-rounded is-link is-outlined" data-page="previous" type="button" title="Previous">' +
|
||||
'<i class="fas fa-arrow-left" aria-hidden="true"></i>' +
|
||||
"</button>" +
|
||||
"</div>"
|
||||
: "") +
|
||||
(limit + responseJSON.offset < responseJSON.count
|
||||
? '<div class="level-item">' +
|
||||
'<button class="button is-rounded is-link" data-page="next" type="button" title="Next">' +
|
||||
"<span>Next</span>" +
|
||||
'<span class="icon"><i class="fas fa-arrow-right" aria-hidden="true"></i></span>' +
|
||||
"</button>" +
|
||||
"</div>"
|
||||
: "") +
|
||||
"</div>") +
|
||||
"</div>";
|
||||
searchResultsContainerElement.innerHTML = `<table class="table is-fullwidth is-striped is-hoverable has-sticky-header">
|
||||
<thead><tr>
|
||||
<th>${los.escapedAliases.Lot}</th>
|
||||
<th>${los.escapedAliases.Map}</th>
|
||||
<th>${los.escapedAliases.Lot} Type</th>
|
||||
<th>Status</th>
|
||||
</tr></thead>
|
||||
<table>`;
|
||||
|
||||
searchResultsContainerElement.insertAdjacentHTML(
|
||||
"beforeend",
|
||||
los.getSearchResultsPagerHTML(limit, responseJSON.offset, responseJSON.count)
|
||||
);
|
||||
|
||||
searchResultsContainerElement.querySelector("table")!.append(resultsTbodyElement);
|
||||
|
||||
|
|
|
|||
|
|
@ -312,6 +312,37 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|||
${cityssm.escapeHTML(captionText)}
|
||||
</p>`;
|
||||
}
|
||||
function getSearchResultsPagerHTML(limit, offset, count) {
|
||||
return ('<div class="level">' +
|
||||
('<div class="level-left">' +
|
||||
'<div class="level-item has-text-weight-bold">' +
|
||||
"Displaying " +
|
||||
(offset + 1).toString() +
|
||||
" to " +
|
||||
Math.min(count, limit + offset) +
|
||||
" of " +
|
||||
count +
|
||||
"</div>" +
|
||||
"</div>") +
|
||||
('<div class="level-right">' +
|
||||
(offset > 0
|
||||
? '<div class="level-item">' +
|
||||
'<button class="button is-rounded is-link is-outlined" data-page="previous" type="button" title="Previous">' +
|
||||
'<i class="fas fa-arrow-left" aria-hidden="true"></i>' +
|
||||
"</button>" +
|
||||
"</div>"
|
||||
: "") +
|
||||
(limit + offset < count
|
||||
? '<div class="level-item">' +
|
||||
'<button class="button is-rounded is-link" data-page="next" type="button" title="Next">' +
|
||||
"<span>Next</span>" +
|
||||
'<span class="icon"><i class="fas fa-arrow-right" aria-hidden="true"></i></span>' +
|
||||
"</button>" +
|
||||
"</div>"
|
||||
: "") +
|
||||
"</div>") +
|
||||
"</div>");
|
||||
}
|
||||
/*
|
||||
* Declare LOS
|
||||
*/
|
||||
|
|
@ -328,7 +359,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|||
clearUnsavedChanges,
|
||||
hasUnsavedChanges,
|
||||
getMoveUpDownButtonFieldHTML,
|
||||
getLoadingParagraphHTML
|
||||
getLoadingParagraphHTML,
|
||||
getSearchResultsPagerHTML
|
||||
};
|
||||
exports.los = los;
|
||||
})();
|
||||
|
|
|
|||
|
|
@ -397,6 +397,40 @@ declare const bulmaJS: BulmaJS;
|
|||
</p>`;
|
||||
}
|
||||
|
||||
function getSearchResultsPagerHTML(limit: number, offset: number, count: number) {
|
||||
return (
|
||||
'<div class="level">' +
|
||||
('<div class="level-left">' +
|
||||
'<div class="level-item has-text-weight-bold">' +
|
||||
"Displaying " +
|
||||
(offset + 1).toString() +
|
||||
" to " +
|
||||
Math.min(count, limit + offset) +
|
||||
" of " +
|
||||
count +
|
||||
"</div>" +
|
||||
"</div>") +
|
||||
('<div class="level-right">' +
|
||||
(offset > 0
|
||||
? '<div class="level-item">' +
|
||||
'<button class="button is-rounded is-link is-outlined" data-page="previous" type="button" title="Previous">' +
|
||||
'<i class="fas fa-arrow-left" aria-hidden="true"></i>' +
|
||||
"</button>" +
|
||||
"</div>"
|
||||
: "") +
|
||||
(limit + offset < count
|
||||
? '<div class="level-item">' +
|
||||
'<button class="button is-rounded is-link" data-page="next" type="button" title="Next">' +
|
||||
"<span>Next</span>" +
|
||||
'<span class="icon"><i class="fas fa-arrow-right" aria-hidden="true"></i></span>' +
|
||||
"</button>" +
|
||||
"</div>"
|
||||
: "") +
|
||||
"</div>") +
|
||||
"</div>"
|
||||
);
|
||||
}
|
||||
|
||||
/*
|
||||
* Declare LOS
|
||||
*/
|
||||
|
|
@ -418,7 +452,8 @@ declare const bulmaJS: BulmaJS;
|
|||
hasUnsavedChanges,
|
||||
|
||||
getMoveUpDownButtonFieldHTML,
|
||||
getLoadingParagraphHTML
|
||||
getLoadingParagraphHTML,
|
||||
getSearchResultsPagerHTML
|
||||
};
|
||||
|
||||
exports.los = los;
|
||||
|
|
|
|||
|
|
@ -122,36 +122,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|||
'<th class="has-tooltip-bottom" data-tooltip="Completed / Total Milestones">Progress</th>' +
|
||||
(workOrderPrints.length > 0 ? '<th class="has-width-1"></th>' : "") +
|
||||
"</tr></thead>" +
|
||||
"<table>" +
|
||||
'<div class="level">' +
|
||||
('<div class="level-left">' +
|
||||
'<div class="level-item has-text-weight-bold">' +
|
||||
"Displaying " +
|
||||
(responseJSON.offset + 1).toString() +
|
||||
" to " +
|
||||
Math.min(responseJSON.count, limit + responseJSON.offset) +
|
||||
" of " +
|
||||
responseJSON.count +
|
||||
"</div>" +
|
||||
"</div>") +
|
||||
('<div class="level-right">' +
|
||||
(responseJSON.offset > 0
|
||||
? '<div class="level-item">' +
|
||||
'<button class="button is-rounded is-link is-outlined" data-page="previous" type="button" title="Previous">' +
|
||||
'<i class="fas fa-arrow-left" aria-hidden="true"></i>' +
|
||||
"</button>" +
|
||||
"</div>"
|
||||
: "") +
|
||||
(limit + responseJSON.offset < responseJSON.count
|
||||
? '<div class="level-item">' +
|
||||
'<button class="button is-rounded is-link" data-page="next" type="button" title="Next">' +
|
||||
"<span>Next</span>" +
|
||||
'<span class="icon"><i class="fas fa-arrow-right" aria-hidden="true"></i></span>' +
|
||||
"</button>" +
|
||||
"</div>"
|
||||
: "") +
|
||||
"</div>") +
|
||||
"</div>";
|
||||
"<table>";
|
||||
searchResultsContainerElement.insertAdjacentHTML("beforeend", los.getSearchResultsPagerHTML(limit, responseJSON.offset, responseJSON.count));
|
||||
searchResultsContainerElement.querySelector("table").append(resultsTbodyElement);
|
||||
if (responseJSON.offset > 0) {
|
||||
searchResultsContainerElement
|
||||
|
|
|
|||
|
|
@ -155,36 +155,12 @@ declare const cityssm: cityssmGlobal;
|
|||
'<th class="has-tooltip-bottom" data-tooltip="Completed / Total Milestones">Progress</th>' +
|
||||
(workOrderPrints.length > 0 ? '<th class="has-width-1"></th>' : "") +
|
||||
"</tr></thead>" +
|
||||
"<table>" +
|
||||
'<div class="level">' +
|
||||
('<div class="level-left">' +
|
||||
'<div class="level-item has-text-weight-bold">' +
|
||||
"Displaying " +
|
||||
(responseJSON.offset + 1).toString() +
|
||||
" to " +
|
||||
Math.min(responseJSON.count, limit + responseJSON.offset) +
|
||||
" of " +
|
||||
responseJSON.count +
|
||||
"</div>" +
|
||||
"</div>") +
|
||||
('<div class="level-right">' +
|
||||
(responseJSON.offset > 0
|
||||
? '<div class="level-item">' +
|
||||
'<button class="button is-rounded is-link is-outlined" data-page="previous" type="button" title="Previous">' +
|
||||
'<i class="fas fa-arrow-left" aria-hidden="true"></i>' +
|
||||
"</button>" +
|
||||
"</div>"
|
||||
: "") +
|
||||
(limit + responseJSON.offset < responseJSON.count
|
||||
? '<div class="level-item">' +
|
||||
'<button class="button is-rounded is-link" data-page="next" type="button" title="Next">' +
|
||||
"<span>Next</span>" +
|
||||
'<span class="icon"><i class="fas fa-arrow-right" aria-hidden="true"></i></span>' +
|
||||
"</button>" +
|
||||
"</div>"
|
||||
: "") +
|
||||
"</div>") +
|
||||
"</div>";
|
||||
"<table>";
|
||||
|
||||
searchResultsContainerElement.insertAdjacentHTML(
|
||||
"beforeend",
|
||||
los.getSearchResultsPagerHTML(limit, responseJSON.offset, responseJSON.count)
|
||||
);
|
||||
|
||||
searchResultsContainerElement.querySelector("table")!.append(resultsTbodyElement);
|
||||
|
||||
|
|
|
|||
|
|
@ -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 i(e){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 c=document.createElement("tbody"),i=cityssm.dateToString(new Date);for(const a of e.lotOccupancies){let e="";e=a.occupancyStartDateString<=i&&(""===a.occupancyEndDateString||a.occupancyEndDateString>=i)?'<span class="has-tooltip-right" data-tooltip="Current '+t.escapedAliases.Occupancy+'"><i class="fas fa-play" aria-label="Current '+t.escapedAliases.Occupancy+'"></i></span>':a.occupancyStartDateString>i?'<span class="has-tooltip-right" data-tooltip="Future '+t.escapedAliases.Occupancy+'"><i class="fas fa-fast-forward" aria-label="Future '+t.escapedAliases.Occupancy+'"></i></span>':'<span class="has-tooltip-right" data-tooltip="Past '+t.escapedAliases.Occupancy+'"><i class="fas fa-stop" aria-label="Past '+t.escapedAliases.Occupancy+'"></i></span>';let s="";for(const t of a.lotOccupancyOccupants)s+='<span class="has-tooltip-left" data-tooltip="'+cityssm.escapeHTML(t.lotOccupantType||"")+'"><i class="fas fa-fw fa-'+cityssm.escapeHTML(t.fontAwesomeIconClass||"user")+'" aria-hidden="true"></i> '+cityssm.escapeHTML(t.occupantName||"")+"</span><br />";c.insertAdjacentHTML("beforeend",'<tr><td class="has-width-1">'+e+'</td><td><a class="has-text-weight-bold" href="'+t.urlPrefix+"/lotOccupancies/"+a.lotOccupancyId+'">'+cityssm.escapeHTML(a.occupancyType)+"</a></td><td>"+(a.lotName?'<a class="has-tooltip-right" data-tooltip="'+cityssm.escapeHTML(a.lotType||"")+'" href="'+t.urlPrefix+"/lots/"+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(a.mapName||"")+"</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"><thead><tr><th class="has-width-1"></th><th>'+t.escapedAliases.Occupancy+" Type</th><th>"+t.escapedAliases.Lot+"</th><th>"+t.escapedAliases.OccupancyStartDate+"</th><th>End Date</th><th>"+t.escapedAliases.Occupants+'</th><th class="has-width-1"><span class="is-sr-only">Print</span></th></tr></thead><table><div class="level"><div class="level-left"><div class="level-item has-text-weight-bold">Displaying '+(e.offset+1).toString()+" to "+Math.min(e.count,s+e.offset)+" of "+e.count+'</div></div><div class="level-right">'+(e.offset>0?'<div class="level-item"><button class="button is-rounded is-link is-outlined" data-page="previous" type="button" title="Previous"><i class="fas fa-arrow-left" aria-hidden="true"></i></button></div>':"")+(s+e.offset<e.count?'<div class="level-item"><button class="button is-rounded is-link" data-page="next" type="button" title="Next"><span>Next</span><span class="icon"><i class="fas fa-arrow-right" aria-hidden="true"></i></span></button></div>':"")+"</div></div>",a.querySelector("table").append(c),e.offset>0&&a.querySelector("button[data-page='previous']").addEventListener("click",o),s+e.offset<e.count&&a.querySelector("button[data-page='next']").addEventListener("click",r)}function n(){a.innerHTML=t.getLoadingParagraphHTML(`Loading ${exports.aliases.occupancies}...`),cityssm.postJSON(t.urlPrefix+"/lotOccupancies/doSearchLotOccupancies",e,i)}function l(){c.value="0",n()}function o(){c.value=Math.max(Number.parseInt(c.value,10)-s,0).toString(),n()}function r(){c.value=(Number.parseInt(c.value,10)+s).toString(),n()}const p=e.querySelectorAll("input, select");for(const t of p)t.addEventListener("change",l);e.addEventListener("submit",t=>{t.preventDefault(),l()}),n()})();
|
||||
"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){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 c=document.createElement("tbody"),n=cityssm.dateToString(new Date);for(const a of e.lotOccupancies){let e="";e=a.occupancyStartDateString<=n&&(""===a.occupancyEndDateString||a.occupancyEndDateString>=n)?'<span class="has-tooltip-right" data-tooltip="Current '+t.escapedAliases.Occupancy+'"><i class="fas fa-play" aria-label="Current '+t.escapedAliases.Occupancy+'"></i></span>':a.occupancyStartDateString>n?'<span class="has-tooltip-right" data-tooltip="Future '+t.escapedAliases.Occupancy+'"><i class="fas fa-fast-forward" aria-label="Future '+t.escapedAliases.Occupancy+'"></i></span>':'<span class="has-tooltip-right" data-tooltip="Past '+t.escapedAliases.Occupancy+'"><i class="fas fa-stop" aria-label="Past '+t.escapedAliases.Occupancy+'"></i></span>';let s="";for(const t of a.lotOccupancyOccupants)s+='<span class="has-tooltip-left" data-tooltip="'+cityssm.escapeHTML(t.lotOccupantType||"")+'"><i class="fas fa-fw fa-'+cityssm.escapeHTML(t.fontAwesomeIconClass||"user")+'" aria-hidden="true"></i> '+cityssm.escapeHTML(t.occupantName||"")+"</span><br />";c.insertAdjacentHTML("beforeend",'<tr><td class="has-width-1">'+e+'</td><td><a class="has-text-weight-bold" href="'+t.urlPrefix+"/lotOccupancies/"+a.lotOccupancyId+'">'+cityssm.escapeHTML(a.occupancyType)+"</a></td><td>"+(a.lotName?'<a class="has-tooltip-right" data-tooltip="'+cityssm.escapeHTML(a.lotType||"")+'" href="'+t.urlPrefix+"/lots/"+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(a.mapName||"")+"</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(c),a.insertAdjacentHTML("beforeend",t.getSearchResultsPagerHTML(s,e.offset,e.count)),e.offset>0&&a.querySelector("button[data-page='previous']").addEventListener("click",o),s+e.offset<e.count&&a.querySelector("button[data-page='next']").addEventListener("click",l)}function r(){a.innerHTML=t.getLoadingParagraphHTML(`Loading ${exports.aliases.occupancies}...`),cityssm.postJSON(t.urlPrefix+"/lotOccupancies/doSearchLotOccupancies",e,n)}function i(){c.value="0",r()}function o(){c.value=Math.max(Number.parseInt(c.value,10)-s,0).toString(),r()}function l(){c.value=(Number.parseInt(c.value,10)+s).toString(),r()}const p=e.querySelectorAll("input, select");for(const t of p)t.addEventListener("change",i);e.addEventListener("submit",t=>{t.preventDefault(),i()}),r()})();
|
||||
|
|
@ -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),i=document.querySelector("#searchFilter--offset");function o(t){if(0===t.lots.length)return void(s.innerHTML='<div class="message is-info"><p class="message-body">There are no '+e.escapedAliases.lots+" that meet the search criteria.</p></div>");const i=document.createElement("tbody");for(const s of t.lots)i.insertAdjacentHTML("beforeend",'<tr><td><a class="has-text-weight-bold" href="'+e.urlPrefix+"/lots/"+s.lotId+'">'+cityssm.escapeHTML(s.lotName||"")+'</a></td><td><a href="'+e.urlPrefix+"/maps/"+s.mapId+'">'+(s.mapName?cityssm.escapeHTML(s.mapName):'<span class="has-text-grey">(No Name)</span>')+"</a></td><td>"+cityssm.escapeHTML(s.lotType||"")+"</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"><thead><tr><th>'+e.escapedAliases.Lot+"</th><th>"+e.escapedAliases.Map+"</th><th>"+e.escapedAliases.Lot+' Type</th><th>Status</th></tr></thead><table><div class="level"><div class="level-left"><div class="level-item has-text-weight-bold">Displaying '+(t.offset+1).toString()+" to "+Math.min(t.count,a+t.offset)+" of "+t.count+'</div></div><div class="level-right">'+(t.offset>0?'<div class="level-item"><button class="button is-rounded is-link is-outlined" data-page="previous" type="button" title="Previous"><i class="fas fa-arrow-left" aria-hidden="true"></i></button></div>':"")+(a+t.offset<t.count?'<div class="level-item"><button class="button is-rounded is-link" data-page="next" type="button" title="Next"><span>Next</span><span class="icon"><i class="fas fa-arrow-right" aria-hidden="true"></i></span></button></div>':"")+"</div></div>",s.querySelector("table").append(i),t.offset>0&&s.querySelector("button[data-page='previous']").addEventListener("click",n),a+t.offset<t.count&&s.querySelector("button[data-page='next']").addEventListener("click",c)}function l(){s.innerHTML=e.getLoadingParagraphHTML(`Loading ${e.escapedAliases.Lots}...`),cityssm.postJSON(e.urlPrefix+"/lots/doSearchLots",t,o)}function r(){i.value="0",l()}function n(){i.value=Math.max(Number.parseInt(i.value,10)-a,0).toString(),l()}function c(){i.value=(Number.parseInt(i.value,10)+a).toString(),l()}const d=t.querySelectorAll("input, select");for(const e of d)e.addEventListener("change",r);t.addEventListener("submit",e=>{e.preventDefault(),r()}),l()})();
|
||||
"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),r=document.querySelector("#searchFilter--offset");function n(t){if(0===t.lots.length)return void(s.innerHTML='<div class="message is-info"><p class="message-body">There are no '+e.escapedAliases.lots+" that meet the search criteria.</p></div>");const r=document.createElement("tbody");for(const s of t.lots)r.insertAdjacentHTML("beforeend",'<tr><td><a class="has-text-weight-bold" href="'+e.urlPrefix+"/lots/"+s.lotId+'">'+cityssm.escapeHTML(s.lotName||"")+'</a></td><td><a href="'+e.urlPrefix+"/maps/"+s.mapId+'">'+(s.mapName?cityssm.escapeHTML(s.mapName):'<span class="has-text-grey">(No Name)</span>')+"</a></td><td>"+cityssm.escapeHTML(s.lotType||"")+"</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(r),t.offset>0&&s.querySelector("button[data-page='previous']").addEventListener("click",l),a+t.offset<t.count&&s.querySelector("button[data-page='next']").addEventListener("click",i)}function o(){s.innerHTML=e.getLoadingParagraphHTML(`Loading ${e.escapedAliases.Lots}...`),cityssm.postJSON(e.urlPrefix+"/lots/doSearchLots",t,n)}function c(){r.value="0",o()}function l(){r.value=Math.max(Number.parseInt(r.value,10)-a,0).toString(),o()}function i(){r.value=(Number.parseInt(r.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()})();
|
||||
File diff suppressed because one or more lines are too long
|
|
@ -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 i(s){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 o=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(t.mapName||"")+'"><i class="fas fa-fw fa-vector-square" aria-label="'+e.escapedAliases.Lot+'"></i> '+cityssm.escapeHTML(t.lotName||"(No "+exports.aliases.Lot+" Name)")+"</span><br />";for(const t of a.workOrderLotOccupancies)for(const a of t.lotOccupancyOccupants)s+='<span class="has-tooltip-left" data-tooltip="'+cityssm.escapeHTML(a.lotOccupantType||"")+'"><i class="fas fa-fw fa-'+cityssm.escapeHTML(a.fontAwesomeIconClass||"user")+'" aria-label="'+e.escapedAliases.occupant+'"></i> '+cityssm.escapeHTML(a.occupantName||"(No Name)")+"</span><br />";o.insertAdjacentHTML("beforeend",'<tr><td><a class="has-text-weight-bold" href="'+e.urlPrefix+"/workOrders/"+a.workOrderId+'">'+(a.workOrderNumber.trim()?cityssm.escapeHTML(a.workOrderNumber||""):"(No Number)")+"</a></td><td>"+cityssm.escapeHTML(a.workOrderType||"")+'<br /><span class="is-size-7">'+cityssm.escapeHTML(a.workOrderDescription||"")+'</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><div class="level"><div class="level-left"><div class="level-item has-text-weight-bold">Displaying '+(s.offset+1).toString()+" to "+Math.min(s.count,r+s.offset)+" of "+s.count+'</div></div><div class="level-right">'+(s.offset>0?'<div class="level-item"><button class="button is-rounded is-link is-outlined" data-page="previous" type="button" title="Previous"><i class="fas fa-arrow-left" aria-hidden="true"></i></button></div>':"")+(r+s.offset<s.count?'<div class="level-item"><button class="button is-rounded is-link" data-page="next" type="button" title="Next"><span>Next</span><span class="icon"><i class="fas fa-arrow-right" aria-hidden="true"></i></span></button></div>':"")+"</div></div>",a.querySelector("table").append(o),s.offset>0&&a.querySelector("button[data-page='previous']").addEventListener("click",c),r+s.offset<s.count&&a.querySelector("button[data-page='next']").addEventListener("click",d)}function l(){a.innerHTML=e.getLoadingParagraphHTML("Loading Work Orders..."),cityssm.postJSON(e.urlPrefix+"/workOrders/doSearchWorkOrders",s,i)}function n(){o.value="0",l()}function c(){o.value=Math.max(Number.parseInt(o.value,10)-r,0).toString(),l()}function d(){o.value=(Number.parseInt(o.value,10)+r).toString(),l()}const p=s.querySelectorAll("input, select");for(const e of p)e.addEventListener("change",n);s.addEventListener("submit",e=>{e.preventDefault(),n()}),l()})();
|
||||
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),(()=>{const e=exports.los,t=exports.workOrderPrints,s=document.querySelector("#form--searchFilters");e.initializeDatePickers(s);const r=document.querySelector("#container--searchResults"),a=Number.parseInt(document.querySelector("#searchFilter--limit").value,10),o=document.querySelector("#searchFilter--offset");function i(s){if(0===s.workOrders.length)return void(r.innerHTML='<div class="message is-info"><p class="message-body">There are no work orders that meet the search criteria.</p></div>');const o=document.createElement("tbody");for(const r of s.workOrders){let s="";for(const t of r.workOrderLots)s+='<span class="has-tooltip-left" data-tooltip="'+cityssm.escapeHTML(t.mapName||"")+'"><i class="fas fa-fw fa-vector-square" aria-label="'+e.escapedAliases.Lot+'"></i> '+cityssm.escapeHTML(t.lotName||"(No "+exports.aliases.Lot+" Name)")+"</span><br />";for(const t of r.workOrderLotOccupancies)for(const r of t.lotOccupancyOccupants)s+='<span class="has-tooltip-left" data-tooltip="'+cityssm.escapeHTML(r.lotOccupantType||"")+'"><i class="fas fa-fw fa-'+cityssm.escapeHTML(r.fontAwesomeIconClass||"user")+'" aria-label="'+e.escapedAliases.occupant+'"></i> '+cityssm.escapeHTML(r.occupantName||"(No Name)")+"</span><br />";o.insertAdjacentHTML("beforeend",'<tr><td><a class="has-text-weight-bold" href="'+e.urlPrefix+"/workOrders/"+r.workOrderId+'">'+(r.workOrderNumber.trim()?cityssm.escapeHTML(r.workOrderNumber||""):"(No Number)")+"</a></td><td>"+cityssm.escapeHTML(r.workOrderType||"")+'<br /><span class="is-size-7">'+cityssm.escapeHTML(r.workOrderDescription||"")+'</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> '+r.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> '+(r.workOrderCloseDate?r.workOrderCloseDateString:'<span class="has-text-grey">(No '+e.escapedAliases.WorkOrderCloseDate+")</span>")+"</span></td><td>"+(0===r.workOrderMilestoneCount?"-":r.workOrderMilestoneCompletionCount+" / "+r.workOrderMilestoneCount)+"</td>"+(t.length>0?'<td><a class="button is-small" data-tooltip="Print" href="'+e.urlPrefix+"/print/"+t[0]+"/?workOrderId="+r.workOrderId+'" target="_blank"><i class="fas fa-print" aria-label="Print"></i></a></td>':"")+"</tr>")}r.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>",r.insertAdjacentHTML("beforeend",e.getSearchResultsPagerHTML(a,s.offset,s.count)),r.querySelector("table").append(o),s.offset>0&&r.querySelector("button[data-page='previous']").addEventListener("click",c),a+s.offset<s.count&&r.querySelector("button[data-page='next']").addEventListener("click",d)}function l(){r.innerHTML=e.getLoadingParagraphHTML("Loading Work Orders..."),cityssm.postJSON(e.urlPrefix+"/workOrders/doSearchWorkOrders",s,i)}function n(){o.value="0",l()}function c(){o.value=Math.max(Number.parseInt(o.value,10)-a,0).toString(),l()}function d(){o.value=(Number.parseInt(o.value,10)+a).toString(),l()}const p=s.querySelectorAll("input, select");for(const e of p)e.addEventListener("change",n);s.addEventListener("submit",e=>{e.preventDefault(),n()}),l()})();
|
||||
|
|
@ -37,4 +37,5 @@ export interface LOS {
|
|||
hasUnsavedChanges: () => boolean;
|
||||
getMoveUpDownButtonFieldHTML: (upButtonClassNames: string, downButtonClassNames: string, isSmall?: boolean) => string;
|
||||
getLoadingParagraphHTML: (captionText?: string) => string;
|
||||
getSearchResultsPagerHTML: (limit: number, offset: number, count: number) => string;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -50,4 +50,5 @@ export interface LOS {
|
|||
|
||||
getMoveUpDownButtonFieldHTML: (upButtonClassNames: string, downButtonClassNames: string, isSmall?: boolean) => string;
|
||||
getLoadingParagraphHTML: (captionText?: string) => string;
|
||||
getSearchResultsPagerHTML: (limit: number, offset: number, count: number) => string;
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue