0ac3a8375e
- load global semester helpers consistently and use date-based semester defaults - fix grading and daily attendance duplicate student/section rows - keep attendance violations scoped to the current semester by default - update invoice, refund, discount, payment, and financial aid flows - add configuration cleanup migrations for duplicate calendar/semester keys - refresh parent registration/report-card and print request handling - update related models, services, views, cron notes, and test coverage
28 lines
838 B
PHP
28 lines
838 B
PHP
<?php
|
|
|
|
use App\Models\ConfigurationModel;
|
|
use App\Services\SemesterRangeService;
|
|
|
|
if (!function_exists('selected_teacher_semester')) {
|
|
function selected_teacher_semester(): string
|
|
{
|
|
$session = session();
|
|
$selected = trim((string) ($session->get('teacher_scores_selected_semester') ?? ''));
|
|
if ($selected !== '') {
|
|
return ucfirst(strtolower($selected));
|
|
}
|
|
|
|
$fallback = trim((string) ($session->get('semester') ?? ''));
|
|
if ($fallback !== '') {
|
|
return ucfirst(strtolower($fallback));
|
|
}
|
|
|
|
$configSemester = trim((string) ((new SemesterRangeService(new ConfigurationModel()))->getSemesterForDate() ?: 'Fall'));
|
|
if ($configSemester !== '') {
|
|
return ucfirst(strtolower($configSemester));
|
|
}
|
|
|
|
return 'Fall';
|
|
}
|
|
}
|