Untitled
unknown
php
3 years ago
2.1 kB
5
Indexable
public function getVouchersForProductAndAddToNewProduct($id_product)
{
$cartRuleProductRuleValueQuery = "SELECT crpr.type, GROUP_CONCAT(DISTINCT crprv.id_item) AS id_items, GROUP_CONCAT(DISTINCT cr.id_cart_rule) AS id_cart_rules
FROM `" . _DB_PREFIX_ . "cart_rule` cr
INNER JOIN `" . _DB_PREFIX_ . "cart_rule_product_rule_group` crprg ON cr.id_cart_rule = crprg.id_cart_rule
INNER JOIN `" . _DB_PREFIX_ . "cart_rule_product_rule` crpr ON crprg.id_product_rule_group = crpr.id_product_rule_group
INNER join `" . _DB_PREFIX_ . "cart_rule_product_rule_value` crprv on crpr.id_product_rule = crprv.id_product_rule
WHERE cr.`code` = ''
GROUP BY crpr.type";
$cartRuleProductRuleValues = DB::getInstance()->executeS($cartRuleProductRuleValueQuery);
$useReduction = [];
if (count($cartRuleProductRuleValues)) {
foreach ($cartRuleProductRuleValues as $item) {
switch ($item['type']) {
case 'attributes':
//TODO
break;
case 'products':
if (in_array($id_product, explode(',', $item['id_items']))) {
array_merge($useReduction, explode(',', $item['id_cart_rules']));
}
break;
case 'manufacturers':
//TODO
break;
case 'suppliers':
//TODO
break;
case 'categories':
/* $product = new Product($id_product);
$categories = $product->getCategories();
if(count($categories)){
if (in_array($item['type'], $categories)) {
array_merge($useReduction, explode(',', $item['id_cart_rules']));
}
} */
break;
default:
//TODO
break;
}
}
}
return $useReduction;
}Editor is loading...