Require correct security role for performing CRUD operations on Area entities.

Signed-off-by: Max Fierke <max@maxfierke.com>
Set flash messages on CRUD operation success and failure.

Signed-off-by: Max Fierke <max@maxfierke.com>
Tweak the dashboard layout a bit.

Signed-off-by: Max Fierke <max@maxfierke.com>
No longer need jQuery ScrollToFixed plugin.

Signed-off-by: Max Fierke <max@maxfierke.com>
Use new 'methods' routing property

Signed-off-by: Max Fierke <max@maxfierke.com>
Add employee-side LateShift views and controls.

Employee can view shifts they've clocked in late for, or missed. They can add notes to each of these, e.g. explanation for tardiness, absence.

Signed-off-by: Max Fierke <max@maxfierke.com>
Add supervisor-side LateShift views and controls.

Can be accessed under 'Reports'->'Late/Missed Shift Report'. Supervisors can view all late/missed shift and any employee-provided reasons for their lateness/absence. Supervisors may excuse or unexcuse late/missed shifts.

Signed-off-by: Max Fierke <max@maxfierke.com>
Remove ScrollToFixed reference from README.md

Signed-off-by: Max Fierke <max@maxfierke.com>
Routing tweaks

Signed-off-by: Max Fierke <max@maxfierke.com>
Add a tiny explanation to clock:check-late

Signed-off-by: Max Fierke <max@maxfierke.com>
Add TODC-themed Select2 integration for Googley selects.

Signed-off-by: Max Fierke <max@maxfierke.com>
Use a cleaner navbar background 

Subtle Pattern: Skewed Print

Signed-off-by: Max Fierke <max@maxfierke.com>
Only allow querying in Select2 when there are more than 5 options.

Signed-off-by: Max Fierke <max@maxfierke.com>
Use default input size for time resolution select.

Signed-off-by: Max Fierke <max@maxfierke.com>
Add function to DateTimeUtils for getting time record intervals as pairs of DateTime objects.

I would love to use DatePeriod objects, but they do not provide anyway of getting the start and end DateTime elements.

Signed-off-by: Max Fierke <max@maxfierke.com>
Whoops! Commited with var_dump intact.

Signed-off-by: Max Fierke <max@maxfierke.com>
Fix SchedulePeriod view titles.

Signed-off-by: Max Fierke <max@maxfierke.com>
Title tweak

Signed-off-by: Max Fierke <max@maxfierke.com>
DISTINCT keyword not needed

Signed-off-by: Max Fierke <max@maxfierke.com>
Remove ORM annotations from ShiftBaseEntity and add missing $schedule property.

Signed-off-by: Max Fierke <max@maxfierke.com>