Форум PHP тематики

Реализуйте форум PHP тематики, в котором пользователи смогут задавать вопросы на тему PHP. Сайт должен поддерживать регистрацию с разделением по ролям: пользователь, модератор, администратор.

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

Регистрация и роли

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

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

На главной странице форума должен быть выведен список 30 последних тем с пагинацией. Для каждой темы должно быть указано:

Темы должны быть отсортированы по дате последнего поста (сначала новые). Также на странице должна быть кнопка "Создать новую тему" для зарегистрированных пользователей.

Страница темы

На странице темы пользователи размещают свои посты. Каждая тема начинается с заголовка и первого поста автора темы:

Каждый пост должен содержать:

Возможности для автора поста:

Возможности для модератора:

Создание новой темы

Зарегистрированные пользователи могут создавать новые темы. Для этого на главной странице есть кнопка "Создать новую тему". Форма создания темы содержит:

Новая тема сразу появляется на форуме и попадает в общий список.

Страница профиля

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

Пользователи могут просматривать профили других пользователей (только просмотр, без редактирования).

Личный кабинет пользователя

В личном кабинете пользователь может управлять своими темами и постами:

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

В админ-панели администратор может управлять пользователями:

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