✅ Клик на текст вопроса открывает modal
✅ Отображение текста вопроса с HTML форматированием
✅ multiple_choice: radio/checkbox в зависимости от кол-ва правильных
✅ matching: таблица с парами
✅ ordering: нумерованный список в правильном порядке
✅ Картинки + текст в ответах
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
✅ edit.blade.php передаёт existing_image
✅ update() сохраняет existing_image если новый файл не загружен
✅ update() удаляет старую картинку если загружена новая
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
✅ store/update используют $request->file() для загрузки
✅ toggleCorrect работает с icon.classList вместо innerHTML
✅ Исправлено наследование цвета иконки от кнопки
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
✅ Исправлена проверка hasText/hasImage в контроллере
✅ answer_text сохраняется как null если пустой
✅ Картинки отображаются в edit.blade.php в input-group-text
✅ Обновлены store и update методы
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
✅ edit.blade.php полностью переписан под create.blade.php
✅ TinyMCE для текста вопроса и пояснения
✅ Картинки в ответах (просмотр + загрузка новых)
✅ Поддержка matching и ordering
✅ index.blade.php: strip_tags для текста вопроса
✅ tests/show.blade.php: strip_tags для текста вопроса
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
✅ Миграция: answer_text теперь nullable
✅ TinyMCE 8.3.2 распакован в public/tinymce/
✅ Русский язык установлен
✅ Используется локальная версия вместо CDN
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
✅ Ответы с картинками без текста теперь сохраняются
✅ TinyMCE инициализируется после DOMContentLoaded
✅ Валидация: хотя бы текст ИЛИ картинка в ответе
✅ Обновлены store и update методы
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>