@extends('layouts/contentNavbarLayout') @php $courseItems = $courses ->sortByDesc(function ($course) { return $course->created_at ?? $course->id ?? 0; }) ->map(function ($course) { return [ 'id' => $course->id, 'class_code' => $course->class_code, 'subject_code' => $course->subject_code, 'assignments' => $course->faculty_courses_count ?? 0, ]; })->values(); $facultyOptions = $faculties->map(function ($faculty) { return [ 'id' => $faculty->id, 'name' => optional($faculty->user)->name ?? $faculty->name ?? 'Unknown', 'email' => optional($faculty->user)->email ?? '', ]; })->values(); $assignmentItems = $facultyCourses ->sortByDesc(function ($assignment) { return $assignment->created_at ?? $assignment->id ?? 0; }) ->map(function ($assignment) { $faculty = optional($assignment->faculty); $facultyUser = optional($faculty->user); $course = optional($assignment->course); $facultyName = $facultyUser->name ?? $faculty->name ?? 'N/A'; return [ 'id' => $assignment->id, 'faculty_id' => $assignment->faculty_id, 'faculty_name' => $facultyName, 'faculty_email' => $facultyUser->email ?? '', 'course_id' => $assignment->course_id, 'course_class_code' => $course->class_code ?? 'N/A', 'course_subject_code' => $course->subject_code ?? '', 'academic_year' => $assignment->academic_year, 'semester' => $assignment->semester, ]; })->values(); $generateAcademicYearOptions = function ($startYear = 2025, $minimumYears = 10, $futureBuffer = 5) { $currentYear = (int) date('Y'); $endYear = max($startYear + $minimumYears - 1, $currentYear + $futureBuffer); $years = []; for ($year = $startYear; $year <= $endYear; $year++) { $years[] = sprintf('%d-%d', $year, $year + 1); } return $years; }; $academicYearOptions = collect($generateAcademicYearOptions()); $container = 'container-xxl'; @endphp @section('title', 'Data Management - Courses') @section('page-style') @endsection @section('content') @php $flashSuccess = session('success'); $flashError = session('error'); $pageToasts = []; if ($flashSuccess) { $pageToasts[] = ['type' => 'success', 'message' => $flashSuccess]; } if ($flashError) { $pageToasts[] = ['type' => 'danger', 'message' => $flashError]; } @endphp @include('components.dm-toast', ['messages' => $pageToasts])
Course Actions

Switch between managing courses or assignments, or import records from a file.

Class Code Subject Assignments Actions
0 Selected
Faculty Course Academic Year Semester Actions
0 Selected
{{-- Create Course Modal --}} {{-- Edit Course Modal --}} {{-- Delete Course Modal --}} {{-- Bulk Delete Courses Modal --}} {{-- Assign Course Modal --}} {{-- Edit Assignment Modal --}} {{-- Delete Assignment Modal --}} {{-- Bulk Delete Assignments Modal --}} {{-- Import Courses Modal --}} @endsection @section('page-script') @include('components.table-controller-script') @endsection