Что представляет собой проект?
Данный проект представляет собой реализацию системы управления контентом сайта. Главные отличительные черты от других подобных CMS должно заключаться в удобной административной панели без полос прокрутки, все должно умещаться в одном статичестком блоке (840*400px). Это необходимо для того, чтобы без проблем изменять контент сайта с планшетников и нетбуков. Также должна быть максимально простая архитектура, чтобы пользователь без проблем мог найти документ, который необходимо редактировать, и с легкостью разобраться в коде. Панель администрирования должна иметь удобные редакторы html/css/php с подсветкой текста. CMS должна поставляться в максимально минимальной комплектации и быть максимально и удобно расширяемой.
Проект включает в себя:
- Разработку архитектуры продукта (mvc, oop, структуры каталогов)
- Разработка первоначальных шаблонов для панели администрирования и для первого сайта
- Разработка программой оболочки
Архитектура проекта. Классы для работы с данными
- Полное взаимодействие с базой данных MySQL
- Конструктор класса устанавливает соединение с базой данных MySQL (если она существует)
- Метод "dbCreate" создает базу данных
- Принимает переменные:
- соединение с сервером
- имя создаваемой базы
- Возвращает true в случае успеха
- Возвращает false в случае неудачи
- Метод "tableCreate" создает таблицу с заданным именем и полями
- Принимает переменные:
- соединение с сервером
- имя создаваемой таблицы
- структуру создаваемой таблицы
- Возвращает true в случае успеха
- Возвращает false в случае неудачи
- Метод "insertRecord" создает новую запись в таблице
- Принимает значения для созданной таблицы
- Метод "updateRecord" обновляет данные в таблице
- Метод "dropRecord" удаляет заданную строку из базы
- Деструктор базы разрывает соединение
- Регистрация\авторизация пользователей
- Метод "newUser" принимает имя (или e-mail, должно настраиваться).Проверяет наличие такого пользователя (и/или e-mail) в базе данных. Возвращает неудачу в случае, если пользователь зарегистрирован (и/или e-mail).
- Метод "passwordUser" принимает две переменных, содержащих пароли. Проверяет условие сложности, соответствие паролей. Возвращает md5() строку пароля.
- Метод "mailUser" принимает метод передачи (sendmail, phpmail), имя пользователя, e-mail, пароль, метод регистрации (с подтверждением или нет), и в зависимости от последнего отправляет тот или иной вид письма.
- Работа с данными, получаемыми из форм
- Метод "textForm" проверяет наличие html/java-script/mysql тегов, и превращает их в html мнемоники.
- Метод "textHtmlForm" обрезает все, кроме html тегов.
- Метод "textPhpForm" обрезает все, кроме php текста.
- Метод "textCssForm" обрезает все, кроме css.
- Метод "textJsForm" обрезает все, кроме JavaScript.
- Метод "textSizeForm" принимает строку и нужный размер и обрезает.
Архитектура проекта. Структура шаблонов
- header.php (шапка сайта и верхнее навигационное меню)
- leftMenu.php (левое навигационное меню)
- content.php (основной контент сайта)
- footer.php (подвал сайта)
Архитектура проекта. Программная оболочка
- Файлы взаимодействия между ядром (модель) и шаблонами (представление)
Комментариев нет:
Отправить комментарий