Schedule Tab
The Schedule tab (Office > Technicians > Schedule) gives managers a Gantt-style daily view of every technician's work schedule. You can add, edit, move, and resize schedule blocks, and a collapsible sidebar surfaces technicians who are unscheduled, on time off, or have pending PTO requests.
This tab shares the same schedule entry drawer used by the main Schedule page's Timeline view, so the workflow is consistent across both areas.
Opening the Schedule Tab
- Go to Office > Technicians.
- Click the Schedule tab.
The Gantt loads for today's date by default. The selected date is preserved in the browser URL, so you can bookmark or share a specific day's view.
Layout Overview
Toolbar
The toolbar sits above the Gantt and contains two sections:
| Control | Description |
|---|---|
| Date navigation | Left/right arrows to move one day; click the date to open a calendar picker |
| Add Schedule | Opens the schedule entry drawer in create mode (no technician pre-selected) |
| Business Hours / All Hours | Toggles the hour range between business hours and a full 24-hour day |
Gantt Grid
The main area is a horizontally scrollable grid:
- Teams & Technicians column (fixed, 180 px) — lists each team header followed by its scheduled technicians
- Hour columns (60 px each) — labeled with 12-hour time (8AM, 9AM, …) from your selected range
- Schedule bars — colored horizontal bars representing each technician's work block for the day
Unassigned teams (id = 0) are automatically excluded from the view.
Right Sidebar
A collapsible panel on the right side shows three accordion sections. Collapse or expand the entire sidebar using the toggle button; its state is remembered across page refreshes.
| Section | Badge color | Contents |
|---|---|---|
| Unscheduled | Amber | Technicians who have no schedule block for the selected day |
| Time Off | Blue | Employees with an out-code (PTO, Sick, Excused, Unexcused, Time Off, Holiday) |
| PTO Requests | Purple | PTO requests for the day, showing status (Pending / Approved / Denied / Cancelled) |
Each section shows a count badge and collapses individually. When all sections are empty, the sidebar displays an "All Clear" message with a green checkmark.
Viewing Technician Details
Hovering over a technician's avatar in the Gantt reveals a quick-preview card showing:
- Name and team (with team color dot)
- Scheduled time for their first block (e.g., "Scheduled: 8:30 AM – 4:30 PM")
Click the avatar to open the full Technician Details Drawer for deeper profile information.
Adding a Schedule Entry
From the toolbar
- Click Add Schedule in the toolbar.
- In the drawer that opens, search for a technician by name.
- Fill in the remaining fields (see Schedule Entry Drawer below).
- Click Add Schedule.
From the sidebar (drag-and-drop)
- In the Unscheduled section, locate the technician card.
- Drag the card onto a team row in the Gantt at the desired start time.
- The schedule entry drawer opens pre-filled with the target team and drop position.
- Adjust any fields, then click Add Schedule.
From the sidebar (click)
- Click a technician card in the Unscheduled section.
- The schedule entry drawer opens with that technician pre-selected.
- Select the team, adjust times, and click Add Schedule.
Editing a Schedule Entry
Click any schedule bar in the Gantt. The Schedule Entry Drawer opens in edit mode, showing the existing values. Make your changes and click Save Changes.
Moving a schedule bar
Drag a schedule bar left or right to change its start/end time, or drag it into a different team row to reassign. The move is saved automatically.
Resizing a schedule bar
Drag the right edge of a schedule bar to extend or shorten the end time. The change is saved automatically.
Schedule Entry Drawer
The drawer is used for both creating and editing schedule entries.
Header
- Title: "Add Schedule" or "Edit Schedule"
- Description: Technician name (as a quick-actions link) + date + time range; or "Create a new schedule entry" when no technician is pre-selected
Fields
| Field | Required | Description |
|---|---|---|
| Technician | Yes (create only) | Searchable dropdown — only shown when no technician was pre-selected |
| Start | Yes | Date + time picker (default: today at 8:30 AM) |
| End | Yes | Date + time picker (default: today at 4:30 PM) |
| Team | Yes | Dropdown of active teams, each shown with a color dot |
| Position | Yes | Role on the team: Captain, Team Member (default), Extra, Trainee |
| Status | Yes | Out-code for the schedule entry (see table below) |
| Mark as Late | No | Checkbox; highlights the entry to indicate a late arrival |
| Reason / Notes | No | Free-text notes about the schedule entry |
Status options:
| Value | Meaning |
|---|---|
| Available | Normal scheduled day (default) |
| Excused | Absence that is excused |
| Unexcused | Absence that is not excused |
| Paid Time Off | PTO taken |
| Time Off | Unpaid time off |
| Sick | Sick day |
| Holiday | Company holiday |
Footer buttons
| Button | Availability | Action |
|---|---|---|
| Delete | Edit mode only | Prompts for confirmation, then removes the schedule entry |
| Cancel time off | Edit mode, when the entry came from a time-off request | Opens a confirmation to cancel the linked time-off request (see below) |
| Cancel | Always | Closes the drawer without saving |
| Add Schedule / Save Changes | Always | Saves the entry (disabled until Technician and Team are selected) |
Cancel time off
If a schedule entry was created from a time-off request, the drawer shows an umbrella Cancel time off button. It does not appear if the request is already Cancelled or Denied, or if you do not have permission to cancel time-off requests.
- Click Cancel time off.
- In the Cancel Time-Off Request window, click Cancel Request. Click Keep Request to leave it as is.
The request is cancelled and the technician's schedule is freed up. If the request was already approved, the hours that were deducted are refunded to the technician's balance. A Time off cancelled message appears and the drawer closes.
Sidebar Sections in Detail
Unscheduled
Shows every active technician who has no schedule block on the selected date. Each card displays the technician's avatar and name.
- Drag the card onto a Gantt row to pre-fill team and time in the drawer.
- Click the card to open the drawer with the technician pre-selected.
Time Off
Shows technicians who have an out-code recorded for the selected date. Each card displays:
- Technician avatar and name
- Status badge (color-coded: PTO = purple, Sick = red, others = amber/orange)
PTO Requests
Shows PTO requests for the selected date. Each card displays:
-
Technician name and PTO type
-
Total hours requested
-
Status badge:
Status Badge color Pending Yellow Approved Green Denied Red Cancelled Gray
Permissions
| Permission | Description |
|---|---|
| View technician schedules | View the Schedule tab |
| Manage technician schedules | Full schedule management access |
| View schedule | Read schedule entries |
| Create schedule | Add new schedule entries |
| Update schedule | Edit existing schedule entries |
| Delete schedule | Delete schedule entries |
The Schedule tab is part of the core Technicians module and does not require a separate feature flag.
Role access:
| Role | Access level |
|---|---|
| Administrator | Full (view, create, edit, delete) |
| Office | Full (view, create, edit, delete) |
| HR Admin | View, create, and edit (no delete) |
| Payroll Admin | View and create only |
| Sales | No access |
| Technician | No access |