--- id: 3-2 title: 3-2 Time Slot Blocking status: QA Review date: 2026-09-27 parent: 3 --- ## Description As an admin, I want to block specific dates or time ranges for personal events or holidays, So that clients cannot book during my unavailable times. Context: Integrates with: blocked_times table, availability calendar; Technology: Livewire Volt, Flux UI; Follows pattern: CRUD pattern with calendar integration. Full implementation history: docs/stories/story-3.2-time-slot-blocking.md ## Acceptance Criteria - [ ] Block entire days (all-day events) - [ ] Block specific time ranges within a day - [ ] Add reason/note for blocked time - [ ] View list of all blocked times (upcoming and past) - [ ] Edit blocked times - [ ] Delete blocked times - [ ] Select date (date picker) - [ ] Choose: All day OR specific time range - [ ] If time range: start time and end time - [ ] Optional reason/note field - [ ] Confirmation on save - [ ] Blocked times show as unavailable in calendar (Story 3.3 dependency) - [ ] Visual distinction from "already booked" slots (Story 3.3 dependency) - [ ] Future blocked times don't affect existing approved bookings - [ ] Warning if blocking time with pending bookings - [ ] Show all blocked times - [ ] Sort by date (upcoming first) - [ ] Filter: past/upcoming/all - [ ] Quick actions: edit, delete - [ ] Show reason if provided - [ ] Bilingual support - [ ] Audit log for create/edit/delete - [ ] Validation: end time after start time - [ ] Tests for blocking logic