/** * @param $orderId */ protected function _reserveOrdersById($orderId) { $order = Mage::getModel('sales/order')->load($orderId, 'entity_id'); $iStatus = Mage::getStoreConfig(ITwebexperts_Payperrentals_Helper_Config::XML_PATH_RESERVATION_STATUS); if (Mage::helper('payperrentals/config')->reserveByStatus() && $order->getStatus() != $iStatus) { ITwebexperts_Payperrentals_Helper_Data::reserveOrder($order->getItemsCollection(), $order); $order->setStatus($iStatus); $order->save(); } }
/** * Event fired when invoice is paid * @param Varien_Event_Observer $observer * * @return $this */ public function convertToOrder(Varien_Event_Observer $observer) { /** @var $order Mage_Sales_Model_Order */ $order = $observer->getInvoice()->getOrder(); $statusOrder = $observer->getInvoice()->getOrder()->getStatus(); $statusArr = explode(',', Mage::getStoreConfig(ITwebexperts_Payperrentals_Helper_Config::XML_PATH_RESERVED_STATUSES)); if (!Mage::helper('payperrentals/config')->reserveInventoryNoInvoice() || Mage::helper('payperrentals/config')->reserveByStatus() && !in_array($statusOrder, $statusArr)) { $items = $observer->getInvoice()->getOrder()->getItemsCollection(); ITwebexperts_Payperrentals_Helper_Data::reserveOrder($items, $order); } return $this; }