Skip to content

Work Schedule Preferences

Tier: Pro/Agency | Type: User-Facing UI

Part of Client Retainer Intelligence & Tracking.

Overview

Per-user settings that control how the retainer system calculates pacing, daily targets, and workday boundaries. These preferences affect every retainer calculation across all clients.

How to Access

On any client's Activity / Logs / Reports tab, click the calendar icon button in the Work Log section to open the Work Schedule settings panel.

Settings

Setting Options Default Description
Include Weekends On/Off Off When enabled, Saturday and Sunday count as available workdays for pacing calculations. Useful if you regularly work weekends.
Workday End Hour 1:00 AM - 11:00 PM 9:00 PM The hour your workday ends. Used to calculate whether today's daily target is reachable given the current time.
Timezone All IANA timezones Auto-detected Your timezone, used for determining "today" in all pacing calculations.

Timezone Auto-Detection

On your first visit, the system detects your browser's timezone using Intl.DateTimeFormat().resolvedOptions().timeZone and saves it automatically via POST /api/work-schedule. This ensures pacing calculations use the correct local date and time without manual configuration.

What These Settings Affect

  • Daily target calculation -- "Remaining hours / workdays left" uses the weekend toggle to determine which days count
  • Workdays remaining -- Excludes weekends unless the toggle is on
  • "Unreachable today" detection -- Compares daily target against hours left in the day (current hour vs. workday end hour)
  • Tomorrow's target preview -- Accounts for whether today counts as a workday
  • Burnout alerts -- Weekend work frequency detection adjusts based on the weekend toggle
  • Stats ticker slides -- All tier breakdowns and pacing slides use these preferences

API

Method Endpoint Purpose
GET /api/work-schedule Get current work schedule preferences
POST /api/work-schedule Save work schedule preferences

Database

Column Table Type Description
include_weekends users Boolean Whether weekends are workdays
timezone users String IANA timezone identifier
workday_end_hour users Integer Hour (0-23) when the workday ends