Commit Graph

62 Commits (965eb593db1e5a66a5e71cac5564f99e23bc2df5)

Author SHA1 Message Date
mirivlad 965eb593db Fix: UTF-8 кодировка в modal + исправлен backdrop
 urlencode/decodeURIComponent вместо base64
 modal-dialog-scrollable для прокрутки
 Обработка null для matching/ordering
 aria-hidden='true' для accessibility

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-27 17:25:34 +08:00
mirivlad 26eabf0cfa Fix: Base64 encoding для JSON данных в modal
 Используем base64_encode() в Blade
 Используем atob() + JSON.parse() в JavaScript
 Обработка null значений для matching/ordering

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-27 17:16:57 +08:00
mirivlad 4201f92476 Feat: Модальное окно предпросмотра вопросов
 Клик на текст вопроса открывает modal
 Отображение текста вопроса с HTML форматированием
 multiple_choice: radio/checkbox в зависимости от кол-ва правильных
 matching: таблица с парами
 ordering: нумерованный список в правильном порядке
 Картинки + текст в ответах

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-27 16:40:18 +08:00
mirivlad d1d7eecb69 Fix: Сохранение существующих картинок при редактировании
 edit.blade.php передаёт existing_image
 update() сохраняет existing_image если новый файл не загружен
 update() удаляет старую картинку если загружена новая

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-27 16:33:14 +08:00
mirivlad 523e8912af Fix: Добавлен 'image' в $fillable модели Answer
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-27 16:22:06 +08:00
mirivlad 95850ca342 Fix: Полный дебаг QuestionController
 Логирование каждого шага
 Валидация картинок вручную
 Проверка hasFile для каждого ответа
 Логирование сохранения

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-27 13:34:31 +08:00
mirivlad 71cb31f784 Fix: Сохранение is_correct и картинок
 Используем $request->input('answers') вместо $validated['answers']
 is_correct проверяем как строку '1'
 Картинки загружаются через $request->file()
 Обновлены store и update методы

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-27 12:40:11 +08:00
mirivlad 729e39bd78 Fix: Добавлен $request в use() closure
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-27 12:27:49 +08:00
mirivlad be1ba308c9 Fix: Картинки в ответах + toggleCorrect иконка
 store/update используют $request->file() для загрузки
 toggleCorrect работает с icon.classList вместо innerHTML
 Исправлено наследование цвета иконки от кнопки

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-27 11:54:48 +08:00
mirivlad eefd5fc5da Fix: Сохранение картинок в ответах
 Исправлена проверка hasText/hasImage в контроллере
 answer_text сохраняется как null если пустой
 Картинки отображаются в edit.blade.php в input-group-text
 Обновлены store и update методы

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-27 11:48:59 +08:00
mirivlad 8dc9e59a68 Feat: Обновлён edit.blade.php + strip_tags в index
 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>
2026-03-27 11:14:09 +08:00
mirivlad 20ccc70092 Fix: answer_text nullable - миграция применена
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-27 11:08:57 +08:00
mirivlad 7f10576181 Fix: TinyMCE skin + toggleCorrect исправлен
 TinyMCE: добавлены skin: 'oxide' и content_css: 'default'
 toggleCorrect: использует querySelector вместо previousElementSibling
 Добавлено переключение классов btn-success/btn-outline-success

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-27 10:58:30 +08:00
mirivlad ba4a16c7f9 Fix: Добавлен license_key: 'gpl' для TinyMCE
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-27 10:54:58 +08:00
mirivlad ea4d4df43d Fix: answer_text nullable + TinyMCE локально
 Миграция: answer_text теперь nullable
 TinyMCE 8.3.2 распакован в public/tinymce/
 Русский язык установлен
 Используется локальная версия вместо CDN

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-27 10:53:00 +08:00
mirivlad ffcdd86712 Fix: Исправления для вопросов
 Ответы с картинками без текста теперь сохраняются
 TinyMCE инициализируется после DOMContentLoaded
 Валидация: хотя бы текст ИЛИ картинка в ответе
 Обновлены store и update методы

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-27 10:41:14 +08:00
mirivlad 1c94812f7d Feat: Обновлён create.blade.php для вопросов
 TinyMCE WYSIWYG редактор (HTML + картинки)
 Поддержка ordering типа (сортировка)
 Картинки в ответах (загрузка файлов)
 Обновлён QuestionController (store/update)
 Валидация изображений (max 2MB)

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-27 09:58:35 +08:00
mirivlad 025b03c94b Refactor: Убран single_choice (частный случай multiple_choice)
 Все single_choice конвертированы в multiple_choice
 Отображение (radio/checkbox) зависит от кол-ва правильных ответов:
   - 1 правильный → radio (bi-circle)
   - 2+ правильных → checkbox (bi-check2-square)
 Обновлены миграции
 Обновлены view файлы

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-27 09:55:33 +08:00
mirivlad acf616fc08 Feat: Обновление вопросов
 Удалён input тип (не имеет смысла без автопроверки)
 Добавлен ordering тип (сортировка элементов)
 Добавлено поле image для ответов
 Миграции применены
 QuestionOrderingItem модель

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-27 09:51:17 +08:00
mirivlad e730cd4856 Feat: Улучшен UI списка вопросов
 Таблица вместо списка (удобно для 40-50+ вопросов)
 Иконки для типов вопросов:
   - single_choice: 📻 (radio button)
   - multiple_choice:  (checkbox)
   - input: 📝 (textarea)
   - matching: ↔️ (arrows)
 Purple badge для matching
 Номер вопроса, баллы, кол-во ответов в таблице

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-26 17:26:30 +08:00
mirivlad 54e13c7c96 Feat: Добавлены show и edit шаблоны для вопросов
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-26 17:13:59 +08:00
mirivlad 89e72895c8 Fix: Исправлены все маршруты admin.tests.* на admin.courses.tests.*
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-26 17:07:00 +08:00
mirivlad 6ed7654773 Fix: QuestionPolicy возвращал false - исправлен на проверку ролей
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-26 16:50:27 +08:00
mirivlad 1ac09e6889 Fix: QuestionController не был обновлён - перезаписан полный контроллер
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-26 16:47:31 +08:00
mirivlad d73fbf3050 Fix: Исправлен маршрут admin.tests.show на admin.courses.tests.show
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-26 16:21:57 +08:00
mirivlad dc5418fdfe Fix: Исправлены ссылки на тесты и вопросы
 show.blade.php теста - ссылки на вопросы работают
 show.blade.php курса - ссылки на тесты работают
 Сайдбар - ссылка Тесты ведёт на список курсов
 Вопросы кликабельны в списке

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-26 16:18:55 +08:00
mirivlad 4235f913d3 Fix: Исправлены маршруты вопросов на admin.tests.questions.*
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-26 16:01:58 +08:00
mirivlad 464f1baa01 Fix: Исправлены маршруты в шаблонах вопросов
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-26 15:57:39 +08:00
mirivlad a34c2e2812 Feat: CRUD вопросов (начало)
 QuestionController (resource)
 QuestionPolicy
 Маршруты: /admin/tests/{test}/questions
 Blade-шаблоны: index, create (с JS для динамических ответов)
 Поддержка типов: single_choice, multiple_choice, input, matching
 Интеграция в show теста

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-26 15:45:14 +08:00
mirivlad fe61dcf4b7 Fix: Исправлены имена маршрутов в show и edit для тестов
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-26 14:49:11 +08:00
mirivlad 563fc1157f Fix: Убран shallow routing для тестов
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-26 14:47:02 +08:00
mirivlad 895789cabf Feat: Добавлены show и edit шаблоны для тестов
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-26 14:33:18 +08:00
mirivlad 7bfa1af596 Fix: Исправлены имена маршрутов в create.blade.php
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-26 14:27:41 +08:00
mirivlad 8f02084d3a Fix: Исправлен TestPolicy - возвращать true для ролей
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-26 13:54:02 +08:00
mirivlad eeb0628e51 Feat: TestPolicy для управления правами доступа к тестам
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-26 13:48:42 +08:00
mirivlad 8ab423607c Fix: Исправлены имена маршрутов для тестов
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-26 13:37:30 +08:00
mirivlad 32c9df5453 Feat: CRUD тестов (начало)
 TestController (resource controller)
 Маршруты: /admin/courses/{course}/tests
 Blade-шаблоны: index, create
 Интеграция в show курса

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-26 13:17:44 +08:00
mirivlad 68439932a8 Fix: Убрано ограничение на максимальные размеры обложки
 Оставлен только мин. размер 400x300px
 Макс. размеры сняты (поддержка 4K, 8K)
 Обновлены сообщения об ошибках
 Обновлены подсказки в формах

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-26 12:57:56 +08:00
mirivlad 0ac72cadc5 Feat: Улучшен интерфейс загрузки обложки
 Показ превью thumbnail при редактировании
 Убраны технические подробности о размерах
 Оставлена только важная информация (10MB, форматы)

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-26 12:50:43 +08:00
mirivlad 0196ec2c12 Fix: Index использует thumbnail, show использует оригинал
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-26 12:46:07 +08:00
mirivlad f48c22f75a Fix: Исправлен путь к файлу в generateThumbnail()
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-26 12:41:06 +08:00
mirivlad b3d1daeea6 Feat: Генерация thumbnail для обложек курсов
 Intervention Image установлен
 generateThumbnail() - создаёт копию 400x300px с crop по центру
 deleteThumbnails() - удаляет оригинал и thumb
 Обновлены store, update, destroy методы
 View используют оригиналы для show, thumb для списка

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-26 12:39:10 +08:00
mirivlad 65cb891658 Feat: Увеличены лимиты для обложек курсов
 Мин. размеры: 400x300px
 Макс. размеры: 3000x2000px
 Макс. размер файла: 10MB
 Обновлены подсказки в формах

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-26 12:34:25 +08:00
mirivlad 5ee549fbd1 Feat: Добавлена валидация обложки курса
 Минимальные размеры: 400x300px
 Максимальный размер: 2MB
 Форматы: JPEG, PNG, WebP
 Подсказки в формах
 Кастомные сообщения об ошибках

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-26 12:24:28 +08:00
mirivlad 731eb48537 Feat: CRUD курсов
 CourseController (resource)
 CoursePolicy
 Маршруты: /admin/courses
 Blade-шаблоны:
  - index.blade.php (список с карточками)
  - create.blade.php (форма создания)
  - edit.blade.php (форма редактирования)
  - show.blade.php (просмотр)
 Ссылка в сайдбаре
 Загрузка изображений (thumbnail)
 Типы курсов: standard, scorm, h5p

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-26 11:31:40 +08:00
mirivlad ca95621856 Fix: Изменено $category на $courseCategory для соответствия route model binding
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-26 11:23:26 +08:00
mirivlad 381c31c686 Fix: Исправлена ссылка в edit.blade.php
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-26 10:59:51 +08:00
mirivlad 4436a6b2b3 Feat: Добавлены show и edit шаблоны для категорий
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-26 10:53:58 +08:00
mirivlad 5c1306d6e5 Fix: Указан правильный foreign key в CourseCategory::courses()
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-26 10:50:16 +08:00
mirivlad 8ce35370a9 Fix: Удалена дублирующая миграция category_id
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-26 10:45:54 +08:00