Обзор системы Project-X CMS v1.1.0
Project-X CMS v1.1.0Введение
Project-X CMS v1.1.0 — это полнофункциональная система управления контентом, разработанная на базе современных веб-технологий. Система предназначена для управления заказами, контентом, пользователями и обеспечивает комплексное решение для бизнеса с поддержкой многоязычного интерфейса и REST API для внешних интеграций.
Общие характеристики
Версия
Текущая версия: 1.1.0 (от 27 ноября 2025)Технологический стек
- Язык программирования: PHP 8.4
- База данных: PostgreSQL
- Frontend фреймворк: Bootstrap 5
- Архитектура: Model-View-Controller (MVC)
- Аутентификация: Сессионная авторизация с хешированием паролей (Bcrypt)
- Языки интерфейса: Русский, Украинский, Английский
Основные возможности системы
1. Управление пользователями
- Регистрация и аутентификация пользователей
- Система ролей (Admin, Developer, Moderator, Partner, Client)
- Управление профилями пользователей
- Контроль доступа на основе ролей (RBAC)
- История входов и действий
2. Система заказов
- Создание и управление заказами
- Отслеживание статуса заказов
- Модерирование заказов администраторами
- Уточнение информации по заказам
- История изменений статуса
3. Управление контентом
- Создание и редактирование страниц
- Поддержка различных типов контента
- Управление медиафайлами
- Публикация контента
4. Система логирования
- Логирование всех операций в системе
- Просмотр системных логов с фильтрацией
- Скачивание логов для анализа
- Различные уровни логирования (Info, Warning, Error, Critical)
5. Документация проекта
- Встроенная система документации
- Поиск по документации
- Поддержка Markdown с подсветкой синтаксиса
- Версионирование документов
- Контроль доступа к документации по ролям
- Changelog для отслеживания изменений
6. REST API (v1.1.0)
- Управление API ключами через админ-панель
- SHA-256 хеширование ключей
- Rate limiting (per-hour и per-day)
- IP whitelist и endpoint filtering
- Публичные API ендпоинты для реєстрации пользователей
- Полное логирование всех API запросов
- Bearer Token и X-API-Key аутентификация
7. WordPress Integration (v1.1.0)
- Project-X CF7 Integration плагін для WordPress
- Интеграция Contact Form 7 с REST API
- Автоматическая отправка данных форм на реєстрацию
- Безопасное хранение API ключей
- Real-time результаты и статусы
8. Безопасность
- Защита от SQL-инъекций (подготовленные SQL-запросы)
- Защита от XSS-атак (экранирование вывода)
- CSRF-защита при необходимости
- Хеширование паролей с использованием Bcrypt
- Контроль доступа на уровне контроллера и действия
- Логирование попыток доступа
- Rate limiting для предотвращения брутфорса
Структура системы
Иерархия ролей
Admin (Администратор)
├── Полный доступ ко всем функциям
├── Управление пользователями
├── Управление контентом
└── Просмотр логов и аналитики
Developer (Разработчик)
├── Доступ к системным функциям
├── Просмотр логов
├── Доступ к технической документации
└── Управление миграциями БД
Moderator (Модератор)
├── Модерирование заказов
├── Управление статусами заказов
└── Взаимодействие с клиентами
Partner (Партнер)
├── Управление своим профилем
├── Просмотр заказов
└── Управление дополнительными данными
Client (Клиент)
├── Создание и просмотр заказов
├── Отслеживание статуса
└── Управление профилем
Основные модули
#### Core Framework
- Application — главный класс приложения
- Router — маршрутизация URL-адресов
- Auth — управление аутентификацией и авторизацией
- Database — работа с базой данных
- Model — базовый класс для моделей
- View — система шаблонов
- Logger — логирование операций
#### Controllers (Контроллеры)
AuthController— аутентификация и авторизация
ClientOrderController— управление заказами клиентов
OrderModerationController— модерирование заказов
AdminDashboardController— панель администратора
ModeratorDashboardController— панель модератора
ContentController— управление контентом
LogsController— просмотр логов
DocsController— система документации
PagesController— управление статическими страницами
#### Models (Модели)
User— модель пользователя
Order— модель заказа
Content— модель контента
Log— модель логирования
Процесс работы пользователя
Для клиентов
Для администраторов
Для модераторов
Особенности безопасности
Защита от типичных атак
SQL-инъекции
- Использование подготовленных SQL-запросов (prepared statements)
- Параметризованные запросы через PDO
- Валидация входных данных
Кросс-сайтовый скриптинг (XSS)
- Экранирование всех пользовательских данных при выводе
- Использование htmlspecialchars() при необходимости
- Контент Security Policy
CSRF-атаки
- Сессионная валидация при необходимости
- Проверка источника запроса
Контроль доступа
- Проверка прав пользователя на уровне контроллера
- Использование методов canAccessSection() и canPerformAction()
- Матрица прав доступа для всех разделов системы
Управление паролями
- Хеширование с использованием Bcrypt
- Безопасное сравнение хешей
- Требования к сложности пароля при регистрации
Многоязычность
Система поддерживает три языка с полной локализацией:
- Русский (ru) — язык по умолчанию
- Украинский (uk)
- Английский (en)
Строки перевода хранятся в файлах /lang/*.php и загружаются в зависимости от выбранного языка.
Стандарты кодирования
PHP
- Следование PSR-12 стандартам
- Использование namespaces для организации кода
- Документирование через PHPDoc
- Использование type hints для параметров и возвращаемых значений
SQL
- Форматирование запросов для читаемости
- Использование параметризованных запросов
- Индексирование часто используемых полей
HTML/CSS
- Валидный HTML5
- Bootstrap 5 для структуры
- CSS классы для стилизации
- Адаптивный дизайн
Развертывание
Требования
- PHP 8.2+
- PostgreSQL 12+
- Веб-сервер (Apache, Nginx)
- Поддержка mod_rewrite для URL переписывания
Инсталляция
Технические показатели
- Производительность: Обработка 1000+ одновременных пользователей
- Время отклика: < 200ms для основных операций
- Масштабируемость: Горизонтальное масштабирование через БД
- Надежность: Логирование всех критических операций
- Восстановление: Система полного резервного копирования
Дальнейшее развитие
Запланированные функции
- API для мобильного приложения
- Расширенная аналитика и отчеты
- Интеграция с платежными системами
- Отправка email-уведомлений
- SMS-оповещения о статусе заказов
- Сертификация безопасности (SSL/TLS)
Поддержка и обновления
Система активно поддерживается и обновляется. Все изменения документируются в файле changelog.txt. Для получения помощи обратитесь к администратору системы.
Последнее обновление: 27 ноября 2025 Версия документации: 1.1.0