/6f062fc4-test

Тестовое задание / Laravel

Primary LanguagePHP

Реализовать на Laravel (или другом популярном фреймворке Symphony, Yii) админку с редактированием списка пользователей:

  • вывод списка пользователей;
  • добавление;
  • редактирование;
  • удаление (нельзя удалить себя).

У пользователя поля: имя, фото, группа (новый или админ), описание, логин Telegram, Telegram ID.

Авторизация через Telegram https://core.telegram.org/widgets/login (автоматическая регистрация* если нету аккаунта). Бота можно создать самостоятельно.

  • Регистрацию нового пользователя подтверждает администратор на сайте. Т.е. новый пользователь не должен видеть/редактировать никаких данных до того, как его подтвердят (сменят группу на "Админ"). Первого пользователя допустимо подтвердить напрямую запросом в БД.

Для внешнего вида админки можно использовать Admin LTE или другую удобную тему

Задание тестовое. Готовый код не будет использоваться в production.

Реализацию прислать в виде ссылки на гитхаб.

Опционально (будет плюсом)

  1. Дополнительные поля и разделы:
    • вывести список групп + добавление/редактирование/удаление. Нельзя удалить "Новый" или "Админ". Пользователь в любой группе, кроме "Админ" не имеет доступ к этому разделу. Связь один-ко-многим
    • Теги. Связь многие-ко-многим. Создаются автоматически при добавлении или редактировании пользователя.
  2. Для просмотра списка пользователей или групп использовать https://datatables.net/ с AJAX-загрузкой.
  3. Фото грузить на Amazon S3. Free tier аккаунт можно зарегистрировать самостоятельно.
  4. Уведомление о регистрации нового пользователя отправлять админам в Телеграм-канал либо персонально каждому подтверждённому пользователю в группе "Админ".
  5. Развёрнутая где-либо рабочая версия с демо-данными. Развернуть можно бесплатно на том же Amazon Lightsail (Free tier до 3-х месяцев, если без Static IP).