= $this->extend('layout/main_layout') ?> = $this->section('content') ?> 0, 'missing' => 0, 'expected' => 0, 'filled' => 0, 'fieldLabel' => 'Score', 'types' => [], ]; $commentSummary = $commentSummary ?? [ 'total' => 0, 'pendingReview' => 0, 'reviewed' => 0, 'missing' => 0, 'missingDetail' => [], 'types' => [], ]; $attendanceSummary = $attendanceSummary ?? [ 'recorded' => 0, 'students' => 0, 'completionPct' => 0, 'avgAbsences' => 0, ]; $deadlineEvents = $deadlineEvents ?? []; $scoreLabel = $scoreSummary['fieldLabel'] ?? 'Score'; $normalizedSemester = ucfirst(strtolower(trim((string)($semester ?? '')))); $dashboardNotifications = $dashboardNotifications ?? []; $participationSummary = $participationSummary ?? [ 'filled' => 0, 'missing' => 0, 'completionPct' => 0, 'expected' => 0, ]; $attendanceStatus = $attendanceStatus ?? [ 'date' => '', 'missingSections' => [], 'missingNames' => [], 'submitted' => true, ]; $today = (new \DateTimeImmutable('now'))->format('Y-m-d'); ?>
= esc($scoreSummary['missing'] ?? 0) ?> missing out of = esc($scoreSummary['expected']) ?> = esc($scoreSummary['fieldLabel']) ?> entries.
No score entries expected yet.
$typeData): ?> = 100 ? 'bg-success' : 'bg-warning'); ?>= esc($typeData['missing'] ?? 0) ?> missing of = esc($typeData['expected'] ?? 0) ?>.
= esc($typeData['missing'] ?? 0) ?> missing ยท = esc($typeData['pending'] ?? 0) ?> pending review
No comments recorded yet.
= esc($attendanceSummary['recorded'] ?? 0) ?> of = esc($attendanceSummary['students'] ?? 0) ?> students recorded
Average absences: = esc($attendanceSummary['avgAbsences'] ?? 0) ?>
Today's attendance still open for = esc(implode(', ', array_filter($attendanceStatus['missingNames'] ?? []))) ?>.