/** * Svea Close Order * * @param Varien_Object $payment * @return type */ public function void(Varien_Object $payment) { $order = $payment->getOrder(); $auth = $this->getSveaStoreConfClass($order->getStoreId()); $conf = new SveaMageConfigProvider($auth); $sveaObject = WebPay::closeOrder($conf); $sveaObject->setOrderId($payment->getTransactionId())->setCountryCode(""); $response = $this->_closeOrder($sveaObject); if ($response->accepted == 1) { return parent::void($payment); } else { $errorMessage = $response->errormessage; $statusCode = $response->resultcode; $errorTranslated = Mage::helper('svea_webpay')->responseCodes($statusCode, $errorMessage); Mage::throwException($errorTranslated); } }
/** * Validate through Svea integrationLib only if this is an order * * @return boolean */ public function validate() { $paymentInfo = $this->getInfoInstance(); // If quote, skip validation if ($paymentInfo instanceof Mage_Sales_Model_Quote_Payment) { return true; } return parent::validate(); }