Класс wAjaxTree служит для построения древовидных списков (простых, с контекстными меню и событиями, с разнородными уровнями и т.д.).
Основные параметры класса
Параметр | Значение по умолчанию | Описание |
q | null | wSql-объект. |
f | null | Объект класса wPrototype. |
_data | array() | Массив данных для списка. |
sql | Sql-запрос для формирования данных списка. | |
caption | Заголовок страницы. | |
edit_table | Название редактируемой таблицы в sql-запросе. | |
edit_keyfield | id | Ключевое поле редактируемой таблицы в sql-запросе. |
edit_parent | parent | Родительское поле в редактируемой таблице. |
card_func | Callback-функция при клике на карточке. | |
title_func | Callback-функция при рисовании заголовка | |
jajaxtree | true | Подключение wajaxtree.js. |
jquery | true | Подключение jquery.js. |
jqueryui | true | Подключение jqueryui.js. |
jcontextmenu | true | Подключение contextmenu.js. |
adding | false | Возможность добавления записей |
editing | false | Возможность редактирования записей. |
copying | true | Возможность копирования записей. |
editing | false | Возможность редактирования записей. |
deleting | false | Возможность удаления записей. |
folder_func | Callback-функция, которая срабатывает при клике на папке. | |
folder_menu | true | Отображение контекстного меню папки (если доступно). |
leaf_func | Callback-функция, которая срабатывает при клике на дочернем элементе. | |
unselect | false | Возможность отмены выбора ветки дерева и отображение всех записей. |
unselect_text | Заголовок ссылки для отмены выбора ветки дерева. | |
a_root_folder | Css-стили для корневой папки. | |
a_root_folder_open | Css-стили для раскрытой корневой папки. | |
a_root_leaf | Css-стили для первого дочернего элемента. | |
a_folder | Css-стили для папки. | |
a_folder_open | Css-стили для открытой папки. | |
a_leaf | Css-стили для дочернего элемента. | |
a_leaf_active | Css-стили для активного дочернего элемента. | |
active_css | active | Дополнительный css-класс для активного дочернего элемента. |
li_css | li_tree | Css-класс для элементов < li > |
show_root_plus | 1 | Отображение иконки раскрытия на корневой папке. |
_contextmenu | array() | Контекстное меню элементов. |
subgrid | Название контейнера для подчиненной таблицы. | |
onopendialog | Название Callback-функции, которая вызывается при открытии диалогового окна. | |
onclosedialog | Название Callback-функции, которая вызывается при закрытии диалогового окна. | |
onloadnode | Callback-функция, которая срабатывает после загрузки узла списка. | |
startfrom | 0 | Код (id) объекта, начиная с которого надо рисовать элементы списка. |
Описание методов
addHidden()
public function addHidden($name = '', $val = '')
Добавляет скрытое поле к списку.
$parser->addCss('main/styles/wad-er.css'); include_once(SYS_BASE_PATH.'main/classes/wajaxtree.class.php'); $w = new wAjaxTree(); //… $w->addHidden('name_hidden','value_hidden'); $w->show();
В результате работы этого примера в списке появляется дополнительный html-код:
< input id="name_hidden" name="name_hidden" value="value_hidden" type="hidden" >
addContextMenu()
public function addContextMenu($name = '',$action = '', $querystring = '', $to_end = true)
Добавляет в контекстное меню элемента новый пункт.
$parser->addCss('main/styles/wad-er.css'); include_once(SYS_BASE_PATH.'main/classes/wajaxtree.class.php'); $w = new wAjaxTree (); //… $w->addContextMenu($parser->gt('delete', __FILE__),'delete', '', false); $w->show();
addData()
public function addData()
Добавление данных к набору данных списка.
$parser->addCss('main/styles/wad-er.css'); include_once(SYS_BASE_PATH.'main/classes/wajaxtree.class.php'); $w = new wAjaxTree(); $w->addData('name','name'); $w->addData('name1','name1'); $w->addData('name2','name2'); $w->show();
makeNotes()
public function makeNotes($d, $r)
Добавляет примечание в тег , если данные для списка передаются в xml-формате.
makeFuncpars()
public function makeFuncpars($d, $r)
Добавляет функцию в тег < funpars >, если данные для списка передаются в xml-формате.
makeTreetype()
public function makeTreetype($d, $r)
Добавляет тип древовидного списка в тег < treetype >, если данные для списка передаются в xml-формате.
makeTreeclass()
public function makeTreeclass($d, $r)
Добавляет класс древовидного списка в тег < treeclass >, если данные для списка передаются в xml-формате.
show()
public function show()
Отображение древовидного списка. Пример простого древовидного списка с использованием конструктора запросов wSql:
$parser->addCss('main/styles/wad-er.css'); // Create new instance of the wAjaxTree class include_once(SYS_BASE_PATH.'main/classes/wajaxtree.class.php'); $w = new wAjaxTree(); // Set sql $w->q->select('objid'); $w->q->select('name', '', array('lang' => true)); // Or $w->q->lselect('name'); $w->q->select('isfolder'); $w->q->select('parent'); $w->q->from('sys_objects'); $w->q->where("objid<>'0'"); $w->q->where("objtype='sys_elements_pages'"); $w->q->where("parent=:parent:"); $w->q->orderby('name', true); // Or $w->q->lorderby('name'); // Print the tree $w->show();