{% set page_group = "admin" %} {% include 'components/head.html' %}
{% include 'components/nav-account.html' %}
{% include 'components/alerts.html' %} {# Premium Trial Banner (Spec 035) - Shows trial status with days remaining #} {% include 'premium/partials/trial-banner.html' %} {# Migration Banner - Shows when hours not configured but legacy localStorage exists #} {# Banner is controlled by JavaScript based on storeHoursLastUpdated #} {# ================================================================ SCHEDULE HEADER - Two-Tier Design (Option C) Primary bar: Brand gradient with high-value actions Secondary bar: Compact contextual controls ================================================================ #}
{# Primary Bar - Title and High-Value Actions #}

{{ page.title }}

Timesheets {% if checkAccess('uri_schedule_ai') and isPremiumActive(typeNum) %} {# AI Generation Status Indicator - shown during processing #}
AI is generating schedule...
{% endif %}
{# Secondary Bar - Contextual Controls #}
{# Navigation - Date arrows and Today #} {# View Switcher #}
{# Schedule Actions #}
{# Copy Day Button - Only visible in Day view #} {# Templates Dropdown #}
{# Display Toggles #}
{# Open Shifts Toggle #} {# Overlays Dropdown #} {# Colors Dropdown #}
{# Status & Utilities #}
{# Schedule Calendar Container #}
{# Schedule container - Syncfusion will mount here #}
{# Overlay Legend Bar - Spec 025 T6.3 #} {# Shows the legend for the currently active overlay (only visible when overlay is active) #}
Overlay
{# Legend items will be dynamically inserted here #}
{# Quick Stats Row #}
0
Employees Scheduled
0
Shifts This Week
0
Open Shifts
0
With Overtime
$0.00
Avg Cost/Hour
{# ========== DAILY TASK ASSIGNMENTS PANEL (Spec 039, Phase 8) ========== #} {# Collapsible panel showing task assignments for today. Manager-only, BuyerKiosk scheduling only. #} {% if checkAccess('workbook_manage_tasks') and store.schedulingProvider is defined and store.schedulingProvider == 'buyerkiosk' %} {# Meta tags for DailyAssignmentView (not present on schedule page by default) #}
{% include 'workbook/partials/daily-assignment-panel.html' %}
{% endif %}
{# ========================================================================== TEMPLATE MODALS - Spec 025 T6.2 ========================================================================== #} {# Save Template Modal - Spec 025 #} {# Load Template Modal - Spec 025 T6.2 #} {# Context Menu for Shift Actions - Spec 023 T2.9.4 #} {# Publish Schedule Modal - Spec 023 Phase 4 #} {# Swap Modal - Spec 023 #} {# Reassign Modal - Spec 023 #} {# Cell Action Context Menu - Spec 022 (Quick Action Menu) #} {# Open Shift Modal - Spec 022 #} {# Open Shift EDIT Modal - Spec 022 (distinct from Create modal) #} {# Copy Day Modal - Copy shifts from current day to another day #} {# Syncfusion CSS & JS loaded via Vite bundle in components/head.html and footer.html #} {# License key is registered from window.SYNCFUSION_LICENSE set in head.html #} {# Spec 025: Schedule Templates & Overlays CSS #} {# Schedule Header Redesign - Two-Tier Design (Option C) #} {# Spec 026: AI Smart Scheduling CSS #} {# Store-time helpers (timezone-safe, store timezone is canonical) #} {# Role Configuration Module - must be before ScheduleCalendar #} {# Schedule Calendar Module #} {# Spec 039: Shift Dialog Task Assignment (Phase 9) - Permission gated #} {% if checkAccess('workbook_manage_tasks') and store.schedulingProvider is defined and store.schedulingProvider == 'buyerkiosk' %} {% endif %} {# Spec 025: Schedule Templates & Overlays JavaScript Modules #} {# ============================================================================ Spec 026: AI Smart Scheduling Modals ============================================================================ #} {% if checkAccess('uri_schedule_ai') and isPremiumActive(typeNum) %} {% include 'scheduling/partials/ai-config-modal.html' %} {% include 'scheduling/partials/ai-preview-panel.html' %} {# Ably SDK for real-time notifications (AI generation completion) #} {# Sortable.js for priority reordering #} {# AI Scheduling Module #} {% endif %} {# ========== DAILY TASK ASSIGNMENTS JS (Spec 039, Phase 8) ========== #} {% if checkAccess('workbook_manage_tasks') and store.schedulingProvider is defined and store.schedulingProvider == 'buyerkiosk' %} {% endif %} {% include 'components/footer.html' %}