Commit graph

13 commits

Author SHA1 Message Date
1b8e04039d Replace letter icons with Lucide PWA icons 2026-07-11 20:30:07 +00:00
fbda399d21 Make hk-planner installable as a PWA
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-07-11 11:27:00 +00:00
c0b1d2a62e Move general tasks + time reqs to Settings; add date adjustments
- Rename 'Category Settings' to 'Settings' (nav, page title, component)
- Move Recurring General Tasks and Time Requirements editing to Settings page
- Planner still loads both for calcRequired calculations
- Add date-specific Adjustments section to Planner: per-date +/- hour
  offsets keyed by YYYY-MM-DD (non-recurring); feed into Required Hours total
- Adjustments row shown in Required Hours tfoot when non-zero

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-07-07 21:11:21 +00:00
b803b01ae1 Add Workforce rota integration to HK Planner
Pulls HK staff shifts from Workforce.com API into the staff rota section.
Rota rows (read-only, WF badge, times+hours per day) appear above manual rows;
manual name inputs get a datalist populated from WF staff. Sync triggered via
button with stale-week detection. Dept selection stored per-app in CategorySettings.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-07-07 20:47:09 +00:00
490a9a558b Rename app to Rota Check
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-07-04 13:19:40 +00:00
e7975db4a3 Show hours to 2 decimal places (0.75h instead of 0.8h)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-07-02 15:43:40 +00:00
74d8951fe2 Center D/S/A values and header in their column
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-07-02 15:28:34 +00:00
087553054e Move booking delta ticker above occupied count in Rooms cell
▲/▼ indicators relate to occupied rooms, not D/S/A breakdown,
so move them to the top of the Rooms cell in both CatRows and TotalRows.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-07-02 15:04:55 +00:00
97e99735ce Summary table: stronger day borders, weekend bg, and WP-accurate tooltips
- 2px left border on Rooms th/td marks each day boundary clearly
- Saturday/Sunday columns get a subtle blue-tinted background
- Occupied number shows pickup-change context + prior week stats on hover
- '+' pickup button shows prior week line (matching original WP plugin logic)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-07-02 14:44:35 +00:00
31fd73ce1e Summary table: split Rooms and D/S/A into separate columns per day
Match the original WP plugin layout — left cell has occupied count, vac,
and pickup controls; right cell has departs/stays/arrivals stacked
vertically, right-aligned, with delta indicators above them.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-07-02 14:34:21 +00:00
135f1f6cf0 Add CalendarClock icon, planner/settings capabilities
- backend/src/auth.js: extract caps from JWT (planner/settings), hasCap/requireCap
- backend/src/routes/config.js: gate categories + test-connection on requireCap('settings')
- frontend/src/types.ts: add caps[] to User, export can() helper
- frontend/src/App.tsx: gate /settings route on can(user, 'settings')
- frontend/src/components/Layout.tsx: gate nav item on can(user, 'settings')

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-07-02 14:29:58 +00:00
773d323060 Fix compose: use default bridge network, match cashup service names
The frontend nginx proxies to 'backend:3001', so services must be named
backend/frontend. Drop the external hnf_net network (each app runs in its
own LXC) and add apparmor=unconfined for docker-in-LXC.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-07-02 14:03:33 +00:00
4abae5eda1 Initial commit: HK Planner app
Housekeeping workload and hours planning app — port of the WP hotel
housekeeping hours calculator plugin. 7-day occupancy planner with
Newbook PMS integration, staff rota, time requirements, and pickup tracking.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-07-02 09:24:14 +00:00