Exemple #1
0
 /**
  * Fail Action
  *
  * @return void
  */
 public function paymentCancelAction()
 {
     if ($this->request->hasArgument('hash') && !empty($this->request->getArgument('hash'))) {
         $hash = $this->request->getArgument('hash');
         $querySettings = $this->objectManager->get(\TYPO3\CMS\Extbase\Persistence\Generic\Typo3QuerySettings::class);
         $querySettings->setStoragePageIds(array($this->settings['order']['pid']));
         $this->cartRepository->setDefaultQuerySettings($querySettings);
         $this->cart = $this->cartRepository->findOneByFHash($hash);
         if ($this->cart) {
             $orderItem = $this->cart->getOrderItem();
             $payment = $orderItem->getPayment();
             $payment->setStatus('canceled');
             $this->paymentRepository->update($payment);
             $this->persistenceManager->persistAll();
             $this->addFlashMessage(\TYPO3\CMS\Extbase\Utility\LocalizationUtility::translate('tx_cart.controller.order.action.payment_cancel.successfully_canceled', $this->extensionName), '', \TYPO3\CMS\Core\Messaging\AbstractMessage::OK);
             $this->sendMails($orderItem, 'cancel', __CLASS__, __FUNCTION__);
             $this->view->assign('orderItem', $orderItem);
         } else {
             $this->addFlashMessage(\TYPO3\CMS\Extbase\Utility\LocalizationUtility::translate('tx_cart.controller.order.action.payment_cancel.error_occured', $this->extensionName), '', \TYPO3\CMS\Core\Messaging\AbstractMessage::ERROR);
         }
     } else {
         $this->addFlashMessage(\TYPO3\CMS\Extbase\Utility\LocalizationUtility::translate('tx_cart.controller.order.action.payment_cancel.access_denied', $this->extensionName), '', \TYPO3\CMS\Core\Messaging\AbstractMessage::ERROR);
     }
 }
Exemple #2
0
 /**
  * Add Payment
  *
  * @return void
  */
 protected function addPayment()
 {
     $payment = $this->cart->getPayment();
     /**
      * Order Payment
      * @var $orderPayment \Extcode\Cart\Domain\Model\Order\Payment
      */
     $orderPayment = $this->objectManager->get('Extcode\\Cart\\Domain\\Model\\Order\\Payment');
     $orderPayment->setPid($this->storagePid);
     $orderPayment->setServiceId($payment->getId());
     $orderPayment->setName($payment->getName());
     $orderPayment->setProvider($payment->getProvider());
     $orderPayment->setStatus($payment->getStatus());
     $orderPayment->setGross($payment->getGross());
     $orderPayment->setNet($payment->getNet());
     $orderPayment->setTaxClass($this->taxClasses[$payment->getTaxClass()->getId()]);
     $orderPayment->setTax($payment->getTax());
     $orderPayment->setNote($payment->getNote());
     $this->paymentRepository->add($orderPayment);
     $this->orderItem->setPayment($orderPayment);
 }