/firstbit-laravel

Тестовое задание на вакансию в Первый Бит

Primary LanguagePHP

Тестовое задание в Первый Бит

Для установки, необходимо наличие установленного Git и Composer

Развёртывание проекта

  1. Скачать файлы сайта
git clone https://github.com/vmrfriz/firstbit-laravel.git
composer i
  1. В файле .env заполнить доступы к базе данных

  2. Запустить миграцию базы данных

php artisan migrate
php artisan storage:link
php artisan filldatabase
  1. Настроить корневую директорию web-сервера на папку public

Тестировалось на

  • PHP 7.1
  • MySQL 5.5

Страницы

/ - страница с отзывами и формой /edit/1 - страница редактирования отзыва (только для администратора) /login - страница входа

Функционал по ТЗ

[x] Сделать форму обратной связи.
На странице должна быть форма: Имя, E-mail, текст сообщения, кнопка "Отправить", а под ней все оставленные отзывы. Сортировка по умолчанию - по дате, последние наверху. Также должна быть валидация полей.

[x] К отзыву можно прикрепить картинку.
Картинка должна быть не более 320х240 пикселей, при попытке залить изображение большего размера, картинка должна быть пропорционально уменьшена до заданных размеров. Допустимые форматы: JPG, GIF, PNG


[x] Добавить кнопку "Предварительный просмотр", рядом с кнопкой "Отправить".
Предварительный просмотр должен работать без перезагрузки страницы.

[x] Сделать вход для администратора (логин "admin", пароль "123").
Администратор должен иметь возможность редактировать отзыв. Измененные отзывы в общем списке выводятся с пометкой "изменен администратором". пока нет возможности публиковать и снимать с публикации

[x] У администратора должна быть возможность модерирования.
Т.е. на странице администратора показаны отзывы с миниатюрами картинок и их статусы (принят/отклонен).
Отзыв становится видимым для всех только после принятия админом.
Отклоненные отзывы остаются в базе, но не показываются обычным пользователям. Изменение картинки администратором не требуется.

[ ] Не использовать готовых фреймворков (сделать свою реализацию MVC).