values['getToken'] = Tools::getvalue('getToken'); $this->values['credit_card'] = Tools::getvalue('credit_card'); $this->values['short_cut'] = 0; $this->setMethod(AbstractMethodPaypal::load('EC')); } /** * @see FrontController::postProcess() */ public function postProcess() { try { $this->method->setParameters($this->values); $url = $this->method->init()->getApproveLink(); if ($this->values['getToken']) { $this->jsonValues = array('success' => true, 'token' => $this->method->getPaymentId()); } else { //$this->redirectUrl = $url.'&useraction=commit'; $this->redirectUrl = $url; } } catch (PayPal\Exception\PPConnectionException $e) { $this->_errors['error_msg'] = $this->module->l('Error connecting to ', pathinfo(__FILE__)['filename']) . $e->getUrl(); } catch (PayPal\Exception\PPMissingCredentialException $e) { $this->_errors['error_msg'] = $e->errorMessage(); } catch (PayPal\Exception\PPConfigurationException $e) { $this->_errors['error_msg'] = $this->module->l('Invalid configuration. Please check your configuration file', pathinfo(__FILE__)['filename']); } catch (PaypalAddons\classes\PaypalException $e) { $this->_errors['error_code'] = $e->getCode(); $this->_errors['error_msg'] = $e->getMessage(); $this->_errors['msg_long'] = $e->getMessageLong(); } catch (Exception $e) { $this->_errors['error_code'] = $e->getCode(); $this->_errors['error_msg'] = $e->getMessage(); } if (!empty($this->_errors)) { if ($this->values['getToken']) { $this->jsonValues = array('success' => false, 'redirect_link' => Context::getContext()->link->getModuleLink($this->name, 'error', $this->_errors)); } else { $this->redirectUrl = Context::getContext()->link->getModuleLink($this->name, 'error', $this->_errors); } } } public function setMethod($method) { $this->method = $method; } }