fix(homework): блок ДЗ — только задания с флагом is_homework; ясная подпись типа
(1) На /homework блок «Актуальные задания» и выпадашка загрузки теперь показывают только задания с флагом ДЗ (is_homework). Обычные тесты/экзамены и не-ДЗ файлы сюда не попадают. Выпадашка привязки — только типы upload/file (куда ученик реально сдаёт файл), без тест-ДЗ и учебников. (2) В конструкторе задания (classes.html) вкладка типа «Сдать работу» → «Загрузка работы»: остальные вкладки — существительные-типы контента (Файл, Готовый тест), а «Сдать работу» читалась как действие ученика. Это тип upload — ДЗ, куда ученик грузит файл (saveAssignment: is_homework=1, count=1); сам тип нужен, поправлена только подпись. Headless-смоук фильтра ДЗ 6/6. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -794,7 +794,7 @@
|
||||
<button class="atype-tab active" id="atype-random-btn" onclick="setAssignType('random')"><i data-lucide="shuffle" style="width:13px;height:13px;vertical-align:-2px"></i> Случайные</button>
|
||||
<button class="atype-tab" id="atype-fixtest-btn" onclick="setAssignType('fixed_test')"><i data-lucide="clipboard-list" style="width:13px;height:13px;vertical-align:-2px"></i> Готовый тест</button>
|
||||
<button class="atype-tab" id="atype-file-btn" onclick="setAssignType('file')"><i data-lucide="paperclip" style="width:13px;height:13px;vertical-align:-2px"></i> Файл</button>
|
||||
<button class="atype-tab" id="atype-upload-btn" onclick="setAssignType('upload')"><i data-lucide="upload" style="width:13px;height:13px;vertical-align:-2px"></i> Сдать работу</button>
|
||||
<button class="atype-tab" id="atype-upload-btn" onclick="setAssignType('upload')"><i data-lucide="upload" style="width:13px;height:13px;vertical-align:-2px"></i> Загрузка работы</button>
|
||||
</div>
|
||||
<div id="a-type-hint" style="font-size:0.76rem;color:var(--text-3);margin:-12px 0 16px;padding:0 4px;line-height:1.5">
|
||||
Вопросы подбираются случайно из базы по выбранному предмету
|
||||
|
||||
@@ -552,7 +552,11 @@
|
||||
const wrap = document.getElementById('hw-active-wrap');
|
||||
const list = document.getElementById('hw-active-list');
|
||||
if (!wrap || !list) return;
|
||||
const active = _assignments.filter(a => !asgnDone(a)).sort((x, y) => urgencyScore(x) - urgencyScore(y));
|
||||
// Только задания с флагом ДЗ (is_homework) — это страница «Домашние задания»,
|
||||
// обычные тесты/экзамены сюда не попадают.
|
||||
const active = _assignments
|
||||
.filter(a => a.is_homework && !asgnDone(a))
|
||||
.sort((x, y) => urgencyScore(x) - urgencyScore(y));
|
||||
if (!active.length) { wrap.style.display = 'none'; return; }
|
||||
wrap.style.display = '';
|
||||
document.getElementById('hw-active-count').textContent = active.length;
|
||||
@@ -565,7 +569,8 @@
|
||||
const sel = document.getElementById('hw-assignment-sel');
|
||||
if (!sel) return;
|
||||
sel.querySelectorAll('option[data-asgn]').forEach(o => o.remove());
|
||||
list.filter(a => !a.session_id && !a.textbook_id).forEach(a => {
|
||||
// Привязать загрузку можно только к ДЗ, куда ученик сдаёт файл (тип upload/file).
|
||||
list.filter(a => a.is_homework && (asgnType(a) === 'upload' || asgnType(a) === 'file')).forEach(a => {
|
||||
const opt = document.createElement('option');
|
||||
opt.value = a.id;
|
||||
opt.textContent = a.title + (a.class_name && a.class_name !== 'Личное задание' ? ' · ' + a.class_name : '');
|
||||
|
||||
Reference in New Issue
Block a user