The Scheduler admin dashboard and instructor "My Lessons" pages (templates/admin/lessons.php, rows built in LessonController::row()) display a raw Slot ID column. The internal availability-slot database ID is meaningless to studio admins and instructors — the useful information is when the lesson happens.
Proposed change
Inject Availability\AvailabilityRepository into Booking\LessonController (wired in AdminMenu).
Look up each lesson's slot by slot_id and render the start/end window instead, e.g. Jul 6, 2026 9:00 AM–10:00 AM, using mysql2date('M j, Y g:i A', ...) (the project displays times in 12-hour AM/PM form).
Repeat the date on the end time only when a slot crosses midnight; show an em dash when the slot row no longer exists.
Replace the "Slot ID" column header with "Date/Time".
Tests
Unit tests under tests/Unit/Booking/ covering the admin dashboard, the instructor view, the midnight-crossing format, and the missing-slot fallback.
## Problem
The Scheduler admin dashboard and instructor "My Lessons" pages (`templates/admin/lessons.php`, rows built in `LessonController::row()`) display a raw **Slot ID** column. The internal availability-slot database ID is meaningless to studio admins and instructors — the useful information is *when* the lesson happens.
## Proposed change
- Inject `Availability\AvailabilityRepository` into `Booking\LessonController` (wired in `AdminMenu`).
- Look up each lesson's slot by `slot_id` and render the start/end window instead, e.g. **Jul 6, 2026 9:00 AM–10:00 AM**, using `mysql2date('M j, Y g:i A', ...)` (the project displays times in 12-hour AM/PM form).
- Repeat the date on the end time only when a slot crosses midnight; show an em dash when the slot row no longer exists.
- Replace the "Slot ID" column header with "Date/Time".
## Tests
Unit tests under `tests/Unit/Booking/` covering the admin dashboard, the instructor view, the midnight-crossing format, and the missing-slot fallback.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Problem
The Scheduler admin dashboard and instructor "My Lessons" pages (
templates/admin/lessons.php, rows built inLessonController::row()) display a raw Slot ID column. The internal availability-slot database ID is meaningless to studio admins and instructors — the useful information is when the lesson happens.Proposed change
Availability\AvailabilityRepositoryintoBooking\LessonController(wired inAdminMenu).slot_idand render the start/end window instead, e.g. Jul 6, 2026 9:00 AM–10:00 AM, usingmysql2date('M j, Y g:i A', ...)(the project displays times in 12-hour AM/PM form).Tests
Unit tests under
tests/Unit/Booking/covering the admin dashboard, the instructor view, the midnight-crossing format, and the missing-slot fallback.