Форум

Форум #

Требования к лабораторной работе № 1 #

Сущности #

Сообщение #

  • Дата и время добавления, формируется приложением автоматически.
  • Тема, строка.
  • Автор сообщения, строка.
  • Текст, многострочный текст.

Детали реализации #

  • В лабораторной № 1 при выводе списка сообщений они должны быть сгруппированы по теме и упорядочены по возрастанию даты и времени добавления сообщения.

Требования к лабораторной работе № 2 #

Сущности #

Автор #

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

Тема #

  • Дата и время добавления, формируется приложением автоматически.
  • Название, строка.
  • Описание, многострочный текст, необязательно.
  • Автор.

Оценка #

  • Дата и время добавления, формируется приложением автоматически.
  • Тема.
  • Рейтинг, число.

Не надо реализовывать страницу или список для показа оценок.

Сообщение #

  • Дата и время добавления, формируется приложением автоматически.
  • Тема.
  • Автор.
  • Текст, многострочный текст.

Не надо реализовывать страницу для показа отдельного сообщения.

Детали реализации #

  • На стартовой странице отображать:
    • Три последние темы, содержащие самые свежие сообщения.
    • Три самых рейтинговых автора. Для каждого автора выводить самую рейтинговую тему автора.
  • На странице списка тем выводится список тем, отсортированный по убыванию времени добавления последнего сообщения в тему.
  • На странице темы отображается:
    • Информация о теме с возможностью перейти на страницу автора.
    • Рейтинг темы, рассчитанный как сумма оценок.
    • Кнопки для увеличения рейтинга на 1 и уменьшения рейтинга на 1. При нажатии на соответствующие кнопки создаётся новая сущность типа «Оценка» с соответствующим рейтингом (1 или -1). Страница обновляется и отображается обновлённый рейтинг.
    • Список сообщений, отсортированный по возрастанию времени добавления сообщения.
    • Кнопка добавления нового сообщения в данную тему.
  • На странице автора отображается:
    • Информация об авторе.
    • Количество сообщений, написанных автором.
    • Количество тем, созданных автором.
    • Рейтинг автора как сумма всех оценок его тем.
    • Список тем, в которых автор является создателем или участником. Темы должны быть отсортированы по убыванию даты активности автора в теме.

Требования к лабораторной работе № 3 #

Сущности #

Автор #

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

Тема #

  • Дата и время добавления, формируется приложением автоматически.
  • Название, строка.
  • Описание, многострочный текст, необязательно.
  • Автор.

Оценка #

  • Дата и время добавления, формируется приложением автоматически.
  • Тема.
  • Рейтинг, число.

Не надо реализовывать страницу или список для показа оценок.

Сообщение #

  • Дата и время добавления, формируется приложением автоматически.
  • Тема.
  • Автор.
  • Текст, многострочный текст.

Не надо реализовывать страницу для показа отдельного сообщения.

Роли #

Гость #

  • Просматривать стартовую страницу.
  • Просматривать список тем форума.
  • Просматривать сообщения конкретной темы.
  • Просматривать страницу пользователя. На странице должно быть отображено:
    • Информация о пользователе.
    • Количество сообщений пользователя в системе.
    • 5 последних тем, в которых пользователь оставлял сообщения.
    • Дата и время последнего сообщения.
    • Дата последнего входа на сайт.
  • Может зарегистрироваться в системе.
  • Может авторизоваться в системе.

Зарегистрированный пользователь #

Доступны все возможности роли «Гость».

  • Может создавать новую тему.
  • Может закрывать для дальнейшего обсуждения свою тему. После закрытия никто не может добавить в тему новые сообщения.
  • Может добавлять новые сообщения в тему.
  • Может редактировать свои сообщения в течении 30 минут после его отправки.
  • Может оставлять свою оценку для темы.
    • Не более одной оценки для темы.
    • Может видеть свою оценку на странице темы.
    • Может изменять свою оценку на странице темы.
  • На своей странице.
    • Может видеть список понравившихся тем. Темы должны быть отсортированы по убыванию даты оценки.

Добросовестный модератор #

Доступны все возможности роли «Гость».

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

© A. M. Васильев, 2022, CC BY-SA 4.0, andrey@crafted.su