fix enrollment logic, add financial aid, fix class distribution
Tests / PHPUnit (push) Failing after 1m6s
Tests / PHPUnit (push) Failing after 1m6s
This commit is contained in:
@@ -13,11 +13,8 @@
|
||||
$money = static fn ($value): string => '$' . number_format((float) $value, 2);
|
||||
$activeId = (int) ($activeYear['id'] ?? 0);
|
||||
$nextDraftId = (int) ($nextDraftYear['id'] ?? 0);
|
||||
$newDraftName = (string) ($nextDraftDefaults['name'] ?? '');
|
||||
$defaultNewPreviousYear = $nextDraftDefaults['previous_year'] ?? null;
|
||||
$defaultNewPreviousYearName = (string) ($defaultNewPreviousYear['name'] ?? 'None');
|
||||
$closingPreviewUrl = $activeId > 0
|
||||
? site_url('administrator/school-years/' . $activeId . '/closing/preview' . ($nextDraftId > 0 ? '?' . http_build_query(['target_school_year_id' => $nextDraftId]) : ''))
|
||||
? site_url('administrator/school-years/' . $activeId . '/closing/preview')
|
||||
: '';
|
||||
?>
|
||||
|
||||
@@ -51,14 +48,16 @@
|
||||
<?php elseif ($activeYear && $nextDraftYear): ?>
|
||||
<div class="text-muted">Review promotions and balances for <?= esc($activeYear['name']) ?>. When all blockers are resolved, end it and start <?= esc($nextDraftYear['name']) ?>.</div>
|
||||
<?php elseif ($activeYear): ?>
|
||||
<div class="text-muted">Create the next school year first. It will stay as a draft until the current year is closed.</div>
|
||||
<div class="text-muted">Review promotions and balances for <?= esc($activeYear['name']) ?>. The next school year will be created automatically when you close this year.</div>
|
||||
<?php elseif ($nextDraftYear): ?>
|
||||
<div class="text-muted">No year is active. Start <?= esc($nextDraftYear['name']) ?> when you are ready.</div>
|
||||
<?php elseif (empty($schoolYears)): ?>
|
||||
<div class="text-muted">Create the first school year to begin.</div>
|
||||
<?php else: ?>
|
||||
<div class="text-muted">Create a school year draft to begin.</div>
|
||||
<div class="text-muted">The next school year is created automatically when you close the current year.</div>
|
||||
<?php endif; ?>
|
||||
<ol class="small text-muted ps-3 mt-2 mb-0">
|
||||
<li>Create the next year as a draft.</li>
|
||||
<li>Open the end-year checklist. The next draft year is created automatically.</li>
|
||||
<li>Review the end-year checklist for the current year.</li>
|
||||
<li>End the current year, then start the next year.</li>
|
||||
</ol>
|
||||
@@ -66,74 +65,42 @@
|
||||
<div class="d-flex align-items-start">
|
||||
<?php if ($closingYear): ?>
|
||||
<a class="btn btn-primary" href="<?= site_url('administrator/school-years/' . (int) $closingYear['id'] . '/closing/preview') ?>">Finish End-Year Checklist</a>
|
||||
<?php elseif ($activeYear && $nextDraftYear): ?>
|
||||
<a class="btn btn-primary" href="<?= esc($closingPreviewUrl, 'attr') ?>">Close Year</a>
|
||||
<?php elseif ($activeYear): ?>
|
||||
<button class="btn btn-success" type="button" data-bs-toggle="collapse" data-bs-target="#schoolYearCreateForm">Create Next Year</button>
|
||||
<a class="btn btn-primary" href="<?= esc($closingPreviewUrl, 'attr') ?>">Close Year</a>
|
||||
<?php elseif ($nextDraftYear): ?>
|
||||
<button class="btn btn-success" type="button" data-bs-toggle="modal" data-bs-target="#activateSchoolYearModal<?= $nextDraftId ?>">Start <?= esc($nextDraftYear['name']) ?></button>
|
||||
<?php else: ?>
|
||||
<?php elseif (empty($schoolYears)): ?>
|
||||
<button class="btn btn-success" type="button" data-bs-toggle="collapse" data-bs-target="#schoolYearCreateForm">Create School Year</button>
|
||||
<?php endif; ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<?php if (empty($schoolYears)): ?>
|
||||
<div class="collapse mb-4" id="schoolYearCreateForm">
|
||||
<div class="border rounded bg-white p-3">
|
||||
<form action="<?= site_url('administrator/school-years/store') ?>" method="post" class="row g-3 align-items-end">
|
||||
<?= csrf_field() ?>
|
||||
<div class="col-md-2">
|
||||
<div class="col-md-3">
|
||||
<label class="form-label" for="new_school_year_name">School Year</label>
|
||||
<input
|
||||
class="form-control"
|
||||
id="new_school_year_name"
|
||||
name="name"
|
||||
type="text"
|
||||
value="<?= esc($newDraftName !== '' ? $newDraftName : 'Not available', 'attr') ?>"
|
||||
readonly
|
||||
placeholder="2025-2026"
|
||||
pattern="\d{4}-\d{4}"
|
||||
required
|
||||
>
|
||||
</div>
|
||||
<div class="col-md-2">
|
||||
<label class="form-label" for="new_previous_school_year_display">Previous Year</label>
|
||||
<input
|
||||
class="form-control"
|
||||
id="new_previous_school_year_display"
|
||||
type="text"
|
||||
value="<?= esc($defaultNewPreviousYearName, 'attr') ?>"
|
||||
readonly
|
||||
>
|
||||
</div>
|
||||
<div class="col-md-2">
|
||||
<label class="form-label" for="new_school_year_starts_on">Starts On</label>
|
||||
<input class="form-control" id="new_school_year_starts_on" name="starts_on" type="date">
|
||||
</div>
|
||||
<div class="col-md-2">
|
||||
<label class="form-label" for="new_school_year_ends_on">Ends On</label>
|
||||
<input class="form-control" id="new_school_year_ends_on" name="ends_on" type="date">
|
||||
</div>
|
||||
<div class="col-md-2">
|
||||
<label class="form-label" for="new_registration_starts_on">Registration Starts</label>
|
||||
<input class="form-control" id="new_registration_starts_on" name="registration_starts_on" type="date">
|
||||
</div>
|
||||
<div class="col-md-2">
|
||||
<label class="form-label" for="new_registration_ends_on">Registration Ends</label>
|
||||
<input class="form-control" id="new_registration_ends_on" name="registration_ends_on" type="date">
|
||||
</div>
|
||||
<div class="col-md-2">
|
||||
<label class="form-label" for="new_fall_makeup_exam_on">Fall Makeup Exam</label>
|
||||
<input class="form-control" id="new_fall_makeup_exam_on" name="fall_makeup_exam_on" type="date">
|
||||
</div>
|
||||
<div class="col-md-2 d-flex gap-2">
|
||||
<button class="btn btn-primary" type="submit" <?= $newDraftName === '' ? 'disabled' : '' ?>>Save Draft</button>
|
||||
<div class="col-md-3 d-flex gap-2">
|
||||
<button class="btn btn-primary" type="submit">Save Draft</button>
|
||||
<button class="btn btn-secondary" type="button" data-bs-toggle="collapse" data-bs-target="#schoolYearCreateForm">Cancel</button>
|
||||
</div>
|
||||
<div class="col-12">
|
||||
<label class="form-label" for="new_school_year_description">Description</label>
|
||||
<textarea class="form-control" id="new_school_year_description" name="description" rows="2"></textarea>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
<?php endif; ?>
|
||||
|
||||
<div class="table-responsive">
|
||||
<table id="schoolYearsTable" class="table table-striped table-hover align-middle">
|
||||
@@ -216,7 +183,7 @@
|
||||
</li>
|
||||
<?php elseif ($status === 'active'): ?>
|
||||
<li>
|
||||
<a class="dropdown-item" href="<?= site_url('administrator/school-years/' . $id . '/closing/preview' . ($nextDraftId > 0 ? '?' . http_build_query(['target_school_year_id' => $nextDraftId]) : '')) ?>">Close year</a>
|
||||
<a class="dropdown-item" href="<?= site_url('administrator/school-years/' . $id . '/closing/preview') ?>">Close year</a>
|
||||
</li>
|
||||
<?php elseif ($status === 'closing'): ?>
|
||||
<li>
|
||||
|
||||
Reference in New Issue
Block a user