Esempio n. 1
0
 /**
  * This method handles payment process for creating payments in Payment Gateway
  *
  * @param   string  $paymentName    Payment name
  * @param   string  $extensionName  Name of the extension
  * @param   string  $ownerName      Name of the owner
  * @param   array   $data           Request data
  * @param   array   &$logData       Log data
  * @param   bool    &$isAccepted    If process is successful then this flag should be true
  *
  * @return void
  */
 public function onRedpaymentRequestProcess($paymentName, $extensionName, $ownerName, $data, &$logData, &$isAccepted)
 {
     if (!$this->isPaymentEnabled($paymentName, $extensionName, $ownerName)) {
         return;
     }
     $logData = RApiPaymentHelper::generatePaymentLog(RApiPaymentStatus::getStatusCreated(), $data, JText::sprintf('LIB_REDCORE_PAYMENT_LOG_PROCESS_MESSAGE', $this->paymentName));
     // Handle process
     $this->paymentHelper->handleProcess($extensionName, $ownerName, $data, $logData, $isAccepted);
     // If plugin did not set the message text we will set it
     if (empty($logData['message_text'])) {
         if ($isAccepted === true) {
             $logData['message_text'] = JText::sprintf('LIB_REDCORE_PAYMENT_LOG_ACCEPT_MESSAGE', $extensionName, $this->paymentName);
         } elseif ($isAccepted === false) {
             $logData['message_text'] = JText::sprintf('LIB_REDCORE_PAYMENT_LOG_CANCEL_MESSAGE', $extensionName, $this->paymentName);
         } else {
             $logData['message_text'] = JText::sprintf('LIB_REDCORE_PAYMENT_LOG_DEFAULT_MESSAGE', $extensionName, $this->paymentName);
         }
     }
     // Save payment log and update change for payment
     RApiPaymentHelper::saveNewPaymentLog($logData);
     // We call extension helper file to trigger afterHandleProcess method if needed
     RApiPaymentHelper::triggerExtensionHelperMethod($extensionName, 'afterHandleProcess', $ownerName, $paymentName, $data, $isAccepted);
 }