@auto[]
^use[scroller.p]
#####################################################################
#
#
@initMain[]
^if(def $form:query){
$pageTitle[$form:query on $pageTitle]
}{
$pageTitle[Search software on $pageTitle]
}
#####################################################################
#
#
@bodyMain[][]
^mainSearch[]
^switch[$form:do]{
^case[search]{
^blockSearchData[$form:query;$form:category;$form:in;$form:mode;25;$form:n]
}
^case[DEFAULT]{
^blockSearchForm[]
}
}
#####################################################################
# Ищем и формируем вывод
#
@blockSearchData[query;catID;in;mode;limit;offset][rep;programs;desc;progHash]
Best $query software

^if(def $query){
$rep[^table::create{from to
$query $query}]
}
$count[^DATA.searchPrograms[$query;$catID;$in;$mode]]
$pagesScroller[^scroller::init[$count;$programsOnPage;page]]
$programs[^DATA.searchPrograms[$query;$catID;$in;$mode;^if(def $cookie:sortsearch){$cookie:sortsearch ^if($cookie:direction ne "0"){DESC}{ASC}};$pagesScroller.limit;$pagesScroller.offset]]
|
^blockSort[sortsearch]
|
^pagesScroller.print[
$.mode[html]
$.target_url[/key/$query/]
$.back_name[<]
$.forward_name[>]
$.title[Pages: ]
$.rewrite[1]
]
|

^programs.menu{
$progHash[$programs.fields]
$desc[$progHash.Char_Desc_250]
^if(def $query){$desc[^desc.replace[$rep]]}
$progHash.Char_Desc_250[$desc]
^blockProgramShort[$progHash]
}[

]
#####################################################################
# Форма поиска
#
@blockSearchForm[]
#####################################################################
# Формирует список категорий
#
@blockSearchCats[][mainCats;subCats]