О платформе Войти
← К списку версий
v0.12.0 29.07.2026 MINOR
Passwordless registration, интеграции и UX
Added
  • Passwordless registration: пароль стал необязательным при создании; при его отсутствии формируется защищённая ссылка-приглашение, по которой пользователь сам задаст пароль. Форма создания пользователя: поле пароля заменено подсказкой «Оставьте пустым — пользователь сам задаст пароль»
  • SetPasswordController GET /set-password/{token} + POST /set-password/{token}: показывается форма, где пользователь вводит пароль → после установки автоматический вход в dashboard. Сообщение: «Администратор уже зарегистрировал вас на платформе IPD»
  • Проверка passwordless в login если password = null, выводится ошибка «Вы ещё не установили пароль. Используйте ссылку-приглашение»
  • Колонка «Пользователи» на /admin/projects AdminProjectController index: withCount('clients'). Таблица: новая колонка «Пользователи» с счётчиком и склонением (пользователь/пользователя/пользователей)
  • Индикатор каналов на странице проекта новая колонка «Каналы»: красный бейдж «0 каналов» (нет верифицированных), жёлтый «N/3» (частично), зелёный «✓ 3/3» (все)
  • Кнопка «Отправить подтверждение» email POST /admin/users/{id}/send-email-verification: устанавливает email_verified_at, метод-заглушка для будущей отправки письма
  • Фундамент настройки Telegram-бота в разделе «Интеграции»: параметры подключения бота и привязка чата к клиенту с кодом верификации.
  • Фундамент SMS Gateway в разделе «Интеграции»: параметры подключения шлюза, имя отправителя и код верификации телефона клиента с меткой времени.
  • Модель Client дополнена полями верификации (телефон, Telegram) и флагом установки пароля, добавлен вспомогательный метод.
Changed
  • Версия платформы: 0.11.0 → 0.12.0
  • `app/Http/Controllers/Admin/AdminUserController.php` — store: password nullable, при отсутствии генерируется verification_token, email_verified_at не ставится. Добавлен sendEmailVerification()
  • `app/Http/Controllers/Admin/AdminProjectController.php` — index: withCount('clients')
  • `app/Http/Controllers/Admin/SettingsController.php` — добавлен таб «Интеграции» с настройками подключения Telegram и SMS.
  • `app/Http/Controllers/Auth/ClientAuthController.php` — login: проверка что password не null, иначе сообщение о ссылке-приглашении
  • `resources/views/admin/users/create.blade.php` — поле пароля заменено на подсказку
  • `resources/views/admin/projects/index.blade.php` — колонка «Пользователи» с clients_count
  • `resources/views/admin/projects/show.blade.php` — колонка «Каналы» с индикатором верификации
  • `resources/views/admin/users/show.blade.php` — кнопка «Отправить» для email
  • `resources/views/admin/settings.blade.php` — новый таб «Интеграции» с полями Telegram и SMS
  • `routes/web.php` — 3 новых маршрута: set-password (GET+POST), send-email-verification
  • `config/app.php` — APP_VERSION: 0.11.0 → 0.12.0
Files
  • `database/migrations/2026_07_29_100004_add_passwordless_fields_to_clients_table.php` — password nullable, verification_token, password_set_at
  • `database/migrations/2026_07_29_100005_add_verification_codes_to_clients_table.php` — поля кодов верификации (Telegram, телефон).
  • `app/Http/Controllers/Auth/SetPasswordController.php` — установка пароля по токену
  • `resources/views/auth/set-password.blade.php` — форма установки пароля