public static function setProductReduction($id_product, $id_group = null, $id_category = null, $reduction = null) { $res = true; GroupReduction::deleteProductReduction((int) $id_product); $categories = Product::getProductCategories((int) $id_product); if ($categories) { foreach ($categories as $category) { $reductions = GroupReduction::getGroupsByCategoryId((int) $category); if ($reductions) { foreach ($reductions as $reduction) { $current_group_reduction = new GroupReduction((int) $reduction['id_group_reduction']); $res &= $current_group_reduction->_setCache(); } } } } return $res; }