@extends('dashboard.layouts.app') @section('content') @include('components.alert') @php $retentionBaseUrl = rtrim((string) config('app.Retention_URL'), '/'); @endphp
@foreach (['pending' => 'Pending', 'approved' => 'Approved', 'rejected' => 'Rejected', 'all' => 'All'] as $value => $label) @continue(isset($allowedStatuses) && ! in_array($value, $allowedStatuses, true)) {{ $label }} @endforeach
Reset
Student Feedback
@forelse($studentFeedbacks as $feedback) @php $teacher = $feedback->scheduledSession?->staff; $staffSchedule = $feedback->scheduledSession?->staffScheduled; $teacherName = $teacher?->getRawOriginal('full_name') ?: trim(($teacher?->first_name ?? '') . ' ' . ($teacher?->getRawOriginal('last_name') ?? '')); $studentName = $feedback->student?->full_name ?: trim(($feedback->student?->first_name ?? '') . ' ' . ($feedback->student?->last_name ?? '')); $courseName = $staffSchedule?->course_name_en ?: ($staffSchedule?->track?->name_en ?? '-'); $session = $feedback->scheduledSession; $teacherUrl = $teacher?->id ? route('staffs.show', $teacher->id) : null; $studentUrl = $feedback->student_id ? $retentionBaseUrl . '/students/' . $feedback->student_id : null; $courseUrl = $session?->staff_scheduled_id ? $retentionBaseUrl . '/courses/' . $session->staff_scheduled_id : null; $sessionUrl = $session?->staff_scheduled_id && $session?->id ? $retentionBaseUrl . '/courses/' . $session->staff_scheduled_id . '/sessions/' . $session->id : null; $ratings = collect([ $feedback->admin_response_rating ? 'Admin: ' . $feedback->admin_response_rating : null, $feedback->quality_rating ? 'Quality: ' . $feedback->quality_rating : null, $feedback->benefit_rating ? 'Benefit: ' . $feedback->benefit_rating : null, $feedback->error_correction_rating ? 'Correction: ' . $feedback->error_correction_rating : null, ])->filter()->implode(', '); $notes = collect([ $feedback->admin_response_comment ? 'Admin: ' . $feedback->admin_response_comment : null, $feedback->quality_comment ? 'Quality: ' . $feedback->quality_comment : null, $feedback->benefit_comment ? 'Benefit: ' . $feedback->benefit_comment : null, $feedback->error_correction_comment ? 'Correction: ' . $feedback->error_correction_comment : null, $feedback->recommendation ? 'Recommendation: ' . $feedback->recommendation : null, ])->filter()->implode(' | '); @endphp @empty @endforelse
Date Teacher Student Course Session Ratings Notes Status Review
{{ optional($feedback->created_at)->format('Y-m-d h:i A') ?? '-' }} @if($teacherUrl && $teacherName) {{ $teacherName }} @else {{ $teacherName ?: '-' }} @endif @if($studentUrl && $studentName) {{ $studentName }} @else {{ $studentName ?: '-' }} @endif @if($courseUrl && $courseName !== '-') {{ $courseName }} @else {{ $courseName }} @endif @if($sessionUrl) #{{ $session?->session_number ?? $session?->id }} @if($session?->session_date) {{ $session->session_date }} @endif @else - @endif {{ $ratings ?: '-' }} {{ $notes ?: '-' }} {{ ucfirst($feedback->review_status ?? 'pending') }}
@csrf
No student feedback records found.
{{ $studentFeedbacks->links() }}
Admin Feedback
@forelse($adminFeedbacks as $feedback) @php $teacher = $feedback->staff; $teacherName = $teacher?->getRawOriginal('full_name') ?: trim(($teacher?->first_name ?? '') . ' ' . ($teacher?->getRawOriginal('last_name') ?? '')); $session = $feedback->session; $staffSchedule = $session?->staffScheduled; $courseName = $staffSchedule?->course_name_en ?: ($staffSchedule?->track?->name_en ?? '-'); $teacherUrl = $teacher?->id ? route('staffs.show', $teacher->id) : null; $courseUrl = $session?->staff_scheduled_id ? $retentionBaseUrl . '/courses/' . $session->staff_scheduled_id : null; $issues = collect([ $feedback->camera_off ? 'Camera off' : null, $feedback->virtual_background ? 'Virtual background' : null, $feedback->internet_not_stable ? 'Internet unstable' : null, $feedback->class_room_not_suitable ? 'Class room not suitable' : null, $feedback->on_spot_absence ? 'On spot absence' : null, $feedback->delay_in_start ? 'Delay in start' : null, ])->filter()->implode(', '); $sessionUrl = $session?->staff_scheduled_id && $feedback->session_id ? $retentionBaseUrl . '/courses/' . $session->staff_scheduled_id . '/sessions/' . $feedback->session_id : null; @endphp @empty @endforelse
Date Admin Course Session Issues Minutes Comments Status Review
{{ optional($feedback->created_at)->format('Y-m-d h:i A') ?? '-' }} @if($teacherUrl && $teacherName) {{ $teacherName }} @else {{ $teacherName ?: '-' }} @endif @if($courseUrl && $courseName !== '-') {{ $courseName }} @else {{ $courseName }} @endif @if($sessionUrl) #{{ $session?->session_number ?? $feedback->session_id }} @else #{{ $session?->session_number ?? $feedback->session_id ?? '-' }} @endif @if($session?->session_date) {{ $session->session_date }} @endif {{ $issues ?: '-' }} {{ $feedback->minutes_delayed ?? '-' }} {{ $feedback->admin_comments ?? '-' }} {{ ucfirst($feedback->review_status ?? 'pending') }}
@csrf
No admin feedback records found.
{{ $adminFeedbacks->links() }}
@endsection