Exemple #1
0
 public static function setInventory($orderpayment_id, $order_state_id)
 {
     //only reduce the inventory if the order is successful. 1==CONFIRMED.
     //do it only once.
     $app = JFactory::getApplication();
     JPluginHelper::importPlugin('k2store');
     if ($order_state_id == 1) {
         require_once JPATH_SITE . '/components/com_k2store/models/orders.php';
         $model = new K2StoreModelOrders();
         //lets set the id first
         $model->setId($orderpayment_id);
         $orderTable = $model->getTable('orders');
         $orderTable->load($model->getId());
         $order = $model->getItem();
         //trigger the plugin
         $app->triggerEvent("onK2StoreBeforeInventory", array($order->id));
         //Do it once and set that the stock is adjusted
         if ($order->stock_adjusted != 1 && is_array($order->orderitems)) {
             foreach ($order->orderitems as $item) {
                 K2StoreInventory::updateProductQuantities($item);
             }
             $orderTable->stock_adjusted = 1;
             $orderTable->store();
             //trigger the plugin
             $app->triggerEvent("onK2StoreAfterInventory", array($orderTable->id));
         }
     } else {
         return;
     }
     return;
 }
Exemple #2
0
 function viewtxnlog()
 {
     $app = JFactory::getApplication();
     if (!$app->isAdmin()) {
         echo JText::_('K2STORE_ERROR_NO_PERMISSION');
         $app->close();
         return;
     }
     require_once JPATH_SITE . '/components/com_k2store/models/orders.php';
     $orders_model = new K2StoreModelOrders();
     $id = $app->input->get('id');
     $orders_model->setId($id);
     $row = $orders_model->getItem();
     $view = $this->getView('orders', 'html');
     $view->assign('row', $row);
     $view->setLayout('txnlog');
     $view->display();
 }
Exemple #3
0
 public static function _getHtmlFormatedOrder($id, $user_id)
 {
     $app = JFactory::getApplication();
     $k2storeparams = JComponentHelper::getParams('com_k2store');
     $sitename = $k2storeparams->get('sitename', $app->getCfg('sitename'));
     $siteurl = $k2storeparams->get('siteurl', JURI::root());
     $html = ' ';
     JLoader::register("K2StoreViewOrders", JPATH_SITE . "/components/com_k2store/views/orders/view.html.php");
     $config = array();
     $config['base_path'] = JPATH_SITE . "/components/com_k2store";
     // finds the default Site template
     $db = JFactory::getDBO();
     $query = "SELECT template FROM #__template_styles WHERE client_id = 0 AND home=1";
     $db->setQuery($query);
     $template = $db->loadResult();
     jimport('joomla.filesystem.file');
     if (JFile::exists(JPATH_SITE . '/templates/' . $template . '/html/com_k2store/orders/orderemail.php')) {
         // (have to do this because we load the same view from the admin-side Orders view, and conflicts arise)
         $config['template_path'] = JPATH_SITE . '/templates/' . $template . '/html/com_k2store/orders';
     }
     if (!empty($order->customer_language)) {
         $lang = JFactory::getLanguage();
         $lang->load('com_k2store', JPATH_SITE, $order->customer_language);
     }
     $view = new K2StoreViewOrders($config);
     $view->addTemplatePath(JPATH_SITE . '/templates/' . $template . '/html/com_k2store/orders');
     require_once JPATH_SITE . DS . 'components' . DS . 'com_k2store' . DS . 'models' . DS . 'orders.php';
     $model = new K2StoreModelOrders();
     //lets set the id first
     $model->setId($id);
     $order = $model->getTable('orders');
     $order->load($model->getId());
     $orderitems = $order->getItems();
     $row = $model->getItem();
     $ordertaxes = $order->getOrderTax();
     if (!$order->user_id) {
         $isGuest = true;
     } else {
         $isGuest = false;
     }
     $view->set('_controller', 'orders');
     $view->set('_view', 'orders');
     $view->set('_doTask', true);
     $view->set('hidemenu', false);
     $view->setModel($model, true);
     $view->assign('row', $row);
     $show_tax = $k2storeparams->get('show_tax_total');
     $view->assign('show_tax', $show_tax);
     foreach ($orderitems as &$item) {
         $item->orderitem_price = $item->orderitem_price + floatval($item->orderitem_attributes_price);
         $taxtotal = 0;
         if ($show_tax) {
             $taxtotal = $item->orderitem_tax / $item->orderitem_quantity;
         }
         $item->orderitem_price = $item->orderitem_price + $taxtotal;
         $item->orderitem_final_price = $item->orderitem_price * $item->orderitem_quantity;
         $order->order_subtotal += $taxtotal * $item->orderitem_quantity;
     }
     $view->assign('order', $order);
     $view->assign('isGuest', $isGuest);
     $view->assign('sitename', $sitename);
     $view->assign('siteurl', $siteurl);
     $view->assign('params', $k2storeparams);
     $shipping_info = $model->getShippingInfo($row);
     $view->assign('shipping_info', $shipping_info);
     $view->assign('ordertaxes', $ordertaxes);
     $view->setLayout('orderemail');
     //$this->_setModelState();
     ob_start();
     $view->display();
     $html .= ob_get_contents();
     ob_end_clean();
     return $html;
 }