Вы можете использовать его в своих модулях.
Например так:

Чтобы вывести дерево категорий вам нужно
a) Подключить класс в модуль
<?php include_once($_CFG['path_to_cms'].'core/libraries/tree/tree_visuals.class.php');?>
b) Создать обьект дерева
$tree = new tree_visuals(7, null, null, 'wbg_tree_categories');
Где аргументы могут быть следующими:
__construct($start_category = 0, $language = null, $cookie_name = "wbg_tree_categories", $SQL_tablename = "wbg_tree_categories")
$start_category - Категория с которой начнется показ дерева (root=0)
$language - язык категории которого должны быть показаны. Если не указано - возмется язык из $start_category (Учтите что категории с языком 0 показываются всегда независимо от выбранного языка)
$cookie_name - название cookie. Этот cookie отвечает за запоминание тех категорий которые были отктыты пользователем (expanded). Т.е если вы откорете категорию и сделаете рефреш странице - web-gooroo запомнит это и автоматически откроет те категории что вы открыли.
$SQL_tablename - Название таблицы по которой будет идти поиск категорий
c) Получить HTML код с деревом
echo $tree->draw_tree()
функция возвращает HTML с деревом и всеми нужными CSS и JS файлами
Дополнительные возможности:
$tree->open_all_categories($ignore_cookie = false)
Функция делает expand (открывает) всем категориям
$ignore_cookie - игнорировать cookie в котором зафиксировано что пользователь открывал до этого
$tree->open_categories($categories = array(), $ignore_cookie = false)
Делает expand только заданным категориям.
$categories = array(1,10,110);
$tree->activate_category($category_id)
Сделает expand для всех parent категорий
$tree->hide_from_tree($category_id)
Прячет категорию из дерева. Соответственно убираются все child категории
Переменные класа:
$this->url_to_class = dirname(str_replace($_CFG['path_to_cms'], $_CFG['url_to_cms'], __FILE__))."/";
$this->url_to_skin = $_CFG['url_to_skin'] . 'tree/';
$this->js_with_onclick_action = $this->url_to_class.'js/tree_onclick.js.php';
$this->file_with_root_category_containers = $_CFG['path_to_skin'] . 'categories/root_category_containers.tpl.php';
$this->js_with_events = $this->url_to_class.'js/tree_events.js.php';
$this->url_to_skin = $_CFG['url_to_skin'] . 'tree/';
$this->js_with_onclick_action = $this->url_to_class.'js/tree_onclick.js.php';
$this->file_with_root_category_containers = $_CFG['path_to_skin'] . 'categories/root_category_containers.tpl.php';
$this->js_with_events = $this->url_to_class.'js/tree_events.js.php';
Примимер:
$sitetree = new tree_visuals(0, $_POST['lang'], "wbg_tree_categories", "wbg_tree_categories");
$sitetree->activate_category($_GET['id']);
$dir = dirname(str_replace($_CFG['path_to_cms'], $_CFG['url_to_cms'],__FILE__)).'/';
$sitetree->js_with_onclick_action = $dir.'onclick.js';
echo $sitetree->draw_tree();
$sitetree->activate_category($_GET['id']);
$dir = dirname(str_replace($_CFG['path_to_cms'], $_CFG['url_to_cms'],__FILE__)).'/';
$sitetree->js_with_onclick_action = $dir.'onclick.js';
echo $sitetree->draw_tree();
Чтобы поставить совственнй обработчик на events вам нужно указать ваш JS файл.
Это делается через переменную $tree->js_with_onclick_action
Содержание простейшего файла :
function tree_do_onclick($id){
alert($id)
}
alert($id)
}
Категории
Документы раздела