О платформе Войти
← К списку версий
v0.39.1 21.08.2026 PATCH
Клиентская панель инструкций, Материалы поддержки, Напоминания по мячу
Что сделано
  • Инструкции проекта теперь видны клиенту на странице проекта (только с флагом `is_visible_to_client`)
  • 3 типа инструкций: онлайн-встреча (ссылка), видео-запись, текст с скриншотами
  • Секция «Инструкции» на клиентской странице проекта с иконками по типу
  • Таймлайн событий проекта теперь виден клиенту (без CRUD — только просмотр)
  • Цветные точки по датам с типами событий и описаниями
  • Статус мяча виден клиенту на странице проекта (только при `ball_status !== 'none'`)
  • Цветной индикатор + дата + заметка
  • предупреждение для клиента когда мяч у него
  • Новый JSON-блок `support_materials` в проекте — обучающие видео, презентации, PDF, документы
  • CRUD для админа: вкладка «Материалы поддержки» в редактировании + секция на странице проекта
  • Видно клиенту на странице проекта (с флагом `is_visible_to_client`)
  • 4 типа материалов: ссылка, видео, PDF, текст
  • Новая команда `project:ball-reminder` — проверяет проекты где мяч не двигается 7/14/30 дней
  • Отправляет email-напоминания админу + in-app уведомления владельцу проекта
  • Запускается ежедневно в 10:00 (Europe/Minsk) через планировщик
  • Дублирование не допускается (трекинг порогов в памяти)
  • Миграция `add_support_materials_to_projects_table` — JSON-поле `support_materials`
  • Модель `Project`: +`support_materials` в fillable/casts
  • `AdminProjectController`: +`cleanSupportMaterials()`, +`updateSupportMaterials()`, валидация
  • `AdminProjectEventController`: события проекта — CRUD без изменений
  • `MailLog`: добавлен тип `TYPE_BALL_REMINDER`
  • `BallStatusReminderMail` — HTML-письмо напоминания
  • Планировщик: +`project:ball-reminder` ежедневно в 10:00
  • Версия: 0.39.1
Результат
  • Клиент видит инструкции, материалы поддержки и статус «мяча» на странице проекта
  • Админ получает автоматические напоминания о застрявших проектах
  • Отдел заботы загружает обучающие материалы для клиентов