_getAddressItems($address); foreach ($items as $item) { if ($item->getProduct()->isRecurring()) { $profileData = $item->getProduct()->getRecurringProfile(); if (!empty($profileData[$this->_profileDataKey])) { $item->setData( $this->_itemRowTotalKey, $address->getQuote()->getStore()->convertPrice($profileData[$this->_profileDataKey]) ); $this->_afterCollectSuccess($address, $item); } } } return $this; } /** * Don't fetch anything * * @param Mage_Sales_Model_Quote_Address $address * @return array */ public function fetch(Mage_Sales_Model_Quote_Address $address) { return Mage_Sales_Model_Quote_Address_Total_Abstract::fetch($address); } /** * Get nominal items only * * @param Mage_Sales_Model_Quote_Address $address * @return array */ protected function _getAddressItems(Mage_Sales_Model_Quote_Address $address) { return $address->getAllNominalItems(); } /** * Hook for successful collecting of a recurring amount * * @param Mage_Sales_Model_Quote_Address $address * @param Mage_Sales_Model_Quote_Item_Abstract $item */ protected function _afterCollectSuccess($address, $item) { } }