Объект $SITE

Этот объект является основным объектом сайта. Он содержит как функции для вывода на экран, так и переменные и функции, необходимые для корректной работы других модулей сайта. Находится полностью в модуле index.php

Поля

Синтаксис Описание
mixed input Объект, содержащий все переменные, введенные пользователем (как с помощью метода GET, так и POST). Смотрите подробнее: класс input
array user Текущий пользователь сайта.
string skin Текущий скин (шкура) сайта. (В SiteSource 1.3 используется класс skinmanager)
string logo, dir

Значения не имеют. Для будущего использования. |

string body Содержит весь текст, который будет выводится пользователю в главной области.
string pagename Название текущей станицы
string pagecat Название текущей категории страницы
string backlink, fwdlink, homelink HREF ссылок на соответствующие страницы. backlink и fwdlink в данный момент не используются
string site_links, site_news, site_poll, site_stat Содержит текст, который будет выведен пользователю в соответствующих полях: links – ссылки, news – новостная лента, poll – голосование, stat - статистика
int templatesused Всего использовано шаблонов

Методы

Синтаксис Описание
sta_site() Конструктор
void build_last_news() Заполняет переменную site_news новостной лентой
void build_poll() Помещает в site_poll информацию о текущем голосовании
void build_statistics() Собирает статистику и помещает в site_stat
void build_categories() Создает дерево категорий и выводит его в переменную site_links
array get_categories() Получает из БД список всех разделов сайта. Возвращает таблицу разделов.
string build_cat_tree_branch (array b, int l) Создает HTML-код для категории b, находящейся на глубине l рекурсивно, таким образом охватывая все дочерние категории
array build_categories_tree() Строит дерево разделов на основе таблицы get_categories. Возвращает массив-дерево
void check_login() Проверяет логин пользователя (использует cookies). Если логин неверный, входит как гость. Использует функцию login_as в качестве заполняющей массив user

Все эти функции используются внутри самого класса sta_site. Крайне не рекомендуется вызывать их из других модулей.

Методы для работы с шаблонами и вывода пользователю

string parse_template (string f, array v) Загружает шаблон f и заполняет его переменными v. Возвращает итоговый HTML-текст.
void error(string e) Сообщает об ошибке e
void output() Окончательный вывод. После вызова этой функции какие-либо дальнейшие действия невозможны.
void home(string c) Переносит на домашнюю страницу, сообщая пользователю причину (в параметре c)
void redir(string c, string p) Аналогично home, переносит пользователя на страницу

Комментарии

Массив user содержит три поля: uid – номер пользователя в БД name – имя пользователя (не логин!) group – группа: 0 – гость, 1 – простой пользователь, 2 – администратор

Дерево, возвращаемое функцией build_categories_tree, является ассоциативным массивом, где ключами являются соответствующие номера в БД, а значениями – тоже ассоциативные массивы, где один из ключей – data – список значений данного раздела, а также есть ключи, опять же являющиеся номерами в БД дочерних категорий.

Итак, рассмотрим следующий код:

function test_site() {
	global $DB, $SITE;
 
	$DB->query('SELECT * FROM sta_users WHERE gid=2');
 
	//Если произошла ошибка
	if($DB->successful==0) {
		$SITE->error('Ошибка БД');
	}
 
	//Считываем все полученные строки
	while($DB->allow_get_rows==true) {
		//Добавляем в тело документа еще один шаблон
		//Все переменные в нем будут замещены соответствующими
		//значениями, полученными из БД
		$SITE->body .= 
			$SITE->parse_template('user_link.htm',$DB->row);
 
		//Следующая строка
		$DB->next_row();
		}
 
	//Вывод
	$SITE->pagename = 'Список администраторов сайта';
	$SITE->output();
}
 
projects/sitesource/ssdoc_site.txt · Последние изменения: 2006/05/10 23:32 От myaut
 
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki