@php use Illuminate\Support\Carbon; // Helper function for parsing mentions function parseMentions($text) { return preg_replace('/@(\w+)/', '@$1', e($text)); } $user = auth()->user(); $meId = (int) $user->id; $role = $user->membership_status ?? $user->role ?? 'member'; switch ($role) { case 'super-admin': $layout = 'layouts.superadmin'; break; case 'advisor': $layout = 'layouts.advisor'; break; case 'admin': case 'moderator': $layout = 'layouts.moderator'; break; default: $layout = 'layouts.member'; } $pollUrl = route('group_chat.poll'); $sendUrl = route('group_chat.send'); $typingUrl = route('group_chat.typing'); $reactUrl = route('group_chat.react'); $lastId = (int) ($lastId ?? ($messages->max('id') ?? 0)); $othersReadId = (int) ($lastReadId ?? 0); // Group messages by date $messagesGroupedByDate = []; foreach ($messages as $msg) { $date = Carbon::parse($msg->created_at)->format('Y-m-d'); if (!isset($messagesGroupedByDate[$date])) { $messagesGroupedByDate[$date] = []; } $messagesGroupedByDate[$date][] = $msg; } // $teamMembers is already passed from the controller with proper filtering // DO NOT override it here - the controller filters for online active users only @endphp @extends($layout) @section('title', 'Group Chat') @push('head') @endpush @section('content')
أدخل كلمة المرور للوصول إلى الإعدادات