Нужно было вывести на экран товары, имеющиеся в данный момент на складе.
На скорую руку сделал следущее:
<?php
$shop = & singleton('shop');
$warehouse = & singleton('warehouse');
$shop_id = 1;
$shop_warehouse_id = 1;
$param = array();
$param['current_group_id'] = false;
$element = array();
if(($warehouse_item_res = $warehouse->GetAllWarehouseItems($shop_warehouse_id)) !== false)
{
while($warehouse_item_row = mysql_fetch_assoc($warehouse_item_res))
{
if ($warehouse_item_row['shop_warehouse_items_count'] > 0)
{
if (isset($param['select']))
{
$element['type']=0;
$element['prefix'] = 'OR';
$element['name'] = 'shop_items_catalog_item_id';
$element['if'] = '=';
$element['value'] = $warehouse_item_row['shop_items_catalog_item_id'];
$element['sufix'] = '';
$param['select'][]=$element;
$items_count ++;
}
else
{
$element['type']=0;
$element['prefix'] = 'AND (';
$element['name'] = 'shop_items_catalog_item_id';
$element['if'] = '=';
$element['value'] = $warehouse_item_row['shop_items_catalog_item_id'];
$element['sufix'] = '';
$param['select'][]=$element;
$items_count = 0;
}
}
}
$element['sufix'] = ')';
$param['select'][$items_count]=$element;
$shop->ShowShop($shop_id, 'МагазинКаталогТоваровНаГлавной', $param);
}
?>
Есть ли более изящное решение, поставленной задачи?