@extends('layouts.user') @section('title', 'Athlete Dashboard') @section('content') @php // Calculate real statistics $totalDocs = \App\Models\PortalUserDoc::where('portal_user_id', $user->id)->count(); $uploadedDocs = \App\Models\PortalUserDoc::where('portal_user_id', $user->id) ->whereNotNull('document_path')->count(); $stateChangeRequests = \App\Models\StateChangeRequest::where('user_id', $user->id)->count(); $pendingStateChanges = \App\Models\StateChangeRequest::where('user_id', $user->id) ->where('status', 'pending')->count(); $profileFields = ['fname', 'lname', 'email', 'mobile', 'dob', 'gender', 'address', 'pincode']; $filledFields = 0; foreach($profileFields as $field) { if(!empty($user->$field)) $filledFields++; } $profileCompletion = round(($filledFields / count($profileFields)) * 100); $membershipValid = false; $daysUntilExpiry = 0; if($user->valid_up_to) { $expiryDate = \Carbon\Carbon::parse($user->valid_up_to); $daysUntilExpiry = now()->diffInDays($expiryDate, false); $membershipValid = $daysUntilExpiry > 0; } @endphp

Athlete Dashboard

Welcome back, {{ $user->fname ?? $user->name }}! Ready to train hard and compete?

Active Roles

{{ $user->activeRoles->count() }}

Current: Athlete

Documents

{{ $uploadedDocs }}/{{ $totalDocs }}

{{ $totalDocs > 0 ? round(($uploadedDocs/$totalDocs)*100) : 0 }}% uploaded

State Changes

{{ $pendingStateChanges }}/{{ $stateChangeRequests }}

{{ $pendingStateChanges }} pending

Profile

{{ $profileCompletion }}%

Completed

Events

Browse and register for competitions

View Events
{{-- DISABLED: Black Belt Certificate Card (Route Disabled) --}} {{--
Certificates

Access your achievements

View Certificates
--}}
Profile

{{ $profileCompletion }}% profile completed

Edit Profile
Documents

{{ $uploadedDocs }} of {{ $totalDocs }} uploaded

View Documents
Account Information

Full Name

{{ $user->fname }} {{ $user->lname }}

Email

{{ $user->email }}

Unique ID

{{ $user->u_id ?? 'Not assigned' }}

Mobile

{{ $user->mobile ?? 'Not provided' }}

Status

@if($user->approved == 1) Approved @else Pending @endif

Membership

@if($membershipValid) Valid ({{ $daysUntilExpiry }}d) @else Expired @endif

Quick Stats

Active Roles

{{ $user->activeRoles->count() }}
Manage →

Documents Uploaded

{{ $uploadedDocs }} / {{ $totalDocs }}
Upload →

State Changes

{{ $pendingStateChanges }} Pending
Request →

Profile Completion

{{ $profileCompletion }}%
@endsection