{{-- resources/views/superadmin/proactive/sessions-monitor.blade.php --}} @extends('layouts.superadmin') @section('title','ProActive — مراقبة المواعيد والمدة') @section('page-title','⏱️ مراقبة مواعيد ProActive والمدة') @section('content') @php $filter = $filter ?? []; $tz = $tz ?? config('app.timezone','Asia/Jerusalem'); $reportStats = $reportStats ?? collect(); $initialStep = (int) request('step', 1); $initialStep = max(1, min(4, $initialStep)); $hasFilters = !empty(array_filter($filter ?? [], fn($v) => !is_null($v) && $v !== '')); $pageItems = ($rows instanceof \Illuminate\Pagination\AbstractPaginator) ? $rows->getCollection() : collect($rows); $withReports = $pageItems->filter(function($it) use ($reportStats){ $rep = $reportStats->get($it->id); return (int)($rep->reports_count ?? 0) > 0; })->count(); $coverage = $pageItems->count() > 0 ? (int) round(($withReports / $pageItems->count()) * 100) : 0; $longestItem = $pageItems->sortByDesc(function($it){ return (float)($it->runtime_minutes ?? 0); })->first(); $topLeader = $pageItems ->filter(fn($it) => !empty($it->leader_name)) ->groupBy('leader_name') ->map(fn($g) => $g->count()) ->sortDesc() ->take(1) ->map(fn($cnt, $name) => ['name'=>$name,'count'=>$cnt]) ->first(); @endphp
هنا تشوف كل مواعيد ProActive (عادي + بلس) مرتّبة من الأطول مدة إلى الأقل، مع حالة كل فعالية، وعدد التقارير المرتبطة بها ومن مين 💡.
* الترتيب كالتالي: أولاً الفعاليات اللي إلها مدة (نشطة/منتهية) من الأطول إلى الأقصر، ثم الملغاة، ثم القادمة (0 دقيقة).
| التاريخ / الوقت | العنوان | النوع | المنصّة | القائد | الحالة | المدة | التقارير المرتبطة |
|---|---|---|---|---|---|---|---|
|
{{ $item->event_date }}
@if($item->event_time)
{{ \Carbon\Carbon::parse($item->event_time)->format('H:i') }}
@endif
|
{{ $item->event_title ?? 'موعد بدون عنوان' }}
|
{{ $isPlus ? 'ProActive+ (بلس)' : 'ProActive عادي' }} | {{ strtoupper($item->platform ?? '-') }} |
{{ $item->leader_name ?? '—' }}
|
{{ $statusText }} | {{ $durationText }} |
@if($repCount > 0)
{{ $repCount }} تقرير
@if($repCreators)
من: {{ $repCreators }}
@endif
|
“المدة” تُحسب من runtime_minutes. الفعاليات القادمة غالبًا تظهر “—” لأن المدة = 0.