Административная часть сайта

Если файл index.php определил, что запрошена административная часть, то подключается файл adm/index.php. Файл выполняет следующие функции:

  1. подключение всех «жизненно важных» файлов;

  2. инициация основного объекта системы.

Основной объект системы – экземпляр класса Initadmin, описанный в файле adm/includes/init.php.

При инициации основного объекта системы происходит:

  1. старт сессии;

  2. определение администратора;

  3. определение запрошенной языковой версии для редактирования;

  4. определение запрошенного модуля;

  5. подключение администрирования модуля;

  6. подключение шаблона административной части.

Экземпляр класса Initadmin передается во все другие объекты и доступен из любого места системы в виде переменной $this->diafan.

Таким образом в любом месте системы можно получить глобальные данные:

  1. данные о текущей странице;

  2. переданные в URL переменные;

  3. общие функции;

  4. объекты классов-подключений.

Теперь подробнее об этих данных:

Данные о текущей странице

В область глобальной видимости попадают следующие данные о текущей странице и данные, сформированные модулей:

  • $this->diafan->cid – номер текущей страницы;

  • $this->diafan->rewrite – ЧПУ текущей страницы сайта;

  • $this->diafan->name – название текущей страницы;

  • $this->diafan->theme – файл шаблона текущей страницы;

  • $this->diafan->text – контент текущей страницы;

  • $this->diafan->parent_id – номер страницы родителя;

  • $this->diafan->module – модуль, прикрепленный к текущей странице.

Переданные в URL переменные

Список всех доступных переменных задан в массиве $this->diafan->rewrite_variable_names.

  • $this->diafan->page – номер страницы;

  • $this->diafan->addnewзначение 1, добавление элемента;

  • $this->diafan->edit – номер элемента для редактирования;

  • $this->diafan->savenewзначение 1, сохранение нового элемента;

  • $this->diafan->save – номер элемента для сохранения;

  • $this->diafan->cat – номер категории;

  • $this->diafan->site – номер страницы сайта;

  • $this->diafan->parent – номер родителя;

  • $this->diafan->error – код ошибки, уведомления.

Пример:
Страница редактирования товара – http://www.site.ru/admin/shop/edit13/

Общие функции

Класс Initadmin наследует абстрактный класс Core (includes/core.php). Все функции этого класса можно вызвать в виде:

$this->diafan->название_функции();

Объекты классов-подключений

В основном объекте инициируются классы:

Кроме того, через основной объект можно обратится к любому модулю-подключению. Если в модуле есть файл modules/модуль/модуль.inc.php, где описан класс Модуль_inc, то при первом обращении к переменной $this->diafan->_модуль, создастся экземпляр класса.



Не понятно? Уточните