Esempio n. 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('j2store');
     if ($order_state_id == 1) {
         require_once JPATH_SITE . '/components/com_j2store/models/orders.php';
         $model = new J2StoreModelOrders();
         //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("onJ2StoreBeforeInventory", 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) {
                 J2StoreInventory::updateProductQuantities($item);
             }
             $orderTable->stock_adjusted = 1;
             $orderTable->store();
             //trigger the plugin
             $app->triggerEvent("onJ2StoreAfterInventory", array($orderTable->id));
         }
     } else {
         return;
     }
     return;
 }