Fix semester context, attendance rosters, and billing workflows
Deploy to Shared Hosting / Shared hosting deploy (push) Failing after 31s
Tests / PHPUnit (push) Failing after 55s

- 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
This commit is contained in:
root
2026-08-16 17:41:11 -04:00
parent 36c7e3fc6d
commit 0ac3a8375e
99 changed files with 1598 additions and 814 deletions
@@ -87,7 +87,7 @@ class CompetitionWinnersController extends BaseController
'errors' => session('errors'),
'classSections' => $classSections,
'classRows' => $classRows,
'defaultSemester' => $this->configModel->getConfig('semester'),
'defaultSemester' => getSemester(),
'defaultSchoolYear'=> $schoolYear,
]);
}
@@ -119,7 +119,7 @@ class CompetitionWinnersController extends BaseController
'errors' => session('errors'),
'classSections' => $classSections,
'classRows' => $classRows,
'defaultSemester' => $this->configModel->getConfig('semester'),
'defaultSemester' => getSemester(),
'defaultSchoolYear'=> $schoolYear,
]);
}
@@ -391,7 +391,7 @@ class CompetitionWinnersController extends BaseController
$semester = session('semester');
$schoolYear = session('school_year');
if ($semester === null || $semester === '') {
$semester = $this->configModel->getConfig('semester');
$semester = getSemester();
}
if ($schoolYear === null || $schoolYear === '') {
$schoolYear = $this->configModel->getConfig('school_year');