From 33321d742fd8d62d5b9a149afb8a910bc4572e37 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Thu, 22 Jan 2026 18:38:34 +0000 Subject: [PATCH 1/6] Initial plan From 79f60b3f1fa45b841e93a6d364abebd72f5f9f46 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Thu, 22 Jan 2026 18:43:57 +0000 Subject: [PATCH 2/6] Add missing documentation and help links for admin sections Co-authored-by: dangowans <19495149+dangowans@users.noreply.github.com> --- docs/adminAssignedTo.md | 79 ++++++++++++ docs/adminEmployeeLists.md | 102 ++++++++++++++++ docs/adminNotificationConfigurations.md | 135 +++++++++++++++++++++ views/admin/apiAuditLogs.ejs | 19 +++ views/admin/assignedTo.ejs | 6 + views/admin/dataLists.ejs | 6 + views/admin/employeeLists.ejs | 6 + views/admin/employees.ejs | 6 + views/admin/equipment.ejs | 6 + views/admin/locations.ejs | 6 + views/admin/notificationConfigurations.ejs | 19 +++ views/admin/settings.ejs | 6 + views/admin/tags.ejs | 19 +++ views/admin/userGroups.ejs | 6 + views/admin/users.ejs | 6 + views/admin/workOrderTypes.ejs | 6 + 16 files changed, 433 insertions(+) create mode 100644 docs/adminAssignedTo.md create mode 100644 docs/adminEmployeeLists.md create mode 100644 docs/adminNotificationConfigurations.md diff --git a/docs/adminAssignedTo.md b/docs/adminAssignedTo.md new file mode 100644 index 00000000..33bb26cf --- /dev/null +++ b/docs/adminAssignedTo.md @@ -0,0 +1,79 @@ +[Home](https://cityssm.github.io/shiftlog/) +• +[Help](https://cityssm.github.io/shiftlog/docs/) +• +[Administrator Tools](https://cityssm.github.io/shiftlog/docs/admin.html) + +# Assigned To Management + +The Assigned To Management section maintains a list of assignees that can be +associated with work orders and other records. This feature helps standardize +who work is assigned to, making it easier to track assignments and filter +records by assignee. + + + +## Adding an Assigned To Item + +1. Navigate to **Administrator Tools** > **Assigned To**. +2. Click the **Add Assigned To Item** button. +3. Enter the assignee name (e.g., person name, department, team, or role). +4. Optionally, select a **User Group** to restrict visibility to specific users. +5. Click **Add** to create the item. + +## Editing an Assigned To Item + +1. Navigate to **Administrator Tools** > **Assigned To**. +2. Find the item you want to edit. +3. Click the **Edit** button. +4. Update the assignee name or user group restriction as needed. +5. Click **Update** to apply changes. + +## Reordering Assigned To Items + +The order of assigned to items determines how they appear in dropdown lists +throughout the application. + +1. Navigate to **Administrator Tools** > **Assigned To**. +2. Use the drag-and-drop handle (grip icon) to reorder items. +3. Changes are saved automatically. + +## Deleting an Assigned To Item + +1. Navigate to **Administrator Tools** > **Assigned To**. +2. Find the item you want to delete. +3. Click the **Delete** button. +4. Confirm the deletion. + +⚠️ **Note**: Deleting an assigned to item will not remove it from existing +records. It will only make it unavailable for future assignments. + +## User Group Restrictions + +You can restrict the visibility of assigned to items to specific user groups. +When a user group is assigned to an item: + +- Only users in that group will see the item in their dropdown lists +- All administrators can see all items regardless of user group +- Existing records with that assignment remain visible to all users + +This feature is useful for: + +- Departmental or team-specific assignees +- Role-based assignment options +- Limiting options to relevant choices for different user groups + +--- + +## Related Links + +- [Administrator Tools](./admin.md) - Main admin documentation +- [User Management](./adminUsers.md) +- [User Group Management](./adminUserGroups.md) +- [Application Settings](./adminSettings.md) +- [Work Order Types](./adminWorkOrderTypes.md) +- [Tag Management](./adminTags.md) +- [Data Lists](./adminDataLists.md) +- [Employee Management](./adminEmployees.md) +- [Equipment Management](./adminEquipment.md) +- [Location Management](./adminLocations.md) diff --git a/docs/adminEmployeeLists.md b/docs/adminEmployeeLists.md new file mode 100644 index 00000000..46f2227f --- /dev/null +++ b/docs/adminEmployeeLists.md @@ -0,0 +1,102 @@ +[Home](https://cityssm.github.io/shiftlog/) +• +[Help](https://cityssm.github.io/shiftlog/docs/) +• +[Administrator Tools](https://cityssm.github.io/shiftlog/docs/admin.html) + +# Employee List Management + +The Employee List Management section allows administrators to create and +maintain predefined lists of employees. These lists can be quickly selected +when recording shift activities or timesheets, making data entry faster and +more consistent. + + + +## Overview + +Employee lists are useful for: + +- **Recurring shifts** - Save frequently-used employee groups +- **Department teams** - Maintain lists for each department +- **Rotation schedules** - Manage different shift rotations +- **Project teams** - Track employees working on specific projects + +## Adding an Employee List + +1. Navigate to **Administrator Tools** > **Employee Lists**. +2. Click the **Add Employee List** button. +3. Enter a descriptive name for the list (e.g., "Night Shift Crew", "Roads Department", "Weekend Team"). +4. Select employees to include in the list. +5. Optionally, select a **User Group** to restrict visibility to specific users. +6. Click **Save** to create the list. + +## Editing an Employee List + +1. Navigate to **Administrator Tools** > **Employee Lists**. +2. Find the list you want to edit. +3. Click the **Edit** button. +4. Update the list name, employees, or user group restriction as needed. +5. Click **Save** to apply changes. + +## Managing Employees in a List + +### Adding Employees + +1. Open the employee list for editing. +2. Select additional employees from the available employees list. +3. Use the drag-and-drop interface to reorder employees if needed. +4. Click **Save** to apply changes. + +### Removing Employees + +1. Open the employee list for editing. +2. Click the **Remove** button next to the employee you want to remove. +3. Click **Save** to apply changes. + +### Reordering Employees + +The order of employees in a list can be customized: + +1. Open the employee list for editing. +2. Use the drag-and-drop handle (grip icon) to reorder employees. +3. Click **Save** to apply the new order. + +## Deleting an Employee List + +1. Navigate to **Administrator Tools** > **Employee Lists**. +2. Find the list you want to delete. +3. Click the **Delete** button. +4. Confirm the deletion. + +⚠️ **Note**: Deleting an employee list will not affect existing shift or +timesheet records. It only removes the list template for future use. + +## User Group Restrictions + +You can restrict the visibility of employee lists to specific user groups. +When a user group is assigned to a list: + +- Only users in that group will see the list when recording shifts or timesheets +- All administrators can see all lists regardless of user group +- This helps keep lists organized and relevant to each user's role + +## Using Employee Lists + +Once created, employee lists appear: + +- In the shift recording interface as quick-select options +- In the timesheet entry interface for batch entry +- As shortcuts for adding multiple employees at once + +--- + +## Related Links + +- [Administrator Tools](./admin.md) - Main admin documentation +- [Employee Management](./adminEmployees.md) - Managing individual employees +- [User Management](./adminUsers.md) +- [User Group Management](./adminUserGroups.md) +- [Application Settings](./adminSettings.md) +- [Shifts](./shifts.md) - Using employee lists in shifts +- [Timesheets](./timesheets.md) - Using employee lists in timesheets diff --git a/docs/adminNotificationConfigurations.md b/docs/adminNotificationConfigurations.md new file mode 100644 index 00000000..a33df062 --- /dev/null +++ b/docs/adminNotificationConfigurations.md @@ -0,0 +1,135 @@ +[Home](https://cityssm.github.io/shiftlog/) +• +[Help](https://cityssm.github.io/shiftlog/docs/) +• +[Administrator Tools](https://cityssm.github.io/shiftlog/docs/admin.html) + +# Notification Configuration + +The Notification Configuration section allows administrators to set up +automated notifications for various events in ShiftLog. This feature ensures +that the right people are notified about important activities, assignments, +and updates in real-time. + + + +## Overview + +Notification configurations determine: + +- **What** triggers a notification (notification queue type) +- **How** the notification is sent (notification type/protocol) +- **Who** receives the notification (assigned to item) +- **When** notifications are active (active/inactive status) + +## Notification Queue Types + +Different events in ShiftLog can trigger notifications: + +- **Work Order Created** - When a new work order is created +- **Work Order Assigned** - When a work order is assigned to someone +- **Work Order Completed** - When a work order is marked as complete +- **Shift Activity Logged** - When a shift activity is recorded +- (Other queue types may be available based on your configuration) + +## Notification Types (Protocols) + +ShiftLog supports multiple notification delivery methods: + +- **Email** - Send notifications via email +- **SMS** - Send text message notifications +- **Webhook** - POST notification data to a URL +- (Available protocols depend on your system configuration) + +⚠️ **Note**: Notification protocols must be configured in the application +settings before they can be used in notification configurations. + +## Adding a Notification Configuration + +1. Navigate to **Administrator Tools** > **Notification Configuration**. +2. Click the **Add Notification Configuration** button. +3. Select a **Notification Queue** (the event that triggers the notification). +4. Select a **Notification Type** (how the notification will be sent). +5. Select an **Assigned To** item (who should receive the notification). +6. Set the **Active** status (whether the notification is enabled). +7. Click **Add** to create the configuration. + +## Editing a Notification Configuration + +1. Navigate to **Administrator Tools** > **Notification Configuration**. +2. Find the configuration you want to edit. +3. Click the **Edit** button. +4. Update the notification settings as needed. +5. Click **Save** to apply changes. + +## Activating/Deactivating Notifications + +Notification configurations can be temporarily disabled without deleting them: + +1. Navigate to **Administrator Tools** > **Notification Configuration**. +2. Find the configuration you want to enable or disable. +3. Toggle the **Active** checkbox. +4. Click **Save** to apply the change. + +**Active configurations** will send notifications when triggered. +**Inactive configurations** will not send notifications, but remain in the system. + +## Deleting a Notification Configuration + +1. Navigate to **Administrator Tools** > **Notification Configuration**. +2. Find the configuration you want to delete. +3. Click the **Delete** button. +4. Confirm the deletion. + +## Understanding Assigned To Items + +The **Assigned To** field determines who receives the notification: + +- Must match an item from the **Assigned To Management** section +- Can represent individuals, departments, teams, or roles +- The actual delivery addresses (email, phone) are configured separately + in the notification protocol settings + +## Testing Notifications + +To verify that notifications are working correctly: + +1. Create a test notification configuration +2. Trigger the event (e.g., create a test work order) +3. Verify that the notification is received +4. Review logs if notifications are not being delivered + +## Troubleshooting + +### Notifications Not Sending + +1. **Check configuration is active** - Ensure the Active checkbox is checked +2. **Verify protocol setup** - Confirm notification protocols are configured in settings +3. **Check assigned to mapping** - Verify the assigned to item has delivery addresses +4. **Review system logs** - Check application logs for error messages + +### Duplicate Notifications + +- Multiple configurations for the same queue type will send multiple notifications +- Review and consolidate configurations if receiving duplicates + +--- + +## Best Practices + +1. **Start with test configurations** - Test notifications before deploying widely +2. **Use descriptive names** - Choose clear assigned to names for easy identification +3. **Limit notifications** - Only notify for critical events to avoid alert fatigue +4. **Monitor delivery** - Regularly check that notifications are being delivered +5. **Document recipients** - Keep records of who receives what notifications +6. **Review periodically** - Audit notification configurations regularly + +--- + +## Related Links + +- [Administrator Tools](./admin.md) - Main admin documentation +- [Assigned To Management](./adminAssignedTo.md) - Managing notification recipients +- [Application Settings](./adminSettings.md) - Configuring notification protocols +- [Work Orders](./workOrders.md) - Work order documentation +- [Shifts](./shifts.md) - Shift documentation diff --git a/views/admin/apiAuditLogs.ejs b/views/admin/apiAuditLogs.ejs index a9280409..dbc32379 100644 --- a/views/admin/apiAuditLogs.ejs +++ b/views/admin/apiAuditLogs.ejs @@ -24,6 +24,19 @@ +