Пример #1
0
 /**
  * Return URL on which Authorize.net server will return payment result data in hidden request.
  *
  * @param int $storeId
  * @return string
  */
 public function getRelayUrl($storeId = null)
 {
     if ($storeId == null && $this->getStore()) {
         $storeId = $this->getStore();
     }
     return $this->_helper->getRelyUrl($storeId);
 }
Пример #2
0
 /**
  * Response action.
  * Action for Authorize.net SIM Relay Request.
  *
  * @param \Magento\Authorizenet\Helper\HelperInterface $helper
  * @return void
  */
 protected function _responseAction(\Magento\Authorizenet\Helper\HelperInterface $helper)
 {
     $params = array();
     $data = $this->getRequest()->getPost();
     /* @var $paymentMethod \Magento\Authorizenet\Model\DirectPost */
     $paymentMethod = $this->_objectManager->create('Magento\\Authorizenet\\Model\\Directpost');
     $result = array();
     if (!empty($data['x_invoice_num'])) {
         $result['x_invoice_num'] = $data['x_invoice_num'];
     }
     try {
         if (!empty($data['store_id'])) {
             $paymentMethod->setStore($data['store_id']);
         }
         $paymentMethod->process($data);
         $result['success'] = 1;
     } catch (\Magento\Framework\Model\Exception $e) {
         $this->_objectManager->get('Magento\\Framework\\Logger')->logException($e);
         $result['success'] = 0;
         $result['error_msg'] = $e->getMessage();
     } catch (\Exception $e) {
         $this->_objectManager->get('Magento\\Framework\\Logger')->logException($e);
         $result['success'] = 0;
         $result['error_msg'] = __('We couldn\'t process your order right now. Please try again later.');
     }
     if (!empty($data['controller_action_name']) && strpos($data['controller_action_name'], 'sales_order_') === false) {
         if (!empty($data['key'])) {
             $result['key'] = $data['key'];
         }
         $result['controller_action_name'] = $data['controller_action_name'];
         $result['is_secure'] = isset($data['is_secure']) ? $data['is_secure'] : false;
         $params['redirect'] = $helper->getRedirectIframeUrl($result);
     }
     $this->_coreRegistry->register('authorizenet_directpost_form_params', $params);
     $this->_view->addPageLayoutHandles();
     $this->_view->loadLayout(false)->renderLayout();
 }