Example #1
0
 /**
  * User accepted Bankwire Payment -> createOrder
  */
 public function paymentAction()
 {
     //DoPayment
     //$this->session->order = $this->getModule()->createOrder($this->cart, \CoreShop\Model\Order\State::getById(\CoreShop\Model\Configuration::get("SYSTEM.ORDERSTATE.BANKWIRE")), 0, $this->view->language);
     $this->session->order = $this->cart->createOrder(\CoreShop\Model\Order\State::getById(\CoreShop\Model\Configuration::get("SYSTEM.ORDERSTATE.BANKWIRE")), $this->getModule(), 0, $this->view->language);
     $this->redirect($this->getModule()->getConfirmationUrl());
 }
 /**
  * This Action can be called via Frontend
  * @throws \CoreShop\Exception
  * @throws \CoreShop\Exception\ObjectUnsupportedException
  */
 public function paymentReturnAction()
 {
     $requestData = $this->parseRequestData();
     $this->disableLayout();
     $this->disableViewAutoRender();
     \Pimcore\Logger::notice('OmniPay paymentReturn [Postfinance]. TransactionID: ' . $requestData['transaction'] . ', Status: ' . $requestData['status']);
     $redirectUrl = '';
     if ($requestData['status'] === 5) {
         if (!empty($requestData['transaction'])) {
             $cart = \CoreShop\Model\Cart::findByCustomIdentifier($requestData['transaction']);
             if ($cart instanceof \CoreShop\Model\Cart) {
                 \Pimcore\Logger::notice('OmniPay paymentReturn [Postfinance]: create order with: ' . $requestData['transaction']);
                 $order = $cart->createOrder(\CoreShop\Model\Order\State::getById(\CoreShop\Model\Configuration::get("SYSTEM.ORDERSTATE.PAYMENT")), $this->getModule(), $cart->getTotal(), $this->view->language);
                 $payments = $order->getPayments();
                 foreach ($payments as $p) {
                     $dataBrick = new \Pimcore\Model\Object\Objectbrick\Data\CoreShopPaymentOmnipay($p);
                     $dataBrick->setTransactionId($requestData['transaction']);
                     $p->save();
                 }
                 $redirectUrl = Pimcore\Tool::getHostUrl() . $this->getModule()->getConfirmationUrl($order);
             } else {
                 \Pimcore\Logger::notice('OmniPay paymentReturn [Postfinance]: Cart with identifier' . $requestData['transaction'] . 'not found');
                 $redirectUrl = Pimcore\Tool::getHostUrl() . $this->getModule()->getErrorUrl('cart with identifier' . $requestData['transaction'] . 'not found');
             }
         } else {
             \Pimcore\Logger::notice('OmniPay paymentReturn [Postfinance]: No valid transaction id given');
             $redirectUrl = Pimcore\Tool::getHostUrl() . $this->getModule()->getErrorUrl('no valid transaction id given');
         }
     } else {
         \Pimcore\Logger::notice('OmniPay paymentReturn [Postfinance]: Error Status: ' . $requestData['status']);
         $redirectUrl = Pimcore\Tool::getHostUrl() . $this->getModule()->getErrorUrl('Postfinance returned with an error. Error Status: ' . $requestData['status']);
     }
     $this->redirect($redirectUrl);
     exit;
 }
Example #3
0
 public function paymentReturnAction()
 {
     $transaction = $_REQUEST['reference'];
     $status = $_REQUEST['transStatus'];
     if ($status === 'Y') {
         if ($transaction) {
             $cart = \CoreShop\Model\Cart::findByCustomIdentifier($transaction);
             if ($cart instanceof \CoreShop\Model\Cart) {
                 $order = $cart->createOrder(\CoreShop\Model\Order\State::getById(\CoreShop\Model\Configuration::get("SYSTEM.ORDERSTATE.PAYMENT")), $this->getModule(), $this->cart->getTotal(), $this->view->language);
                 $payments = $order->getPayments();
                 foreach ($payments as $p) {
                     $dataBrick = new \Pimcore\Model\Object\Objectbrick\Data\CoreShopPaymentOmnipay($p);
                     $dataBrick->setTransactionId($transaction);
                     $p->save();
                 }
                 $this->view->redirectUrl = Pimcore\Tool::getHostUrl() . $this->getModule()->getConfirmationUrl($order);
             } else {
                 $this->view->redirectUrl = Pimcore\Tool::getHostUrl() . $this->getModule()->getErrorUrl();
             }
         } else {
             $this->view->redirectUrl = Pimcore\Tool::getHostUrl() . $this->getModule()->getErrorUrl();
         }
     } else {
         $this->view->redirectUrl = Pimcore\Tool::getHostUrl() . $this->getModule()->getErrorUrl();
     }
     $this->disableLayout();
 }
Example #4
0
 public function paymentReturnAction()
 {
     $returnvalue = $_REQUEST['PROCESSING_RESULT'];
     if ($returnvalue) {
         $transactionIdentification = $_REQUEST['IDENTIFICATION_TRANSACTIONID'];
         $cart = \CoreShop\Model\Cart::findByCustomIdentifier($transactionIdentification);
         if ($cart instanceof \CoreShop\Model\Cart) {
             if (strstr($returnvalue, "ACK")) {
                 $order = $cart->createOrder(\CoreShop\Model\Order\State::getById(\CoreShop\Model\Configuration::get("SYSTEM.ORDERSTATE.PAYMENT")), $this->getModule(), $cart->getTotal(), $this->view->language);
                 $payments = $order->getPayments();
                 foreach ($payments as $p) {
                     $dataBrick = new CoreShopPaymentPayunity($p);
                     $dataBrick->setIdentificationUniqeId($_POST['IDENTIFICATION_UNIQUEID']);
                     $dataBrick->setIdentificationShortId($_POST['IDENTIFICATION_SHORTID']);
                     $p->save();
                 }
                 echo Pimcore\Tool::getHostUrl() . $this->getModule()->getConfirmationUrl($order);
             } else {
                 echo Pimcore\Tool::getHostUrl() . $this->getModule()->getErrorUrl();
             }
         } else {
             echo Pimcore\Tool::getHostUrl() . $this->getModule()->getErrorUrl();
         }
     } else {
         echo Pimcore\Tool::getHostUrl() . $this->getModule()->getErrorUrl();
     }
     exit;
     //We only need to output a URL for Payunity
 }
 public function paymentReturnAction()
 {
     if (!$this->cart instanceof \CoreShop\Model\Cart) {
         $this->redirect($this->view->url(array(), 'coreshop_index'));
     }
     $configkey = \CoreShop\Model\Configuration::get('SOFORTUEBERWEISUNG.KEY');
     $SofortLibTransactionData = new \Sofort\SofortLib\TransactionData($configkey);
     $SofortLibTransactionData->addTransaction($this->cart->getCustomIdentifier());
     $SofortLibTransactionData->sendRequest();
     if ($SofortLibTransactionData->getStatus() === 'received' || $SofortLibTransactionData->getStatus() === 'pending') {
         $order = $this->cart->createOrder(\CoreShop\Model\Order\State::getById(\CoreShop\Model\Configuration::get("SYSTEM.ORDERSTATE.PAYMENT")), $this->getModule(), $this->cart->getTotal(), $this->view->language);
         $payments = $order->getPayments();
         foreach ($payments as $p) {
             $dataBrick = $p->getPaymentInformation()->getCoreShopPaymentSofortueberweisung();
             if (!$dataBrick) {
                 $dataBrick = new \Pimcore\Model\Object\Objectbrick\Data\CoreShopPaymentSofortueberweisung($p);
             }
             $dataBrick->setTransactionId($this->cart->getCustomIdentifier());
             $dataBrick->setStatus($SofortLibTransactionData->getStatus());
             $dataBrick->setStatusReason($SofortLibTransactionData->getStatusReason());
             $dataBrick->setStatusModifiedTime($SofortLibTransactionData->getStatusModifiedTime());
             $dataBrick->setLanguageCode($SofortLibTransactionData->getLanguageCode());
             $dataBrick->setCurrency($SofortLibTransactionData->getCurrency());
             $p->save();
         }
         $this->redirect($this->getModule()->getConfirmationUrl($order));
     }
     $this->redirect($this->view->url(array(), 'coreshop_index'));
 }