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
+2 -2
View File
@@ -77,7 +77,7 @@ class ScoreController extends BaseController
$this->gradingLockModel = new GradingLockModel();
$this->missingScoreOverrideModel = new MissingScoreOverrideModel();
// Retrieve the configuration values
$this->semester = $this->configModel->getConfig('semester');
$this->semester = getSemester();
$this->schoolYear = $this->configModel->getConfig('school_year');
$this->targetHigh = $this->configModel->getConfig('trophy_score');
$this->targetLow = $this->configModel->getConfig('pass_score');
@@ -1030,7 +1030,7 @@ class ScoreController extends BaseController
$fallStartCfg = (string)($this->configModel->getConfig('fall_semester_start') ?? '');
$fallEndCfg = (string)($this->configModel->getConfig('fall_end_date') ?? ''); // e.g., 'YYYY-01-15'
$springStartCfg = (string)($this->configModel->getConfig('spring_semester_start') ?? ''); // e.g., 'YYYY-01-16'
$springEndCfg = (string)($this->configModel->getConfig('last_school_day') ?? '');
$springEndCfg = (string)($this->configModel->getConfig('last_day_of_school') ?? '');
if ($norm === 'fall') {
$start = ($fallStartCfg !== '') ? date($y1 . '-m-d', strtotime($fallStartCfg)) : "{$y1}-09-01";