@extends('backEnd.layouts.master') @section('title', 'Moderator Report — ' . $moderator->name) @section('content')

{{ $moderator->name }}

{{ $moderator->user?->email }} · Detailed moderator report
All Moderators
@if($summary)
Screen Time
{{ $summary['screen_label'] }}
Duty Scheduled
{{ $summary['scheduled_label'] }}
On Duty Screen
{{ $summary['online_in_duty_label'] }}
Duty Compliance
{{ $summary['scheduled_seconds'] > 0 ? $summary['duty_compliance'] . '%' : '—' }}
Replies
{{ $summary['total_replies'] }}
Avg Response
{{ $reports->formatTime($summary['avg_seconds']) }}
@endif
Daily Breakdown
@forelse($daily_rows as $day) @empty @endforelse
Date Screen Duty Window On Duty Duty % Replies
{{ $day['date_label'] }} {{ $reports->formatDuration($day['screen_seconds']) }} {{ $reports->formatDuration($day['scheduled_seconds']) }} {{ $reports->formatDuration($day['online_in_duty']) }} {{ $day['scheduled_seconds'] > 0 ? $day['compliance_pct'] . '%' : '—' }} {{ $day['replies'] }}
No daily data
Shift Duty Log (e.g. 3:00 PM – 6:00 PM)
@php $allShifts = collect($daily_rows)->flatMap(fn($d) => $d['shifts']); @endphp @forelse($allShifts as $shift) @empty @endforelse
Date Shift Window Scheduled Online %
{{ $shift['date_label'] }} {{ ucfirst($shift['shift_type']) }} {{ $shift['window'] }} {{ $reports->formatDuration($shift['scheduled_seconds']) }} {{ $reports->formatDuration($shift['online_seconds']) }} {{ $shift['compliance_pct'] }}%
No shifts scheduled. Add shift in Shifts.
Assigned Shifts
    @forelse($shifts as $shift)
  • {{ ucfirst($shift->shift_type) }} {{ substr($shift->start_time, 0, 5) }} – {{ substr($shift->end_time, 0, 5) }}
    @foreach($shift->working_days ?? [] as $d) @php $days = ['Sun','Mon','Tue','Wed','Thu','Fri','Sat']; @endphp {{ $days[$d] ?? $d }} @endforeach
  • @empty
  • No shift assigned
  • @endforelse
Screen Sessions
@forelse($sessions as $session) @empty @endforelse
Start Duration Page
{{ $session->started_at->format('d M h:i A') }} {{ $reports->formatDuration((int) $session->duration_seconds) }} {{ $session->page ?: 'inbox' }} @if($session->conversation_id) #{{ $session->conversation_id }} @endif
No sessions logged yet
Late Replies (Red)
    @forelse($late_replies as $log)
  • {{ $log->conversation?->customer?->display_name ?? 'Customer' }} {{ $reports->formatTime($log->response_seconds) }}
  • @empty
  • No late replies
  • @endforelse
@endsection