| Новости | FAQ | Авторы | Документация | В действии | Библиотека |
| Инструменты | Полезные ссылки | Хостинги | Скачать | Примеры | Форум |
egr 18.11.2002 16:36 / 18.11.2002 16:44
комментировать тут особо нечего:#######
# работа с URI - формирование списка всех URI сайта
@CLASS
uri
#######
# конструктор
@init[]
$items[^table::sql{
SELECT
id,
parent_id,
dir,
title
FROM
t_sections
ORDER BY
id
}]
$uri_list[^table::create{uri id title
/ 0 home
}]
#######
# форм. таблицы соответствий uri для всех разделов сайта
@get_all_site_uri[]
^items.menu{
^uri_list.append{^get_uri[$items.id] $items.id $items.title}
}
$result[$uri_list]
#######
# получение uri раздела по заданному id
@get_uri[id][item;uri;define_parent_id;parent_id;method_id]
$method_id($id)
# получение parent_id раздела по заданному id
$define_parent_id{
$item[^items.select($items.id == $method_id)]
$parent_id($item.parent_id)
}
$define_parent_id
^while($parent_id > 0){
$define_parent_id
$uri[$item.dir/$uri]
$method_id($item.parent_id)
$define_parent_id
}
$define_parent_id
$uri[$item.dir/$uri]
$result[/$uri]Работает так: $object[^uri::init[]] ^object.get_all_site_uri[]