cityssm/lottery-licence-manager

View on GitHub
handlers/dashboard-get/dashboard.js

Summary

Maintainability
A
0 mins
Test Coverage
D
65%
import { getDashboardStats } from "../../helpers/licencesDB/getDashboardStats.js";
import { getApplicationSetting } from "../../helpers/licencesDB/getApplicationSetting.js";
import { getNextExternalLicenceNumberFromRange } from "../../helpers/licencesDB/getNextExternalLicenceNumberFromRange.js";
import * as configFunctions from "../../helpers/functions.config.js";
export const handler = (_request, response) => {
    const stats = getDashboardStats();
    let dashboardWarningMessage = "";
    if (configFunctions.getProperty("licences.externalLicenceNumber.newCalculation") === "range") {
        const rangeEnd = Number.parseInt(getApplicationSetting("licences.externalLicenceNumber.range.end") || "0", 10);
        if (rangeEnd !== 0) {
            const nextExternalLicenceNumber = getNextExternalLicenceNumberFromRange();
            if (nextExternalLicenceNumber === -1 || (rangeEnd - nextExternalLicenceNumber <= 50)) {
                dashboardWarningMessage = "There are less than 50 remaining licence numbers left in the current range.";
            }
        }
    }
    response.render("dashboard", {
        headTitle: "Dashboard",
        stats,
        dashboardWarningMessage
    });
};
export default handler;