@use('App\Enums\GradeLevelsEnum') @use('App\Enums\Attributes') @extends('pdf.layout') @section('content')

Name: {{ $student->full_name }}

{{--

Student ID: {{ $student->full_name }}

--}}

DOB: {{ \Carbon\Carbon::parse($student->birthdate)->format('F j, Y') }}

Academic Year: {{ collect($student->courses ?? [])->pluck('academicPeriod')->flatten()->filter()->map(fn($date) => \Carbon\Carbon::parse(data_get($date, 'start_date'))->format('Y'))->unique()->sort()->pipe(fn($years) => $years->min() . ' - ' . $years->max()) }}

Grade Level: {{-- {{ data_get($student, 'gradeLevel.name', '') }} --}} 9 - 12 (High School)

Data accurate as of: {{ \Carbon\Carbon::now()->format('F j, Y') }}

{{--

Academic Years

--}}

OFFICIAL TRANSCRIPT

{{-- Grades and Courses Tables --}} @php // Sort grades by grade_enum $sortedGrades = collect($student->grades_courses ?? [])->sortBy(function ($item) { $gradeEnum = data_get($item, 'grade.gradeEnumRelation.grade_enum', ''); $order = ['grade_9' => 1, 'grade_10' => 2, 'grade_11' => 3, 'grade_12' => 4]; return $order[$gradeEnum] ?? 999; }); @endphp @foreach ($sortedGrades as $gradeData) @php $gradeEnum = data_get($gradeData, 'grade.gradeEnumRelation.grade_enum', ''); $gradeNumber = GradeLevelsEnum::GET_NUMBER_BY_LEVEL[$gradeEnum] ?? ''; @endphp {{-- Wrap header and table together to prevent page breaks --}}
{{-- Academic Year Header --}}
Academic Year {{ collect(data_get($gradeData, 'courses', []))->pluck('academicPeriod')->flatten()->filter()->map(fn($date) => \Carbon\Carbon::parse(data_get($date, 'start_date'))->format('Y'))->unique()->sort()->pipe(fn($years) => $years->count() ? $years->min() . ' - ' . $years->max() : 'N/A') }}
{{-- Courses Table --}} @forelse(data_get($gradeData, 'courses', []) as $course) @empty @endforelse
Course Title GradeLvl Type CR CT GR
{{ data_get($course, 'title', '') }} {{ $gradeNumber }} {{ data_get($course, 'type', '') }} {{ data_get($course, 'credits', '') }} {{ data_get($course, Attributes::IS_HOMOLOGABLE, '') ? 'Y' : 'N' }} {{ data_get($course, 'averageParse', '') }}
No courses available
@endforeach
{{--

Academic Summary:

--}}

Total Credits: {{ collect($student->grades_courses ?? [])->pluck('courses')->flatten()->sum('credits') }}

GPA: {{ number_format( collect($student->grades_courses ?? [])->pluck('courses')->flatten()->sum(function ($course) { return floatval(data_get($course, 'unweighted', 0)); }) / max( collect($student->grades_courses ?? [])->pluck('courses')->flatten()->count(), 1, ), 2, ) }}

WGPA: {{ number_format( collect($student->grades_courses ?? [])->pluck('courses')->flatten()->sum(function ($course) { return floatval(data_get($course, 'weighted', 0)); }) / max( collect($student->grades_courses ?? [])->pluck('courses')->flatten()->count(), 1, ), 2, ) }}

Date of Graduation: {{ $student->graduation_date ? \Carbon\Carbon::parse($student->graduation_date)->format('F j, Y') : 'N/A' }}

{{--

Total Credits: {{ collect($student->grades_courses ?? [])->pluck('courses')->flatten()->sum('credits') }}

GPA: {{ number_format( collect($student->grades_courses ?? [])->pluck('courses')->flatten()->sum(function ($course) { return floatval(data_get($course, 'unweighted', 0)); }) / max( collect($student->grades_courses ?? [])->pluck('courses')->flatten()->count(), 1, ), 2, ) }}

WGPA: {{ number_format( collect($student->grades_courses ?? [])->pluck('courses')->flatten()->sum(function ($course) { return floatval(data_get($course, 'weighted', 0)); }) / max( collect($student->grades_courses ?? [])->pluck('courses')->flatten()->count(), 1, ), 2, ) }}

{{ dd($student) }} Date of Graduation: {{ $student->graduation_date ? \Carbon\Carbon::parse($student->graduation_date)->format('F j, Y') : 'N/A' }}

--}}

International American Institute is registered in the

California School Directory.

CDS Code: 34674396167456

County: Sacramento

Address: 1401 21St Street Suite R. Sacramento CA, 95811

@include('pdf.components.administrativeUser', ['administrativeUser' => $administrativeUser])
@include('pdf.components.grade_key_table', ['type' => Attributes::GL_HIGH_SCHOOL])
@endsection