diff --git a/handlers/workOrders-get/search.js b/handlers/workOrders-get/search.js index 54d0524b..4601bda3 100644 --- a/handlers/workOrders-get/search.js +++ b/handlers/workOrders-get/search.js @@ -1,9 +1,11 @@ import { getWorkOrderTypes } from "../../helpers/functions.cache.js"; export const handler = (request, response) => { + const workOrderOpenDateString = request.query.workOrderOpenDateString; const workOrderTypes = getWorkOrderTypes(); response.render("workOrder-search", { headTitle: "Work Order Search", - workOrderTypes + workOrderTypes, + workOrderOpenDateString }); }; export default handler; diff --git a/handlers/workOrders-get/search.ts b/handlers/workOrders-get/search.ts index 30f620d7..d833cad0 100644 --- a/handlers/workOrders-get/search.ts +++ b/handlers/workOrders-get/search.ts @@ -3,11 +3,15 @@ import type { RequestHandler } from "express"; import { getWorkOrderTypes } from "../../helpers/functions.cache.js"; export const handler: RequestHandler = (request, response) => { + + const workOrderOpenDateString = request.query.workOrderOpenDateString; + const workOrderTypes = getWorkOrderTypes(); response.render("workOrder-search", { headTitle: "Work Order Search", - workOrderTypes + workOrderTypes, + workOrderOpenDateString }); }; diff --git a/public-typescript/workOrderSearch.js b/public-typescript/workOrderSearch.js index bec19493..12f53053 100644 --- a/public-typescript/workOrderSearch.js +++ b/public-typescript/workOrderSearch.js @@ -132,5 +132,28 @@ Object.defineProperty(exports, "__esModule", { value: true }); formEvent.preventDefault(); resetOffsetAndGetWorkOrders(); }); + const workOrderOpenDateStringElement = document.querySelector("#searchFilter--workOrderOpenDateString"); + document.querySelector("#button--workOrderOpenDateString-previous").addEventListener("click", () => { + if (workOrderOpenDateStringElement.value === "") { + workOrderOpenDateStringElement.valueAsDate = new Date(); + } + else { + const openDate = workOrderOpenDateStringElement.valueAsDate; + openDate.setDate(openDate.getDate() - 1); + workOrderOpenDateStringElement.valueAsDate = openDate; + } + resetOffsetAndGetWorkOrders(); + }); + document.querySelector("#button--workOrderOpenDateString-next").addEventListener("click", () => { + if (workOrderOpenDateStringElement.value === "") { + workOrderOpenDateStringElement.valueAsDate = new Date(); + } + else { + const openDate = workOrderOpenDateStringElement.valueAsDate; + openDate.setDate(openDate.getDate() + 1); + workOrderOpenDateStringElement.valueAsDate = openDate; + } + resetOffsetAndGetWorkOrders(); + }); getWorkOrders(); })(); diff --git a/public-typescript/workOrderSearch.ts b/public-typescript/workOrderSearch.ts index 8d9612aa..105b65cb 100644 --- a/public-typescript/workOrderSearch.ts +++ b/public-typescript/workOrderSearch.ts @@ -176,5 +176,33 @@ declare const cityssm: cityssmGlobal; resetOffsetAndGetWorkOrders(); }); + const workOrderOpenDateStringElement = document.querySelector("#searchFilter--workOrderOpenDateString") as HTMLInputElement; + + document.querySelector("#button--workOrderOpenDateString-previous").addEventListener("click", () => { + + if (workOrderOpenDateStringElement.value === "") { + workOrderOpenDateStringElement.valueAsDate = new Date(); + } else { + const openDate = workOrderOpenDateStringElement.valueAsDate; + openDate.setDate(openDate.getDate() - 1); + workOrderOpenDateStringElement.valueAsDate = openDate; + } + + resetOffsetAndGetWorkOrders(); + }); + + document.querySelector("#button--workOrderOpenDateString-next").addEventListener("click", () => { + + if (workOrderOpenDateStringElement.value === "") { + workOrderOpenDateStringElement.valueAsDate = new Date(); + } else { + const openDate = workOrderOpenDateStringElement.valueAsDate; + openDate.setDate(openDate.getDate() + 1); + workOrderOpenDateStringElement.valueAsDate = openDate; + } + + resetOffsetAndGetWorkOrders(); + }); + getWorkOrders(); })(); diff --git a/public/javascripts/workOrderSearch.min.js b/public/javascripts/workOrderSearch.min.js index c32dfd74..60d87993 100644 --- a/public/javascripts/workOrderSearch.min.js +++ b/public/javascripts/workOrderSearch.min.js @@ -1 +1 @@ -"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),(()=>{const e=document.querySelector("main").dataset.urlPrefix,t=document.querySelector("#form--searchFilters"),r=document.querySelector("#container--searchResults"),s=Number.parseInt(document.querySelector("#searchFilter--limit").value,10),a=document.querySelector("#searchFilter--offset"),i=()=>{const i=Number.parseInt(a.value,10);r.innerHTML='
| Work Order Number | Work Order Description | Date | Progress |
|---|
| '+cityssm.escapeHTML(r.workOrderNumber)+" | "+cityssm.escapeHTML(r.workOrderType)+' '+cityssm.escapeHTML(r.workOrderDescription)+' | '+r.workOrderOpenDateString+' '+(r.workOrderCloseDate?r.workOrderCloseDateString:'(No Close Date)')+" | "+(0===r.workOrderMilestoneCount?"-":r.workOrderMilestoneCompletionCount+" / "+r.workOrderMilestoneCount)+" |
| Work Order Number | Work Order Description | Date | Progress |
|---|