{{-- resources/views/superadmin/iman-room/members-files.blade.php --}} @extends('layouts.superadmin') @section('title','ملفات الأعضاء — غرفة إيمان') @section('page-title','ملفات الأعضاء — غرفة إيمان') @section('content') @php use Illuminate\Support\Str; $section = $section ?? 'members_files'; $view = $view ?? request('view','cards'); // table|cards|grid if(!in_array($view,['table','cards','grid'],true)) $view='cards'; $tab = $tab ?? request('tab','overview'); // overview|evaluations|activities|tests|honors|violations|absences|ranks if(!in_array($tab,['overview','evaluations','activities','tests','honors','violations','absences','ranks'],true)) $tab='overview'; $q = $q ?? request('q',''); $gender = $gender ?? request('gender','all'); $selectedId = (int)($selectedId ?? request('user_id', 0)); $members = $members ?? collect(); $u = $selectedUser ?? null; $stats = $stats ?? []; $dailyPointsData = $dailyPointsData ?? collect(); $activitiesData = $activitiesData ?? []; $totalHoursByActivityType = $totalHoursByActivityType ?? []; $testsData = $testsData ?? collect(); $wonCompetitions = $wonCompetitions ?? collect(); $honorsRewards = $honorsRewards ?? collect(); $violations = $violations ?? collect(); $absences = $absences ?? collect(); $absenceRequests = $absenceRequests ?? collect(); $userRanks = $userRanks ?? collect(); $genderLabel = ['all'=>'الكل','male'=>'ذكور','female'=>'إناث']; $tabs = [ 'overview' => ['t'=>'نظرة عامة','i'=>'fa-solid fa-gauge-high'], 'evaluations'=> ['t'=>'التقييمات','i'=>'fa-solid fa-star'], 'activities' => ['t'=>'الأنشطة','i'=>'fa-solid fa-bolt'], 'tests' => ['t'=>'الاختبارات','i'=>'fa-solid fa-clipboard-check'], 'honors' => ['t'=>'التكريمات','i'=>'fa-solid fa-award'], 'violations' => ['t'=>'المخالفات','i'=>'fa-solid fa-triangle-exclamation'], 'absences' => ['t'=>'الغيابات/الأعذار','i'=>'fa-solid fa-calendar-xmark'], 'ranks' => ['t'=>'الرتب','i'=>'fa-solid fa-crown'], ]; @endphp
{{-- HERO --}}
غرفة إيمان • ملفات الأعضاء • تحليل

ملفات الأعضاء

اختر عضو من القائمة الملحمية وشوف ملفه بالكامل: تقييمات، أنشطة، اختبارات، مخالفات، تكريمات… وكل شيء من غير طباعة — عرض احترافي.

{{-- Filters + Member picker --}}
تصفير
{{-- Tabs --}}
@foreach($tabs as $k=>$meta) {{ $meta['t'] }} @endforeach
{{-- Selected user quick card --}}
@php $avatar = $u && !empty($u->avatar) ? asset('storage/avatars/'.$u->avatar) : null; @endphp @if($avatar) @else
{{ $u ? mb_substr(($u->name ?? $u->username ?? 'U'),0,1) : '—' }}
@endif
{{ $u ? ($u->name ?: $u->username) : 'لا يوجد عضو محدد' }}
{{ $u ? ('@'.$u->username.' • '.$genderLabel[$u->gender] ?? '') : '' }} {!! $u ? ' • '.e($u->membership_status ?? '—').'' : '' !!}
{{-- Summary stats --}}
@php $sumCards = [ ['k'=>'total_points','t'=>'المجموع','cls'=>'bg-white/5','i'=>'fa-solid fa-layer-group'], ['k'=>'evaluation_points','t'=>'نقاط التقييمات','cls'=>'bg-white/5','i'=>'fa-solid fa-star'], ['k'=>'activity_points','t'=>'نقاط الأنشطة','cls'=>'bg-white/5','i'=>'fa-solid fa-bolt'], ['k'=>'total_activity_hours','t'=>'ساعات الأنشطة','cls'=>'bg-white/5','i'=>'fa-regular fa-clock'], ['k'=>'violations_points','t'=>'خصم المخالفات','cls'=>'bg-white/5','i'=>'fa-solid fa-triangle-exclamation'], ['k'=>'honors_rewards_points','t'=>'مكافآت/تكريم','cls'=>'bg-white/5','i'=>'fa-solid fa-award'], ]; @endphp @foreach($sumCards as $c)
{{ $c['t'] }}
{{ $stats[$c['k']] ?? 0 }}
@endforeach
{{-- CONTENT --}}
{{-- OVERVIEW --}} @if($tab==='overview')
تفكيك النقاط
@php $rows = [ ['t'=>'نقاط التقييمات','v'=>$stats['evaluation_points'] ?? 0], ['t'=>'نقاط الأنشطة','v'=>$stats['activity_points'] ?? 0], ['t'=>'نقاط التكريم/المكافآت','v'=>$stats['honors_rewards_points'] ?? 0], ['t'=>'نقاط المسابقات','v'=>$stats['competition_points'] ?? 0], ['t'=>'نقاط القيستات','v'=>$stats['guest_points'] ?? 0], ['t'=>'خصم المخالفات','v'=>$stats['violations_points'] ?? 0], ['t'=>'نقاط (جدول points)','v'=>$stats['points_from_table'] ?? 0], ]; @endphp @foreach($rows as $r)
{{ $r['t'] }}
{{ (int)$r['v'] }}
@endforeach
ملخص سريع
@php $mini = [ ['t'=>'أنشطة (إجمالي)','v'=>$stats['total_activities'] ?? 0], ['t'=>'أنشطة مؤكدة','v'=>$stats['confirmed_activities'] ?? 0], ['t'=>'ساعات قيستات','v'=>$stats['total_guest_hours'] ?? 0], ['t'=>'مسابقات فائزة','v'=>$stats['won_competitions'] ?? 0], ['t'=>'عدد التكريمات','v'=>$stats['honors_rewards'] ?? 0], ['t'=>'عدد المخالفات','v'=>$stats['violations_count'] ?? 0], ['t'=>'عدد الغيابات','v'=>$stats['absences_count'] ?? 0], ['t'=>'طلبات الأعذار','v'=>$stats['absence_requests_count'] ?? 0], ['t'=>'رتب حالية','v'=>$stats['current_ranks'] ?? 0], ]; @endphp @foreach($mini as $m)
{{ $m['t'] }}
{{ $m['v'] ?? 0 }}
@endforeach
@endif {{-- EVALUATIONS --}} @if($tab==='evaluations')
سجل التقييمات (المعتمدة)
@if(($dailyPointsData->count() ?? 0) === 0)
لا يوجد تقييمات معتمدة لهذا العضو.
@else @include('superadmin.iman-room.partials._mf_list', [ 'view' => $view, 'items' => $dailyPointsData, 'type' => 'evaluations', ]) @endif @endif {{-- ACTIVITIES --}} @if($tab==='activities')
الأنشطة (Confirmed فقط)
@if(empty($activitiesData) || count($activitiesData) === 0)
لا يوجد أنشطة مؤكدة لهذا العضو.
@else
@foreach($activitiesData as $typeName => $items)
{{ $typeName }}
ساعات: {{ round((float)($totalHoursByActivityType[$typeName] ?? 0),2) }} • عدد: {{ $items->count() }}
@include('superadmin.iman-room.partials._mf_list', [ 'view' => $view, 'items' => $items, 'type' => 'activities', ])
@endforeach
@endif @endif {{-- TESTS --}} @if($tab==='tests')
الاختبارات
@if(($testsData->count() ?? 0) === 0)
لا توجد بيانات اختبارات (أو الجدول غير متوفر).
@else @include('superadmin.iman-room.partials._mf_list', [ 'view' => $view, 'items' => $testsData, 'type' => 'tests', ]) @endif @endif {{-- HONORS --}} @if($tab==='honors')
التكريمات / المكافآت
@if(($honorsRewards->count() ?? 0) === 0)
لا يوجد تكريمات/مكافآت.
@else @include('superadmin.iman-room.partials._mf_list', [ 'view' => $view, 'items' => $honorsRewards, 'type' => 'honors', ]) @endif @endif {{-- VIOLATIONS --}} @if($tab==='violations')
المخالفات
@if(($violations->count() ?? 0) === 0)
لا توجد مخالفات لهذا العضو.
@else @include('superadmin.iman-room.partials._mf_list', [ 'view' => $view, 'items' => $violations, 'type' => 'violations', ]) @endif @endif {{-- ABSENCES --}} @if($tab==='absences')
الغيابات (من التقييمات)
@if(($absences->count() ?? 0) === 0)
لا يوجد غيابات.
@else @include('superadmin.iman-room.partials._mf_list', [ 'view' => $view, 'items' => $absences, 'type' => 'absences', ]) @endif
طلبات الأعذار
@if(($absenceRequests->count() ?? 0) === 0)
لا يوجد طلبات أعذار.
@else @include('superadmin.iman-room.partials._mf_list', [ 'view' => $view, 'items' => $absenceRequests, 'type' => 'absence_requests', ]) @endif
@endif {{-- RANKS --}} @if($tab==='ranks')
الرتب الحالية
@if(($userRanks->count() ?? 0) === 0)
لا توجد رتب مسجلة لهذا العضو.
@else @include('superadmin.iman-room.partials._mf_list', [ 'view' => $view, 'items' => $userRanks, 'type' => 'ranks', ]) @endif @endif
{{-- ========================= MODALS (Details) ========================= --}} {{-- Hidden modal templates --}} {{-- JS --}} @endsection