/** * Retrieve related orders collection * * @return Mage_Sales_Model_Mysql4_Order_Collection */ public function getRelatedOrders() { if (is_null($this->_relatedOrders)) { $this->_relatedOrders = Mage::getResourceModel('sales/order_collection')->addFieldToSelect('*')->addFieldToFilter('customer_id', Mage::getSingleton('customer/session')->getCustomer()->getId())->addFieldToFilter('state', array('in' => Mage::getSingleton('sales/order_config')->getVisibleOnFrontStates()))->addBillingAgreementsFilter($this->_billingAgreementInstance->getAgreementId())->setOrder('created_at', 'desc'); } return $this->_relatedOrders; }
/** * Retrieve item value by key * * @param Varien_Object $item * @param string $key * @return mixed */ public function getItemValue(Mage_Sales_Model_Billing_Agreement $item, $key) { switch ($key) { case 'created_at': case 'updated_at': $value = $item->getData($key) ? $this->helper('core')->formatDate($item->getData($key), 'short', true) : $this->__('N/A'); break; case 'edit_url': $value = $this->getUrl('*/billing_agreement/view', array('agreement' => $item->getAgreementId())); break; case 'payment_method_label': $label = $item->getAgreementLabel(); $value = $label ? $label : $this->__('N/A'); break; case 'status': $value = $item->getStatusLabel(); break; default: $value = $item->getData($key) ? $item->getData($key) : $this->__('N/A'); } return $this->escapeHtml($value); }