darshan soni Posted December 12, 2014 Share Posted December 12, 2014 I have multishop configured in my prestashop..The voucher code for selected shop is not workin..Please help me...My code is as below... public static function getCustomerCartRules($id_lang, $id_customer, $active = false, $includeGeneric = true, $inStock = false, Cart $cart = null) { if (!CartRule::isFeatureActive()) return array(); $result = Db::getInstance(_PS_USE_SQL_SLAVE_)->executeS(' SELECT * FROM `'._DB_PREFIX_.'cart_rule` cr LEFT JOIN `'._DB_PREFIX_.'cart_rule_lang` crl ON (cr.`id_cart_rule` = crl.`id_cart_rule` AND crl.`id_lang` = '.(int)$id_lang.') WHERE ( cr.`id_customer` = '.(int)$id_customer.' OR cr.group_restriction = 1 '.($includeGeneric ? 'OR cr.`id_customer` = 0' : '').' ) AND cr.date_from < "'.date('Y-m-d H:i:s').'" AND cr.date_to > "'.date('Y-m-d H:i:s').'" '.($active ? 'AND cr.`active` = 1' : '').' '.($inStock ? 'AND cr.`quantity` > 0' : '')); //echo "<pre>"; //print_r($result); //echo "</pre>"; //die; /** Added for Shop restriction *********/ foreach ($result as $key => $cart_rule){ $result2 = Db::getInstance(_PS_USE_SQL_SLAVE_)->executeS(' SELECT * FROM `'._DB_PREFIX_.'cart_rule_shop` crs WHERE crs.id_cart_rule = '.$cart_rule['id_cart_rule']); echo "<pre>"; print_r($result2); echo "</pre>"; //die; if(count($result2)) { //echo "<br>----------------"; //echo "<br>SHOP".Context::getContext()->shop->id; //echo "<br>".$value2['id_shop']; //echo "<br>--------------------"; foreach($result2 as $key2 =>$value2){ if(Context::getContext()->shop->id != $value2['id_shop']) //echo ($result[$key]); unset($result[$key]); } } } Link to comment Share on other sites More sharing options...
darshan soni Posted December 12, 2014 Author Share Posted December 12, 2014 please help me..it is irretating me Link to comment Share on other sites More sharing options...
Recommended Posts