mirivlad
7fa8fd9a64
Feat: UI/UX групп как в назначениях
...
✅ AJAX добавление/удаление пользователей
✅ Modal редактирования группы
✅ Список пользователей с кнопками
✅ Счётчик обновляется без перезагрузки
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-31 15:03:31 +08:00
mirivlad
cb87a76570
Fix: Маршрут show с {course} параметром
...
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-31 08:53:46 +08:00
mirivlad
fefe12367d
Feat: Назначения с несколькими курсами
...
✅ tags-input для курсов (чёрные бейджи)
✅ CourseSearchController API
✅ Массовое создание назначений (курсы × получатели)
✅ Обновлён create.blade.php
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-30 16:31:02 +08:00
mirivlad
81828de9a3
Feat: Назначения курсов с tags-input
...
✅ CourseAssignmentController (index, create, store)
✅ create.blade.php с тремя tags-input (пользователи/группы/организации)
✅ Разные цвета бейджей (зелёный/голубой/синий)
✅ UserSearchController API
✅ index.blade.php список назначений
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-30 16:06:02 +08:00
mirivlad
1f99664d19
Feat: Searchable Select для групп пользователя
...
✅ TomSelect с мультивыбором (теги как в WordPress)
✅ API /api/groups/search для поиска групп
✅ Обновлён edit.blade.php пользователя
✅ Обновлён show.blade.php пользователя
✅ Компонент поддерживает multiple=true
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-30 12:07:07 +08:00
mirivlad
f1f1f4edde
Fix: Добавлен middleware auth для API поиска
...
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-30 10:37:57 +08:00
mirivlad
4503c217eb
Feat: Универсальный компонент Searchable Select
...
✅ TomSelect библиотека (15KB vs 100KB у Select2)
✅ Blade компонент x-searchable-select
✅ API endpoint /api/organizations/search
✅ Поиск по названию и ИНН
✅ AJAX загрузка данных
✅ Используется в create.blade.php для групп
✅ Модульная архитектура - можно использовать для других полей
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-30 10:36:02 +08:00
mirivlad
f198afd8a0
Feat: Управление группами пользователей
...
✅ Modal добавления в группу на странице пользователя
✅ Метод addUser — добавление пользователя в группу
✅ Метод removeUser — удаление пользователя из группы
✅ Фильтр доступных групп (общие + группы организации)
✅ Проверка: нельзя добавить в группу другой организации
✅ Маршруты: POST /users/{user}/groups/add, DELETE /groups/{group}/users/{user}/remove
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-30 10:25:10 +08:00
mirivlad
6599b8d5b6
Feat: CRUD групп с типами (организация/общие)
...
✅ create.blade.php — форма создания с выбором типа группы
✅ store метод — сохранение группы
✅ index.blade.php — кнопка создать, фильтр по пользователю
✅ edit метод — фильтр пользователей по организации
✅ Ссылка Группы в сайдбаре для Admin/Manager
✅ Полные маршруты для groups
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-30 10:21:17 +08:00
mirivlad
d27b631c8f
Feat: CRUD групп пользователей
...
✅ GroupUserController (index, show, edit, update, destroy)
✅ Маршруты: /admin/groups
✅ Blade шаблоны: index, show, edit
✅ Управление пользователями в группах
✅ Исправлена подсветка сайдбара (Курсы/Тесты)
✅ Ссылка на Группы в сайдбаре для Curator
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-30 09:28:53 +08:00
mirivlad
0fd33076ab
Feat: Назначения курсов — Controller + Policy + Routes
...
✅ CourseAssignmentController (resource)
✅ CourseAssignmentPolicy
✅ Маршруты: /admin/course-assignments
✅ Регистрация в AuthServiceProvider
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-30 08:47:02 +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
563fc1157f
Fix: Убран shallow routing для тестов
...
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-26 14:47:02 +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
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
ca2be7a926
Fix: Добавлен namespace для CourseCategoryController в routes/web.php
...
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-26 10:42:33 +08:00
mirivlad
dacff2dd1c
Feat: CRUD категорий курсов
...
✅ CourseCategoryController (resource)
✅ CourseCategoryPolicy
✅ Маршруты: /admin/course-categories
✅ Blade-шаблоны:
- index.blade.php (древовидный список)
- create.blade.php
- _row.blade.php (partial для дерева)
✅ Ссылка в сайдбаре
✅ Вложенность категорий (parent/children)
✅ Scope tree() для древовидной структуры
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-26 10:39:14 +08:00
mirivlad
3bec82a991
Feat: CRUD пользователей
...
✅ UserController (resource controller)
✅ UserPolicy
✅ Маршруты: /admin/users (resource)
✅ Blade-шаблоны:
- admin/users/index.blade.php (с фильтрами)
- admin/users/create.blade.php
- admin/users/edit.blade.php (с группами)
- admin/users/show.blade.php
✅ Ссылка в сайдбаре
✅ Привязка к организациям
✅ Распределение по группам
✅ Управление ролями
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-26 10:29:24 +08:00
mirivlad
052ac71e9d
Fix: Убраны shallow routes для групп. Теперь все маршруты используют organization
...
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-26 09:44:57 +08:00
mirivlad
4f5a615860
CRUD групп - Этап 2
...
✅ GroupController (index, create, store, edit, update, destroy)
✅ GroupPolicy (viewAny, view, create, update, delete)
✅ Маршруты: /admin/organizations/{organization}/groups (shallow resource)
✅ Blade-шаблоны:
- admin/groups/index.blade.php (список групп организации)
- admin/groups/create.blade.php (форма создания)
- admin/groups/edit.blade.php (форма редактирования)
✅ Обновлён admin/organizations/show.blade.php (управление группами)
✅ Обновлён AuthServiceProvider (регистрация GroupPolicy)
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-26 08:53:48 +08:00
mirivlad
2271abf732
CRUD организаций - Этап 2
...
✅ OrganizationController (index, create, store, show, edit, update, destroy)
✅ OrganizationPolicy (viewAny, view, create, update, delete)
✅ Маршруты: /admin/organizations (resource)
✅ Blade-шаблоны:
- admin/organizations/index.blade.php (список с пагинацией)
- admin/organizations/create.blade.php (форма создания)
- admin/organizations/show.blade.php (просмотр + статистика)
- admin/organizations/edit.blade.php (форма редактирования)
✅ Обновлённое меню в dashboard/admin.blade.php
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-26 08:41:45 +08:00
mirivlad
244c56df39
LMS Этап 1 MVP - Laravel 13
...
✅ Базовая функциональность:
- Аутентификация (вход/выход/регистрация)
- Роли и разрешения (Administrator, Manager, Curator, Student)
- Панель управления (dashboard) для разных ролей
✅ База данных (23 миграции):
- users, organizations, groups, user_groups
- course_categories, courses, course_modules
- tests, questions, answers, question_matching_pairs
- test_attempts, test_responses
- course_requests, course_request_items, course_assignments
- scorm_data, user_course_progress, logs
- permission tables
✅ Модели (15 моделей с отношениями):
- User, Organization, Group
- CourseCategory, Course, CourseModule
- Test, Question, Answer, QuestionMatchingPair
- TestAttempt, TestResponse
- CourseRequest, CourseRequestItem, CourseAssignment
- ScormData, UserCourseProgress, Log
✅ Seeders:
- RoleSeeder (роли и разрешения)
- UserSeeder (тестовые пользователи)
✅ Контроллеры:
- LoginController, RegisterController, DashboardController
✅ Blade-шаблоны:
- layouts/app.blade.php
- auth/login.blade.php, auth/register.blade.php
- dashboard/admin.blade.php, dashboard/curator.blade.php, dashboard/student.blade.php
📦 Пакеты:
- Laravel 13 (dev-master)
- spatie/laravel-permission
- laravel/sanctum
🔧 Инфраструктура:
- Nginx конфигурация
- PHP 8.4-FPM
- MariaDB
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-25 17:30:37 +08:00