예제 #1
0
 /**
  * getorderinfo
  *
  * @param   INTEGER  $orderid   orderid
  * @param   INTEGER  $store_id  store_id
  *
  * @since   2.2
  *
  * @return   null
  */
 public function getorderinfo($orderid = '0', $store_id = 0)
 {
     $db = JFactory::getDBO();
     $user = JFactory::getUser();
     $jinput = JFactory::getApplication()->input;
     if ($orderid == '0') {
         $orderid = $jinput->get('orderid', '');
     }
     if (empty($orderid)) {
         return 0;
     }
     // In result id field  belongs to order table not user table(due to same column name in both table last column is selected)
     $query = "SELECT u.* ,o.processor, o.amount,o.coupon_code , o.transaction_id,o.ip_address,o.cdate, o.payee_id,o.status,o.id,\n\t\t\t\to.order_tax,o.order_tax_details,o.order_shipping,o.order_shipping_details,\n\t\t\t\to.amount,o.currency,o.customer_note,o.prefix,o.extra\n\t\t\t\tFROM #__kart_orders as o JOIN #__kart_users as u ON o.id = u.order_id\n\t\t\t\tWHERE o.id=" . $orderid . " order by u.id DESC";
     // ." AND o.payee_id=".$user->id;
     $db->setQuery($query);
     $order_result = $db->loadObjectList();
     // Change for backward compatiblity for user info not saving order id against it
     if (empty($order_result)) {
         $query = "SELECT u.* ,o.processor, o.amount,o.coupon_code , o.transaction_id,o.ip_address,o.cdate, o.payee_id,o.status,\n\t\t\t\t\to.id,o.order_tax,o.order_tax_details,o.order_shipping,o.order_shipping_details,\n\t\t\t\t\to.amount,o.currency,o.customer_note,o.prefix,o.extra\n\t\t\t\t\tFROM #__kart_orders as o JOIN #__kart_users as u ON o.user_info_id = u.user_id\n\t\t\t\t\tWHERE o.id=" . $orderid . " AND u.order_id IS NULL";
         $db->setQuery($query);
         $order_result = $db->loadObjectList();
     }
     // NOTE :: for mystore :: get all order releated to store  IF store_id is found
     $where = " i.order_id=" . $orderid;
     if (!empty($store_id)) {
         $where = $where . " AND i.store_id=" . $store_id;
     }
     $orderlist["order_info"] = $order_result;
     @($orderlist["order_info"][0]->customer_note = preg_replace('/\\<br(\\s*)?\\/?\\>/i', " ", $orderlist['order_info'][0]->customer_note));
     $query = "SELECT i.order_item_id,i.item_id,store_id,i.order_item_name,\n\t\t\t\t\ti.product_attribute_names,i.product_quantity,i.product_item_price,\n\t\t\t\t\ti.product_attributes_price, i.product_attributes, i.product_final_price,i.params,i.`item_tax`,\n\t\t\t\t\ti.`item_tax_detail`,i.`item_shipcharges`,i.`item_shipDetail`\n\t\t\t\t\tFROM #__kart_order_item as i\n\t\t\t\t\tWHERE " . $where . " ORDER BY store_id";
     // ." AND o.payee_id=".$user->id;
     $db->setQuery($query);
     $orderlist['items'] = $db->loadObjectList();
     $comquick2cartHelper = new comquick2cartHelper();
     if (!empty($orderlist) && $orderlist['order_info'][0]->status == 'P') {
         $comquick2cartHelper->syncOrderItems($orderlist["items"], $order_result[0]->user_id, $orderid);
     }
     $orderlist = $this->addCountryRegionNames($orderlist);
     return $orderlist;
 }