РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
75 of 103 menu

Отзывы на работодателей

Реализуйте сайт, на котором пользователи могут оставлять отзывы на работодателей.

Продумайте структуру базы данных для хранения пользователей, отзывов, компаний и комментариев. Реализуйте регистрацию и авторизацию пользователей. Настройте серверную часть для работы с API. Все операции должны выполняться через AJAX-запросы без перезагрузки страницы.

Основные возможности проекта

  • Регистрация и авторизация пользователей.
  • Главная страница со списком отзывов и пагинацией.
  • Страница отзыва с полной информацией.
  • Комментарии к отзывам (с регистрацией).
  • Админ-панель для модерации отзывов.
  • Рейтинг работодателей (средняя оценка).
  • Все операции выполняются через AJAX без перезагрузки страницы.

Регистрация и авторизация

На сайте должна быть реализована регистрация и авторизация пользователей:

  • Регистрация - форма с полями: логин, email, пароль.
  • Авторизация - форма с полями: логин, пароль.
  • Отзывы могут оставлять только зарегистрированные пользователи.
  • Комментарии могут оставлять только зарегистрированные пользователи.

Главная страница

На главной странице сайта должен выводиться список из 10 отзывов с пагинацией. Для каждого отзыва должны выводиться:

  • Заголовок отзыва.
  • Автор отзыва.
  • Название компании-работодателя.
  • Первые 20 слов отзыва.
  • Ссылка на страницу с полным текстом отзыва.
  • Дата публикации.

На странице должна быть возможность фильтровать отзывы по названию компании через AJAX.

Страница отзыва

На странице отзыва должны выводиться:

  • Заголовок отзыва.
  • Автор отзыва.
  • Название компании-работодателя.
  • Полный текст отзыва.
  • Дата публикации.
  • Оценка работодателя (общая оценка, например, от 1 до 5).
  • Плюсы и минусы работы в компании.

Рейтинг работодателей

На отдельной странице выводится список всех компаний с их средним рейтингом:

  • Название компании (ссылка на страницу со списком отзывов о ней).
  • Средняя оценка (на основе всех отзывов).
  • Количество отзывов.
  • Сортировка по рейтингу (от лучших к худшим).

Комментарии

На странице отзыва пользователи сайта могут оставлять комментарии:

  • Комментарии могут оставлять только зарегистрированные пользователи.
  • Форма комментария: текст комментария (текстареа).
  • Отображение имени автора комментария, даты и текста.
  • Комментарии отображаются в хронологическом порядке (сначала старые).
  • Количество комментариев у отзыва.

Добавление отзыва

Зарегистрированные пользователи могут добавлять отзывы через форму на сайте. Форма добавления отзыва содержит следующие поля:

  • Название компании-работодателя (инпут с автодополнением).
  • Заголовок отзыва (инпут).
  • Оценка работодателя (от 1 до 5 звезд).
  • Плюсы работы (текстареа).
  • Минусы работы (текстареа).
  • Текст отзыва (текстареа).
  • Кнопка "Отправить на модерацию".

После отправки отзыв попадает в очередь на модерацию.

Админ-панель

Отзывы должны проходить модерацию через админ-панель. Администратор может управлять отзывами:

  • Список всех отзывов с фильтром по статусу (на модерации, одобрен, отклонен).
  • Для каждого отзыва: заголовок, компания, автор, статус, дата.
  • Действия: принять (одобрить), отклонить (с указанием причины), редактировать.
  • При отклонении отзыва автору отправляется уведомление с причиной.

Взаимодействие с сервером

Все операции выполняются через AJAX-запросы:

  • При загрузке страницы данные загружаются с сервера.
  • При добавлении, редактировании, удалении или изменении статуса отзыва данные отправляются на сервер, после успешного ответа обновляется интерфейс.
  • При добавлении комментария данные отправляются на сервер, после успешного ответа обновляется список комментариев.

Дополнительные возможности

  • Поиск отзывов по названию компании или автору.
  • Сортировка отзывов по дате или оценке.
  • Статистика по компаниям (количество отзывов, средний рейтинг).
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить