<%- include('_header'); -%>

<%= configFunctions.getProperty("application.applicationName") %>

<% if (workOrderMilestones.length > 0) { %> <% const workOrderPrints = configFunctions.getProperty("settings.workOrders.prints"); %>

Today's Milestones

<%= workOrderMilestones.length %>
<% for (const milestone of workOrderMilestones) { %>
<% if (milestone.workOrderMilestoneCompletionDate) { %> <% } else { %> <% } %>
<% if (workOrderPrints.length > 0) { %> <% } %> <% if (milestone.workOrderMilestoneTime) { %> <%= milestone.workOrderMilestoneTimeString %>
<% } %> <% if (milestone.workOrderMilestoneTypeId) { %> <%= milestone.workOrderMilestoneType %>
<% } %> <%= milestone.workOrderNumber %>
<% if (milestone.workOrderLots.length > 0) { for (const lot of milestone.workOrderLots) { %> "> <%= lot.lotName %>
<% } } if (milestone.workOrderLotOccupancies.length > 0) { for (const occupancy of milestone.workOrderLotOccupancies) { for (const occupant of occupancy.lotOccupancyOccupants) { %> "> <%= occupant.occupantName %> <%= occupant.occupantFamilyName %>
<% } } } %>
<% } %>
<% } %>
<% if (workOrderCount > 0) { %> <%= workOrderCount %> <% } %>

View and maintain work orders.

View and maintain current and past <%= configFunctions.getProperty("aliases.occupancies").toLowerCase() %>.

<% if (user.userProperties.canUpdate) { %> <% } %>

View and maintain <%= configFunctions.getProperty("aliases.lots").toLowerCase() %> within a <%= configFunctions.getProperty("aliases.map").toLowerCase() %>.

<% if (user.userProperties.canUpdate) { %> <% } %>

View and maintain <%= configFunctions.getProperty("aliases.maps").toLowerCase() %>.

<% if (user.userProperties.canUpdate) { %> <% } %>

Report Library

Produce reports and export data.

Instructions on how to use this application.

<% if (user.userProperties.isAdmin) { %>

Administrator Tools

Fee Management

Manage fees for <%= configFunctions.getProperty("aliases.lot").toLowerCase() %> <%= configFunctions.getProperty("aliases.occupancy").toLowerCase() %> and specific <%= configFunctions.getProperty("aliases.lot").toLowerCase() %> types.

<%= configFunctions.getProperty("aliases.occupancy") %> Type Management

Manage <%= configFunctions.getProperty("aliases.occupancy").toLowerCase() %> types, the fields associated with them, and their available print options.

<%= configFunctions.getProperty("aliases.lot") %> Type Management

Manage <%= configFunctions.getProperty("aliases.lot").toLowerCase() %> types and fields associated with them.

Config Table Management

Manage simple configuration tables fees for work order types, <%= configFunctions.getProperty("aliases.lot").toLowerCase() %> statuses, and <%= configFunctions.getProperty("aliases.lot").toLowerCase() %> <%= configFunctions.getProperty("aliases.occupant").toLowerCase() %> types.

Database Maintenance

Backup the database before making significant updates. Permanently delete records that have been previously deleted from the database.

<% if (configFunctions.getProperty("application.ntfyStartup")) { %>

Ntfy Startup Notification

Subscribe to application startup notifications on a phone or a desktop computer.

<% } %>
<% } %>
<%- include('_footerA'); -%> <%- include('_footerB'); -%>