Об’єкт Page
Об’єкт Page призначений для генерації HTML коду веб-сторінок на підставі даних, які постачає вершина (об’єкт Node). Цей клас успадковується від класу SmerecashPage і є значним розширенням останнього. Об’єкт не має спеціального конструктора; для його коректного створення слід викликати функцію CreatePage.
function CreatePage($Node, $Mode = NULL)
Ця автономна функція створює об’єкт Page на підставі інформації, переданої в параметрі-об’єкті $Node. Необов’язковий параметр $Mode задає режим, для якого об’єкт Page буде генерувати код. Типово це режим перегляду, але можна генерувати також код для режимів редагування, пошуку, статистики і т.д.
Поля
protected $MetaData – метаінформація для сторінки.
public $Lang – мовна версія, для якої генерується HTML код.
public $Node – вершина, яка містить дані для генерації HTML коду.
protected function Add2Smerecach($HTML, $LastUpd)
Метод записує HTML код сторінки, переданий в параметрі $HTML, у смерекеш для наступного повторного використання коду. Параметр $LastUpd містить дату останньої модифікації коду у форматі ISO.
protected function CanSmerecashe()
Метод повертає логічне значення, котре дозволяє або забороняє смерекешування даної сторінки. Вона викликає метод суперкласа і потім додатково перевіряє атрибут Smerecasheable для даної вершини.
public function CompiledAttr($Params = NULL)
Метод виконує компіляцію смеретегів. $Params – асоціативний масив параметрів, з яких даний метод використовує тільки параметр AttrName – ім’я атрибута, який треба компілювати. Якщо цей параметр не задано, приймається атрибут HTMLCode.
protected function CreateDataset()
Метод повертає масив параметрів, які треба передати об’єкту Дерево для генерації візуального ієрархічного навігатора. Класи-нащадки можуть перекривати цей метод, щоб генерувати замість повного дерева документів сайта специфічне дерево відповідно до поставлених завдань.
public function Display($AsString = False)
Даний метод перекриває метод суперкласа. Він виконує наступну роботу:
- викликає метод OnDisplay() – обробник події генерації сторінки, який може виконувати підготовку додаткових даних;
- викликає метод HTMLString(), який генерує HTML код документа;
- обчислює дату модифікації документа;
- перевіряє можливість смерекешування документа (CanSmerecashe()) і за позитивної відповіді смерекешує його (Add2Smerecach());
- відсилає документ клієнту (SendPage())
protected function HTMLString()
Метод генерує HTML код документа: завантажує потрібну мовну версію шаблона сторінки, компілює наявні в шаблоні смеретеги і виконує підстановку інших елементів HTML коду.
public function Inspector($Params = NULL)
Метод генерує візуальне дерево документів. Масив параметрів, переданий як $Params, об’єднується з масивом, згенерованим методом CreateDataset(). Створюється об’єкт класу Tree, який на підставі масиву параметрів генерує HTML код дерева.
protected function LangAwareString($StrId, $Lang = NULL)
Метод повертає мовно-залежний рядок, ідентифікований мовно-незалежним рядком $StrId, для мови $Lang (або поточної мови, якщо останній параметр не задано). Результат його той самий, що й виклик функції LAString.
protected function OnDisplay()
Метод викликається на початку генерації HTML коду документа і фактично є обробником цієї події. В даному класі він нічого не робить.
public function SetMetaData($Value)
Метод задає метаінформацію для даного об’єкта.