parser

Написать ответ на текущее сообщение

 

 
   команды управления поиском

вы сами начнете внимательно читать свой же код и думать?

Misha v.3 17.08.2004 19:37

@GetSectionsByParent[pid][tempsection]
$result[^table::create{idpidurititleis_publishedis_admin}]
^if($hashTree.[$pid]){
	$tempsection[$hashTree.[$pid]]
	^tempsection.menu{
		^if($tempsection.pid==$pid){^result.append{$tempsection.id$tempsection.pid$tempsection.uri$tempsection.title$tempsection.is_published$tempsection.is_admin}}
	}
}
вы не задумывались о том, что у вас уже есть в $hashTree?
если задумаетесь то поймете, что:
@GetSectionsByParent[pid]
$result[$hashTree.[$pid]]
ведь именно ради этого делается хеш таблиц-то...
@SectionsCount[pid][tempsection;count]
# Вычисляем количество записей
$result(0)
$tempsection[^GetSectionsByParent[$pid]]
^result.inc($tempsection)
ну вы хоть посмотрели на этот код? да, я ошибся при copy/paste ваших кусков, но копировать-то бездумно не надо. на фига тут $result(0) и ^result.inc(...)? на фига @...[...][...;count]?
Всего 1 запрос
это ужасный запрос. он достает всё. а если у сайта 5000 страниц? опять-же, а почему не достать только документы которые is_published = 1? соотв. н нужны будуь ^if($root.is_published){...}

P.S. @ShowSecondNav[] и @BreadCrops[] я даже не смотрел, но на вид они ужасны, хотя-бы потому что там есть .locate в .menu и class=secondnav и не описаны локальные переменные :)