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
@@ -17,12 +17,10 @@ final class SchoolYearManagementServiceCalendarTest extends CIUnitTestCase
$this->assertSame('2026-08-01', $calendar['registration_starts_on']);
$this->assertSame('2026-10-05', $calendar['registration_ends_on']);
$this->assertSame('2026-09-20', $calendar['first_day_of_school']);
$this->assertSame('2026-09-20', $calendar['1st_day_of_school']);
$this->assertSame('2026-09-13', $calendar['fall_makeup_exam_on']);
$this->assertSame('2026-09-06', $calendar['orientation_day']);
$this->assertSame('2027-05-23', $calendar['final_exam_day']);
$this->assertSame('2027-06-06', $calendar['last_day_of_school']);
$this->assertSame('2027-06-06', $calendar['last_school_day']);
$this->assertSame('2027-01-17', $calendar['midterm_exam_day']);
$this->assertSame('2027-01-24', $calendar['spring_semester_start']);
$this->assertSame('2027-03-01', $calendar['installment_date']);