public function transmitRequestXML($xml, $request) { require_once dirname(__FILE__) . '/lib/cls.ideal.php'; $response = array(); $response['valid'] = false; $description = substr(AECToolbox::rewriteEngineRQ($this->settings['description'], $request), 0, 29); $report_url = AECToolbox::deadsureURL("index.php?option=com_acctexp&task=mollie_idealnotification"); $return_url = $request->int_var['return_url']; $amount = $request->int_var['amount'] * 100; $mollieIdeal = new iDEAL_Payment($this->settings['partner_id']); if ($this->settings['testmode']) { $mollieIdeal->setTestmode(true); } else { $mollieIdeal->setTestmode(false); } if ($mollieIdeal->createPayment($request->int_var['params']['bank_id'], $amount, $description, $return_url, $report_url)) { // ...Request valid transaction id from Mollie and store it... $request->invoice->secondary_ident = $mollieIdeal->getTransactionId(); $request->invoice->storeload(); // Redirect to issuer bank aecRedirect($mollieIdeal->getBankURL()); } else { // error handling $this->___logError("iDEAL_Payment::createPayment failed", $mollieIdeal->getErrorCode(), $mollieIdeal->getErrorMessage()); return $response; } return null; }
/** * Get list of banks for ideal payment plugin * @return array */ public static function getBankLists() { $idealPlugin = os_payments::loadPaymentMethod('os_ideal'); $params = new JRegistry($idealPlugin->params); $partnerId = $params->get('partner_id'); $ideal = new iDEAL_Payment($partnerId); if (!$params->get('ideal_mode', 0)) { $ideal->setTestmode(true); } $bankLists = $ideal->getBanks(); return $bankLists; }