@extends('layouts.admin') @section('header') Engagement @endsection @section('content')
All Members
Total
{{ $stats->all_members }}
Active
last 2 wks
{{ $stats->active }}
Slipping
2-4 wks
{{ $stats->slipping }}
Fading
4-8 wks
{{ $stats->fading }}
At-risk
> 8 wks
{{ $stats->at_risk }}
No Activity
No data
{{ $stats->no_activity }}
@foreach($users as $user) @endforeach
Name Rank Last Graded Last session Actions
@if($user->photo_url_thumbnail) {{ $user->name }} @else
@endif
@if($user->rank)
{{ $user->rank->name }}
@else No Rank @endif
@php $lastGrading = $user->gradings->sortByDesc('graded_at')->first(); @endphp @if($lastGrading) {{ $lastGrading->graded_at->format('jS M Y') }} @else Never @endif @if($user->last_session_attended_at) @php $days = $user->last_session_attended_at->diffInDays(now()); // Determine formatting if ($user->last_session_attended_at->isToday()) { $formattedDate = 'Today'; } elseif ($user->last_session_attended_at->isYesterday()) { $formattedDate = 'Yesterday'; } else { // If less than 7 days, show only days (hide hours) -> "5 days ago" // If more than 7 days, show weeks and days -> "2 weeks 3 days ago" $parts = $days < 7 ? 1 : 2; $formattedDate = $user->last_session_attended_at->diffForHumans(null, \Carbon\CarbonInterface::DIFF_RELATIVE_TO_NOW, false, $parts); } // Determine Color // Active: <= 14 days (Green) // Slipping: 15-28 days (Yellow) // Fading: 29-56 days (Orange) // At-Risk: > 56 days (Red) if ($days <= 14) { $colorClass = 'text-green-600'; } elseif ($days <= 28) { $colorClass = 'text-yellow-600'; } elseif ($days <= 56) { $colorClass = 'text-orange-600'; } else { $colorClass = 'text-red-600'; } @endphp {{ $formattedDate }} @else No activity @endif @if(!$user->last_session_attended_at || $user->last_session_attended_at->diffInDays(now()) >= 60) Archive Member @else View @endif
{{ $users->links() }}
@endsection