fix the exam draft
This commit is contained in:
@@ -168,12 +168,33 @@
|
||||
$weekLabel .= ' – ' . date('M d, Y', strtotime($group['week_end']));
|
||||
}
|
||||
$reports = $group['reports'] ?? [];
|
||||
$teacherName = '';
|
||||
$teacherCounts = [];
|
||||
$teacherLatest = [];
|
||||
foreach ($reports as $report) {
|
||||
if (! empty($report['teacher_name'])) {
|
||||
$teacherName = $report['teacher_name'];
|
||||
break;
|
||||
$name = trim((string) ($report['teacher_name'] ?? ''));
|
||||
if ($name === '') {
|
||||
continue;
|
||||
}
|
||||
$teacherCounts[$name] = ($teacherCounts[$name] ?? 0) + 1;
|
||||
$stamp = (string) ($report['updated_at'] ?? $report['created_at'] ?? '');
|
||||
if ($stamp !== '' && (!isset($teacherLatest[$name]) || $stamp > $teacherLatest[$name])) {
|
||||
$teacherLatest[$name] = $stamp;
|
||||
}
|
||||
}
|
||||
$teacherLabel = '-';
|
||||
if (!empty($teacherCounts)) {
|
||||
$bestName = '';
|
||||
$bestCount = -1;
|
||||
$bestStamp = '';
|
||||
foreach ($teacherCounts as $name => $count) {
|
||||
$stamp = $teacherLatest[$name] ?? '';
|
||||
if ($count > $bestCount || ($count === $bestCount && $stamp > $bestStamp)) {
|
||||
$bestName = $name;
|
||||
$bestCount = $count;
|
||||
$bestStamp = $stamp;
|
||||
}
|
||||
}
|
||||
$teacherLabel = $bestName ?: '-';
|
||||
}
|
||||
$exampleId = $reports ? reset($reports)['id'] : null;
|
||||
?>
|
||||
@@ -198,7 +219,7 @@
|
||||
<?php endforeach; ?>
|
||||
</div>
|
||||
</td>
|
||||
<td><?= esc($teacherName ?: '-') ?></td>
|
||||
<td><?= esc($teacherLabel) ?></td>
|
||||
<td class="text-end">
|
||||
<?php if ($exampleId): ?>
|
||||
<a class="btn btn-sm btn-outline-primary" href="<?= base_url('admin/progress/view/' . $exampleId) ?>">View</a>
|
||||
|
||||
@@ -182,13 +182,13 @@
|
||||
<form method="post" action="<?= base_url('/administrator/exam-drafts/upload-legacy') ?>" enctype="multipart/form-data" class="row g-3">
|
||||
<?= csrf_field() ?>
|
||||
<div class="col-md-4">
|
||||
<label class="form-label small">Class Section</label>
|
||||
<select name="class_section_id" class="form-select" required>
|
||||
<option value="">Select class</option>
|
||||
<label class="form-label small">Class Sections</label>
|
||||
<select name="class_section_ids[]" class="form-select" multiple required>
|
||||
<?php foreach ($classSections as $cs): ?>
|
||||
<option value="<?= esc($cs['class_section_id']) ?>"><?= esc($cs['class_section_name']) ?></option>
|
||||
<?php endforeach; ?>
|
||||
</select>
|
||||
<div class="form-text">Hold Ctrl (Windows) or Command (Mac) to select multiple sections.</div>
|
||||
</div>
|
||||
<div class="col-md-2">
|
||||
<label class="form-label small">School Year</label>
|
||||
|
||||
@@ -306,6 +306,14 @@
|
||||
const forms = document.querySelectorAll('.needs-validation');
|
||||
Array.from(forms).forEach(form => {
|
||||
form.addEventListener('submit', event => {
|
||||
const islamicUnits = form.querySelectorAll('input[name="unit_islamic[]"]');
|
||||
const hasIslamicUnit = Array.from(islamicUnits).some(input => input.value.trim() !== '');
|
||||
if (!hasIslamicUnit) {
|
||||
event.preventDefault();
|
||||
event.stopPropagation();
|
||||
alert('Please select at least one Islamic Studies unit.');
|
||||
return;
|
||||
}
|
||||
if (!form.checkValidity()) {
|
||||
event.preventDefault();
|
||||
event.stopPropagation();
|
||||
@@ -461,6 +469,10 @@
|
||||
confirmButton.addEventListener('click', () => {
|
||||
confirmInput.value = '1';
|
||||
const form = confirmButton.closest('form') || document.querySelector('form.needs-validation');
|
||||
if (form && typeof form.requestSubmit === 'function') {
|
||||
form.requestSubmit();
|
||||
return;
|
||||
}
|
||||
if (form) {
|
||||
form.submit();
|
||||
}
|
||||
|
||||
@@ -137,6 +137,9 @@
|
||||
<a href="<?= base_url('exam-drafts/files/teacher/' . $draft['teacher_file']) ?>" target="_blank">
|
||||
<?= esc($draft['teacher_filename'] ?? 'Download submitted file') ?>
|
||||
</a>
|
||||
<a href="<?= base_url('exam-drafts/files/teacher/' . $draft['teacher_file']) ?>" target="_blank" class="btn btn-sm btn-outline-secondary ms-2">
|
||||
View
|
||||
</a>
|
||||
</div>
|
||||
<?php else: ?>
|
||||
<div class="text-muted small">No file uploaded</div>
|
||||
@@ -152,6 +155,9 @@
|
||||
<a href="<?= base_url('exam-drafts/files/final/' . $draft['final_file']) ?>" target="_blank" class="link-success small">
|
||||
<?= esc($draft['final_filename'] ?? 'Download final draft') ?>
|
||||
</a>
|
||||
<a href="<?= base_url('exam-drafts/files/final/' . $draft['final_file']) ?>" target="_blank" class="btn btn-sm btn-outline-secondary ms-2">
|
||||
View
|
||||
</a>
|
||||
</div>
|
||||
<?php endif; ?>
|
||||
</td>
|
||||
@@ -199,6 +205,9 @@
|
||||
<a href="<?= base_url('exam-drafts/files/final/' . $item['final_file']) ?>" target="_blank" class="btn btn-sm btn-outline-primary">
|
||||
Download
|
||||
</a>
|
||||
<a href="<?= base_url('exam-drafts/files/final/' . $item['final_file']) ?>" target="_blank" class="btn btn-sm btn-outline-secondary ms-2">
|
||||
View
|
||||
</a>
|
||||
<?php else: ?>
|
||||
<span class="text-muted small">File missing</span>
|
||||
<?php endif; ?>
|
||||
|
||||
Reference in New Issue
Block a user