return implode(" and ", $res); } $res = null; switch ($_REQUEST['action']) { case 'getProvProds': $prov_id = (int) $_REQUEST['prov_id']; $our_prod_id = 0; if (isset($_REQUEST['our_prod_id']) && (int) $_REQUEST['our_prod_id'] > 0) { $our_prod_id = (int) $_REQUEST['our_prod_id']; } $names = null; if (isset($_REQUEST['names']) && strlen($_REQUEST['names'])) { $names = explode(' ', $_REQUEST['names']); $names = array_diff($names, array('')); } $res = Product::getProvProds($prov_id, $our_prod_id, $names); break; case 'update_min_prices': Product::updateMinPrices(); $res = "Минимальные цены обновленны успешно."; break; case 'get_prods': $avaliable_fields = array("category" => array("filter_type" => "text", "column_name" => "categories"), "brand" => array("filter_type" => "text", "column_name" => "manufacturer"), "sku" => array("filter_type" => "text", "column_name" => "e.sku"), "price" => array("filter_type" => "text", "column_name" => "min_price")); $provs =& Providers::getProviders(); foreach ($provs as $id => $prov) { $avaliable_fields["providers_products_{$id}_price"] = array("filter_type" => "float", "column_name" => "providers_products_{$id}.price"); } $filter_str = ""; if (isset($_REQUEST["filter_compare"]) && isset($_REQUEST["filter_values"]) && count($_REQUEST["filter_compare"]) && count($_REQUEST["filter_values"])) { $filter_str = buildFilterStr($avaliable_fields, $_REQUEST["filter_compare"], $_REQUEST["filter_values"]); }