# Story 8.8: Timeline Update Notification ## Epic Reference **Epic 8:** Email Notification System ## User Story As a **client**, I want **to be notified when my case timeline is updated**, So that **I stay informed about my case progress**. ## Acceptance Criteria ### Trigger - [ ] Sent on timeline update creation - [ ] Queued for performance ### Content - [ ] "Update on your case: [Case Name]" - [ ] Case reference number - [ ] Update content (full or summary) - [ ] Date of update - [ ] "View Timeline" button/link ### Language - [ ] Email in client's preferred language ### Design - [ ] Professional, informative tone ## Technical Notes ```php class TimelineUpdateNotification extends Notification { use Queueable; public function __construct( public TimelineUpdate $update ) {} public function via(object $notifiable): array { return ['mail']; } public function toMail(object $notifiable): MailMessage { $locale = $notifiable->preferred_language ?? 'ar'; $timeline = $this->update->timeline; return (new MailMessage) ->subject($this->getSubject($locale, $timeline->case_name)) ->markdown("emails.timeline.update.{$locale}", [ 'update' => $this->update, 'timeline' => $timeline, ]); } } ``` ## Definition of Done - [ ] Email sent on update - [ ] Case info included - [ ] Update content shown - [ ] View link works - [ ] Bilingual templates - [ ] Tests pass ## Estimation **Complexity:** Low | **Effort:** 2 hours