@extends('layout.layout') @php $title = 'Dashboard'; $subTitle = 'Overview'; $students = collect($students ?? []); $showStudentNames = $students->count() > 1; $referralData = $referralData ?? [0, 0, 0]; // Submitted, Accepted, Rejected $requestData = $requestData ?? [0, 0, 0]; // Submitted, Completed, In-Progress // $script = ' '; $courseStudent = $latestSchedule?->courseStudent?->first(); $invoice = $courseStudent?->finanaceStudentInvoice; $paymentStatus = $invoice?->payment_status ?? 'pending'; $currentTrackName = $latestSchedule?->track?->name_en; $currentLevelName = $latestSchedule?->trackLevel?->name_en; $currentProgramLabel = collect([$currentTrackName, $currentLevelName])->filter()->join(' - '); if ($paymentStatus === 'not_paid') { $paymentBadgeText = 'Unpaid'; $paymentBadgeClass = 'dashboard-badge-danger'; $paymentStatusText = 'Not Paid'; $paymentStatusClass = 'status-danger'; } elseif ($invoice) { $paymentBadgeText = 'Paid'; $paymentBadgeClass = 'dashboard-badge-success'; $paymentStatusText = 'Paid'; $paymentStatusClass = 'status-success'; } else { $paymentBadgeText = 'None'; $paymentBadgeClass = ''; $paymentStatusText = 'No Invoice'; $paymentStatusClass = 'status-default'; } $activityLabels = [ 'gift-call' => [ 'label' => 'Gift Call', 'class' => 'status-info', 'icon' => 'fas fa-gift', ], 'extra-session' => [ 'label' => 'Extra Sessions', 'class' => 'status-warning', 'icon' => 'fas fa-plus-circle', ], 'english-club' => [ 'label' => 'English Club', 'class' => 'status-success', 'icon' => 'fas fa-users', ], ]; $activityStats = collect($activityStats ?? []); $upcomingActivityLabels = collect($activityLabels)->filter(function ($meta, $key) use ($activityStats) { return (int) data_get($activityStats->get($key), 'count', 0) > 0; }); $sessionSummary = $sessionSummary ?? ['absence' => 0, 'completed' => 0]; @endphp @section('content') @include('components.alert')
{{-- Activities --}}
Activities
{{ $activityStats->sum('count') }}
@forelse ($upcomingActivityLabels as $key => $meta) @php $activityStat = $activityStats->get($key); @endphp @empty
No upcoming activities found.
@endforelse
{{-- Level & Payment Status --}}
Level & Payment Status
{{ $paymentBadgeText }}
{{ $paymentStatusText }}
Current Program / Level
@if ($invoice && $latestSchedule) {{ $currentProgramLabel ?: 'No active program' }} @else {{ $currentProgramLabel ?: 'No active program' }} @endif
{{-- Sessions --}}
Sessions
{{ collect($sessions)->count() }}
{{ $sessionSummary['absence'] }}
Absent Sessions
{{ $sessionSummary['completed'] }}
Complete Sessions
{{-- Announcements --}}
Announcements
{{ $announcementsCount ?? $announcements->count() }}
@forelse ($announcements as $announcement) @empty
No active announcements.
@endforelse
{{-- Announcement Modals --}} @foreach ($announcements as $announcement) @endforeach {{-- Requests --}}
Requests
{{ array_sum($requestData) }}
Unassigned {{ $unassignedRequests ?? 0 }}
{{--
--}}
Submitted {{ $requestData[0] }}
Completed {{ $requestData[1] }}
In-Progress {{ $requestData[2] }}
{{-- Upcoming Sessions --}}
Upcoming Sessions
View all {{ collect($sessions)->count() }}
@forelse ($sessions as $session)
{{ $session['course_name'] }}
{{ $session['session_name'] }} @if (!empty($session['start_time'])) - {{ \Carbon\Carbon::parse($session['session_date'].' '.$session['start_time'])->format('d M Y, h:i A') }} @else - {{ \Carbon\Carbon::parse($session['session_date'])->format('d M Y') }} @endif
@if (!empty($session['meeting_url'])) Join @endif
{{ \Carbon\Carbon::parse($session['session_date'])->format('d M') }}
@empty
No upcoming sessions found.
@endforelse
{{-- Quizzes --}} {{-- Assignments --}}
Upcoming Assignments
{{ $assignments->count() }}
{{-- Exams --}} {{-- Teachers History --}}
Teachers History
{{ $teachers->count() }}
@forelse ($teachers as $teacher)
{{ $loop->iteration }}
{{ $teacher['name'] }}
Teacher
@empty
No teachers found for this student.
@endforelse
{{-- Upcoming Holidays --}}
Upcoming Holidays
{{ $holidayVacations->count() }}
@forelse ($holidayVacations as $holiday)
{{ $holiday['holiday_title'] }}
{{ \Carbon\Carbon::parse($holiday['from_date'])->format('d M') }} - {{ \Carbon\Carbon::parse($holiday['to_date'])->format('d M Y') }}
@empty
No upcoming official holiday vacations.
@endforelse
{{-- Referrals --}}
Referrals
{{ array_sum($referralData) }}
{{--
--}}
Submitted {{ $referralData[0] }}
Accepted {{ $referralData[1] }}
Rejected {{ $referralData[2] }}
@endsection @push('styles') @endpush