function updateCop_item($coupon, $cart_item, $called = "cart", $order_id = 0) { $db = JFactory::getDBO(); // $cart_item = coupon items; foreach ($cart_item as $cart_item_id) { if ($called == "cart") { // Called from cart $Quick2cartModelcart = new Quick2cartModelcart(); $cartid = $Quick2cartModelcart->getCartId(); $query = "Select cart_item_id as id ,item_id as item_id, product_final_price as tamt ,product_quantity as qty\n\t\t\t FROM #__kart_cartitems\n\t\t\t WHERE item_id='{$cart_item_id}' AND cart_id =" . $cartid . " order by `store_id`"; } else { // Called from order $query = "Select order_item_id as id , item_id as item_id, product_final_price as tamt ,product_quantity as qty\n\t\t\t FROM #__kart_order_item\n\t\t\t WHERE item_id='{$cart_item_id}' AND order_id =" . $order_id . " order by `store_id`"; } $db->setQuery($query); $cartitems = $db->loadAssocList(); foreach ($cartitems as $item) { if ($item['item_id'] == $cart_item_id) { if ($coupon[0]->val_type == 1) { $cval = $coupon[0]->value / 100 * $item['tamt']; } else { $cval = $coupon[0]->value; $cval = $cval * $item['qty']; /*multiply cop disc with qty*/ } $camt = $item['tamt'] - $cval; if ($camt <= 0) { $camt = 0; } $dis_totalamt = $camt ? $camt : $item['tamt']; $cart_item = new stdClass(); $cart_item->item_id = $cart_item_id; //as id $cart_item->original_price = $item['tamt']; $cart_item->product_final_price = $dis_totalamt; $comquick2cartHelper = new comquick2cartHelper(); $db = JFactory::getDBO(); if ($called == "cart") { $q = "SELECT `params` FROM `#__kart_cartitems` WHERE `cart_item_id` =" . $item['id']; $cart_item->params = $comquick2cartHelper->appendExtraFieldData($coupon[0]->cop_code, $q, 'coupon_code'); $cart_item->cart_item_id = $item['id']; $sql = $db->updateObject("#__kart_cartitems", $cart_item, "cart_item_id"); } else { $q = "SELECT `params` FROM `#__kart_order_item` WHERE `order_item_id` =" . $item['id']; $cart_item->params = $comquick2cartHelper->appendExtraFieldData($coupon[0]->cop_code, $q, 'coupon_code'); $cart_item->order_item_id = $item['id']; $sql = $db->updateObject("#__kart_order_item", $cart_item, "order_item_id"); } if (!$sql) { echo $this->_db->stderr(); return -1; } } } } }
public function countCartitems() { $db = JFactory::getDBO(); $Quick2cartModelcart = new Quick2cartModelcart(); $cart_id = $Quick2cartModelcart->getCartId(); if (!isset($cart_id)) { return; } $query = "Select SUM(product_quantity)\n\t\t FROM #__kart_cartitems\n\t\t WHERE cart_id='{$cart_id}' "; $db->setQuery($query); return $db->loadResult(); }