Початкова сторінка

Микола Жарких (Київ)

Персональний сайт

?

Об’єкт 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)

Метод задає метаінформацію для даного об’єкта.