|
2 | 2 |
|
3 | 3 | All notable changes to this project will be documented in this file. |
4 | 4 |
|
| 5 | +## [v1.6.0] - 2026-05-09 |
| 6 | + |
| 7 | +### Added |
| 8 | + |
| 9 | +- `OrganizationUnitController` with store, update, and destroy endpoints |
| 10 | +- Admin CRUD routes for organization units behind `admin` middleware |
| 11 | +- Organization unit management section in admin settings page with add, edit, and delete |
| 12 | +- `HasScopedQueries` trait to scope queries by organization unit (returns `null` for admin) |
| 13 | +- User reassignment flow when deleting an organization unit |
| 14 | +- `calcHours` helper with per-item and total queue hours display |
| 15 | +- Scrollable form and queue panels with fixed height |
| 16 | +- `FloatingThemeToggle` component on login, register, forgot password, and reset password pages |
| 17 | + |
| 18 | +### Changed |
| 19 | + |
| 20 | +- Scoped user listing, overtime, dashboard, required hours, and schedule queries by org unit via `HasScopedQueries` |
| 21 | +- Admin users no longer scoped to an org unit (`organization_unit_id` set to `null`) |
| 22 | +- Removed hardcoded org unit from report date range form |
| 23 | +- Redesigned overtime queue cards with simplified styling and status badges |
| 24 | +- Converted `defaultShiftCodes` to computed, removed week remove button |
| 25 | +- Flattened admin System dropdown into direct Configuration link |
| 26 | + |
| 27 | +## [v1.5.0] - 2026-05-05 |
| 28 | + |
| 29 | +### Added |
| 30 | + |
| 31 | +- `settings` database table and `Setting` model for system configuration |
| 32 | +- `SettingsController` with index and update endpoints |
| 33 | +- Admin settings page (`Admin/Settings.vue`) for managing shift codes, overtime rules, and system preferences |
| 34 | +- Admin dashboard (`Admin/Index.vue`) with the same overtime dashboard as approver |
| 35 | +- `admin-approver` middleware group allowing admin to access all approver routes |
| 36 | +- "System" dropdown in navigation visible only to admin users |
| 37 | +- Admin user seeder reading credentials from `ADMIN_*` environment variables |
| 38 | +- Default settings seeder (shift codes, minimum overtime hours, overtime minute step) |
| 39 | + |
| 40 | +### Changed |
| 41 | + |
| 42 | +- Migrated all configuration from `setup/config.json` to `settings` database table |
| 43 | +- `OvertimeCalculator` now reads `minimum_overtime_hours` from database instead of filesystem |
| 44 | +- Admin role is a superset of approver with additional system settings access |
| 45 | +- `/setup/config` endpoint now reads from `settings` table instead of JSON file |
| 46 | +- Restricted public registration to `employee` and `approver` roles only (admin created via seeder) |
| 47 | +- Rewrote `OvertimeCalculatorTest` and `OvertimeRequestValidationTest` to use database-backed settings |
| 48 | + |
| 49 | +### Removed |
| 50 | + |
| 51 | +- `make:config` artisan command (replaced by admin settings UI) |
| 52 | +- `setup/config.json` file dependency (replaced by database) |
| 53 | + |
5 | 54 | ## [v1.4.1] - 2026-04-26 |
6 | 55 |
|
7 | 56 | ### Added |
|
0 commit comments