/** * Determine if an item is possible to send inventory detail request. * * @param Mage_Sales_Model_Quote_Item_Abstract * @return bool */ protected function isItemAllowInventoryDetail(Mage_Sales_Model_Quote_Item_Abstract $item) { if ($item->getHasChildren()) { foreach ($item->getChildren() as $childItem) { if ($this->quantityService->canSendInventoryDetail($childItem)) { return true; } } return false; } return $this->quantityService->canSendInventoryDetail($item); }
/** * Returns applied weee taxes * * @param Mage_Sales_Model_Quote_Item_Abstract $item * @return array */ public function getApplied($item) { if ($item instanceof Mage_Sales_Model_Quote_Item_Abstract) { if ($item->getHasChildren() && $item->isChildrenCalculated()) { $result = array(); foreach ($item->getChildren() as $child) { $childData = $this->getApplied($child); if (is_array($childData)) { $result = array_merge($result, $childData); } } return $result; } } /** * if order item data is old enough then weee_tax_applied cab be * not valid serialized data */ $data = $item->getWeeeTaxApplied(); if (empty($data)) { return array(); } return unserialize($item->getWeeeTaxApplied()); }
/** * Determine if an item is possible to send inventory detail request. * * @param Mage_Sales_Model_Quote_Item_Abstract * @return bool */ protected function isItemAllowInventoryDetail(Mage_Sales_Model_Quote_Item_Abstract $item) { if ($item->getHasChildren()) { foreach ($item->getChildren() as $childItem) { $childStock = $childItem->getProduct()->getStockItem(); if ($this->isAllowedInventoryDetail($childStock)) { return true; } } return false; } return $this->isAllowedInventoryDetail($item->getProduct()->getStockItem()); }