diff --git a/handlers/api-get/milestoneICS.js b/handlers/api-get/milestoneICS.js index c58ba596..ecd4737a 100644 --- a/handlers/api-get/milestoneICS.js +++ b/handlers/api-get/milestoneICS.js @@ -203,13 +203,13 @@ export const handler = (request, response) => { if (organizerSet) { calendarEvent.createAttendee({ name: occupant.occupantName, - email: "no-reply@127.0.0.1" + email: configFunctions.getProperty("settings.workOrders.calendarEmailAddress") }); } else { calendarEvent.organizer({ name: occupant.occupantName, - email: "no-reply@127.0.0.1" + email: configFunctions.getProperty("settings.workOrders.calendarEmailAddress") }); organizerSet = true; } @@ -219,7 +219,7 @@ export const handler = (request, response) => { else { calendarEvent.organizer({ name: milestone.recordCreate_userName, - email: "no-reply@127.0.0.1" + email: configFunctions.getProperty("settings.workOrders.calendarEmailAddress") }); } } diff --git a/handlers/api-get/milestoneICS.ts b/handlers/api-get/milestoneICS.ts index 24f7f7fb..cf23a1ae 100644 --- a/handlers/api-get/milestoneICS.ts +++ b/handlers/api-get/milestoneICS.ts @@ -291,12 +291,12 @@ export const handler: RequestHandler = (request, response) => { if (organizerSet) { calendarEvent.createAttendee({ name: occupant.occupantName, - email: "no-reply@127.0.0.1" + email: configFunctions.getProperty("settings.workOrders.calendarEmailAddress") }); } else { calendarEvent.organizer({ name: occupant.occupantName, - email: "no-reply@127.0.0.1" + email: configFunctions.getProperty("settings.workOrders.calendarEmailAddress") }); organizerSet = true; } @@ -305,7 +305,7 @@ export const handler: RequestHandler = (request, response) => { } else { calendarEvent.organizer({ name: milestone.recordCreate_userName, - email: "no-reply@127.0.0.1" + email: configFunctions.getProperty("settings.workOrders.calendarEmailAddress") }); } } diff --git a/helpers/functions.config.d.ts b/helpers/functions.config.d.ts index c20c5e6d..b1ddd020 100644 --- a/helpers/functions.config.d.ts +++ b/helpers/functions.config.d.ts @@ -35,4 +35,5 @@ export declare function getProperty(propertyName: "settings.fees.taxPercentageDe export declare function getProperty(propertyName: "settings.workOrders.workOrderNumberLength"): number; export declare function getProperty(propertyName: "settings.workOrders.workOrderMilestoneDateRecentBeforeDays"): number; export declare function getProperty(propertyName: "settings.workOrders.workOrderMilestoneDateRecentAfterDays"): number; +export declare function getProperty(propertyName: "settings.workOrders.calendarEmailAddress"): string; export declare const keepAliveMillis: number; diff --git a/helpers/functions.config.js b/helpers/functions.config.js index 3899a880..e429a954 100644 --- a/helpers/functions.config.js +++ b/helpers/functions.config.js @@ -34,6 +34,7 @@ configFallbackValues.set("settings.fees.taxPercentageDefault", 0); configFallbackValues.set("settings.workOrders.workOrderNumberLength", 6); configFallbackValues.set("settings.workOrders.workOrderMilestoneDateRecentBeforeDays", 5); configFallbackValues.set("settings.workOrders.workOrderMilestoneDateRecentAfterDays", 60); +configFallbackValues.set("settings.workOrders.calendarEmailAddress", "no-reply@127.0.0.1"); export function getProperty(propertyName) { const propertyNameSplit = propertyName.split("."); let currentObject = config; diff --git a/helpers/functions.config.ts b/helpers/functions.config.ts index 79fea77a..cc2d1e53 100644 --- a/helpers/functions.config.ts +++ b/helpers/functions.config.ts @@ -11,10 +11,7 @@ import type * as configTypes from "../types/configTypes"; const configFallbackValues = new Map(); configFallbackValues.set("application.applicationName", "Lot Occupancy System"); -configFallbackValues.set( - "application.backgroundURL", - "/images/cemetery-background.jpg" -); +configFallbackValues.set("application.backgroundURL", "/images/cemetery-background.jpg"); configFallbackValues.set("application.logoURL", "/images/cemetery-logo.png"); configFallbackValues.set("application.httpPort", 7000); configFallbackValues.set("application.useTestDatabases", false); @@ -40,64 +37,42 @@ configFallbackValues.set("aliases.occupancy", "Occupancy"); configFallbackValues.set("aliases.occupancies", "Occupancies"); configFallbackValues.set("aliases.occupant", "Occupant"); configFallbackValues.set("aliases.occupants", "Occupants"); -configFallbackValues.set( - "aliases.externalReceiptNumber", - "External Receipt Number" -); +configFallbackValues.set("aliases.externalReceiptNumber", "External Receipt Number"); configFallbackValues.set("settings.map.mapCityDefault", ""); configFallbackValues.set("settings.map.mapProvinceDefault", ""); -configFallbackValues.set( - "settings.lot.lotNameSortNameFunction", - (lotName: string) => lotName -); +configFallbackValues.set("settings.lot.lotNameSortNameFunction", (lotName: string) => lotName); -configFallbackValues.set( - "settings.lotOccupancy.occupancyEndDateIsRequired", - true -); +configFallbackValues.set("settings.lotOccupancy.occupancyEndDateIsRequired", true); configFallbackValues.set("settings.lotOccupancy.occupantCityDefault", ""); configFallbackValues.set("settings.lotOccupancy.occupantProvinceDefault", ""); configFallbackValues.set("settings.fees.taxPercentageDefault", 0); configFallbackValues.set("settings.workOrders.workOrderNumberLength", 6); -configFallbackValues.set( - "settings.workOrders.workOrderMilestoneDateRecentBeforeDays", - 5 -); -configFallbackValues.set( - "settings.workOrders.workOrderMilestoneDateRecentAfterDays", - 60 -); +configFallbackValues.set("settings.workOrders.workOrderMilestoneDateRecentBeforeDays", 5); +configFallbackValues.set("settings.workOrders.workOrderMilestoneDateRecentAfterDays", 60); +configFallbackValues.set("settings.workOrders.calendarEmailAddress", "no-reply@127.0.0.1"); /* * Set up function overloads */ -export function getProperty( - propertyName: "application.applicationName" -): string; +export function getProperty(propertyName: "application.applicationName"): string; export function getProperty(propertyName: "application.logoURL"): string; export function getProperty(propertyName: "application.httpPort"): number; export function getProperty(propertyName: "application.userDomain"): string; -export function getProperty( - propertyName: "application.useTestDatabases" -): boolean; +export function getProperty(propertyName: "application.useTestDatabases"): boolean; -export function getProperty( - propertyName: "activeDirectory" -): configTypes.ConfigActiveDirectory; +export function getProperty(propertyName: "activeDirectory"): configTypes.ConfigActiveDirectory; export function getProperty(propertyName: "users.canLogin"): string[]; export function getProperty(propertyName: "users.canUpdate"): string[]; export function getProperty(propertyName: "users.isAdmin"): string[]; -export function getProperty( - propertyName: "reverseProxy.disableCompression" -): boolean; +export function getProperty(propertyName: "reverseProxy.disableCompression"): boolean; export function getProperty(propertyName: "reverseProxy.disableEtag"): boolean; export function getProperty(propertyName: "reverseProxy.urlPrefix"): string; @@ -116,21 +91,13 @@ export function getProperty(propertyName: "aliases.occupancies"): string; export function getProperty(propertyName: "aliases.occupant"): string; export function getProperty(propertyName: "aliases.occupants"): string; -export function getProperty( - propertyName: "aliases.externalReceiptNumber" -): string; +export function getProperty(propertyName: "aliases.externalReceiptNumber"): string; -export function getProperty( - propertyName: "settings.map.mapCityDefault" -): string; +export function getProperty(propertyName: "settings.map.mapCityDefault"): string; -export function getProperty( - propertyName: "settings.map.mapProvinceDefault" -): string; +export function getProperty(propertyName: "settings.map.mapProvinceDefault"): string; -export function getProperty( - propertyName: "settings.lot.lotNamePattern" -): RegExp; +export function getProperty(propertyName: "settings.lot.lotNamePattern"): RegExp; export function getProperty( propertyName: "settings.lot.lotNameSortNameFunction" @@ -140,21 +107,13 @@ export function getProperty( propertyName: "settings.lotOccupancy.occupancyEndDateIsRequired" ): boolean; -export function getProperty( - propertyName: "settings.lotOccupancy.occupantCityDefault" -): string; +export function getProperty(propertyName: "settings.lotOccupancy.occupantCityDefault"): string; -export function getProperty( - propertyName: "settings.lotOccupancy.occupantProvinceDefault" -): string; +export function getProperty(propertyName: "settings.lotOccupancy.occupantProvinceDefault"): string; -export function getProperty( - propertyName: "settings.fees.taxPercentageDefault" -): number; +export function getProperty(propertyName: "settings.fees.taxPercentageDefault"): number; -export function getProperty( - propertyName: "settings.workOrders.workOrderNumberLength" -): number; +export function getProperty(propertyName: "settings.workOrders.workOrderNumberLength"): number; export function getProperty( propertyName: "settings.workOrders.workOrderMilestoneDateRecentBeforeDays" @@ -164,18 +123,15 @@ export function getProperty( propertyName: "settings.workOrders.workOrderMilestoneDateRecentAfterDays" ): number; +export function getProperty(propertyName: "settings.workOrders.calendarEmailAddress"): string; + export function getProperty(propertyName: string): unknown { const propertyNameSplit = propertyName.split("."); let currentObject = config; for (const propertyNamePiece of propertyNameSplit) { - if ( - Object.prototype.hasOwnProperty.call( - currentObject, - propertyNamePiece - ) - ) { + if (Object.prototype.hasOwnProperty.call(currentObject, propertyNamePiece)) { currentObject = currentObject[propertyNamePiece]; continue; } diff --git a/types/configTypes.d.ts b/types/configTypes.d.ts index 9298db04..5b35d014 100644 --- a/types/configTypes.d.ts +++ b/types/configTypes.d.ts @@ -46,6 +46,7 @@ export interface Config { workOrderNumberLength?: number; workOrderMilestoneDateRecentBeforeDays?: number; workOrderMilestoneDateRecentAfterDays?: number; + calendarEmailAddress?: string; }; }; } diff --git a/types/configTypes.ts b/types/configTypes.ts index 4589b076..d885858e 100644 --- a/types/configTypes.ts +++ b/types/configTypes.ts @@ -46,6 +46,7 @@ export interface Config { workOrderNumberLength?: number; workOrderMilestoneDateRecentBeforeDays?: number; workOrderMilestoneDateRecentAfterDays?: number; + calendarEmailAddress?: string; }; }; }