{% extends "layout.html" %} {% block content %}
Review & Edit
{% if flash %}
{{ flash }}
{% endif %}
{{ employee.name }} – {{ period_name }}
Return to Review Timesheets
Applied to Week 1 regular cap (40 minus carry over).
Payroll Extras
Saved values appear in the Overview Excel export.
{% if holiday_needs is defined and holiday_needs|length > 0 %}
Holiday review required{% if employee %} for {{ employee.name }}{% endif %}: The dates below include Holiday hours.
    {% for h in holiday_needs %}
  • {{ h.work_date.strftime("%A, %B %d, %Y") }} – Holiday {{ h.holiday_hours|fmt2 }} hr(s)
  • {% endfor %}
{% if timesheet_id and employee and can_edit %}
{% endif %}
Holiday rows are highlighted in the grid until you click Reviewed. Saving rows does not clear highlights.
{% endif %}
{% set has_holiday_flags = flagged_holiday_dates is defined and reviewed_holiday_dates is defined %} {% for r in grouped.rows %} {% set highlight_holiday = (has_holiday_flags and (r.work_date in flagged_holiday_dates and r.work_date not in reviewed_holiday_dates)) or (not has_holiday_flags and (r.holiday_hours and r.holiday_hours > 0)) %} {% endfor %}
DATE CLOCK IN CLOCK OUT BREAK TOTAL PTO PTO TYPE HOLIDAY OTHER PAID
{{ r.work_date.strftime("%b %d, %Y") }} {% if highlight_holiday %} Holiday – Needs review {% endif %}
{% if r.holiday_hours and r.holiday_hours > 0 %} Holiday {% elif r.pto_type %} {{ r.pto_type }} {% else %} {{ r.clock_in|fmt_excel_dt if r.clock_in else '-' }} {% endif %}
{% if r.holiday_hours and r.holiday_hours > 0 %} Holiday {% elif r.pto_type %} {{ r.pto_type }} {% else %} {{ r.clock_out|fmt_excel_dt if r.clock_out else '-' }} {% endif %}
{% if can_edit %} {% else %} {% endif %}
Regular
{{ grouped.totals.regular|fmt2 }}
Overtime
{{ grouped.totals.overtime|fmt2 }}
PTO
{{ grouped.totals.pto|fmt2 }}
Holiday
{{ grouped.totals.holiday|fmt2 }}
Other
{{ grouped.totals.bereavement|fmt2 }}
Paid Total
{{ grouped.totals.paid_total|fmt2 }}
{% endblock %}