Группа принимается из GET-параметра group_id.
<?php
$Search = new Search();
$words=to_str($_GET['text']);
$property = array();
// $property['search_page_module'] = array(3 => array(10));
/*Текущая страница */
$property['current_page']=to_int($_GET['page']);
/* Количество строк результата на страницу */
$property['items_on_page'] = to_int($GLOBALS['LA']['result_on_page']);
/* Максимальная длина поискового запроса */
$property['len'] = to_int($GLOBALS['LA']['maxlen']);
/* Если поиск только по текущему сайту */
if (to_bool($GLOBALS['LA']['SearchCurrentSite']))
{
$property['site_id'] = CURRENT_SITE;
}
//------------------------------------------------
$shop = & singleton('shop');
$shop_id = 10;
$group_id = to_int($_GET['group_id']);
function SetGroups($mas_groups, $set)
{
$mas_groups = to_array($mas_groups);
foreach ($mas_groups as $key=>$value)
{
foreach ($value as $key1=>$value1)
{
$set[] = $value1;
if ($value1 == $key)
{
$set[] = $key;
SetGroups($mas_groups, $set);
}
}
}
return $set;
}
if ($group_id == 0)
{
$property['search_page_module'] = array(3 => array(10));
}
else
{
$mas_group = $shop->GetGroupsTree($group_id, $shop_id, array());
$set = SetGroups($mas_group, array());
// Дописываем саму группу
$set[] = $group_id;
$in = implode(',', $set);
$DataBase = & singleton('DataBase');
$result = $DataBase->query("SELECT `shop_items_catalog_item_id`
FROM `shop_items_catalog_table` WHERE `shop_groups_id` IN ({$in})");
$items_id = array();
while($row = mysql_fetch_assoc($result))
{
$items_id[] = $row['shop_items_catalog_item_id'];
}
$property['search_page_module'] = array(3 => array(array('search_page_module_entity_id' => $shop_id,
'search_page_module_value_type' => 2,
'search_page_module_value_id' => $items_id)));
}
//------------------------------------------------
$Search->GoSearch($words, to_str($GLOBALS['LA']['xsl']), $property);
?>