public function actionNotify($lpToken, $lpKey)
 {
     $process = PaymentProcess::findByToken($lpToken, $lpKey);
     $process->transaction->setContext($this);
     $process->model->addPaymentTraceEvent(__METHOD__);
     return $process->transaction->notify();
 }
 public function actionTestAbort()
 {
     if (YII_ENV_DEV && YII_DEBUG) {
         $process = PaymentProcess::findById(Yii::$app->session->get('storeTransactionId', 0));
         // redirect the user back to where he can choose another payment.
         $process->close(PaymentProcess::STATE_ABORT);
         return 'abort/stop button!';
     }
 }
 public function testUrlRules()
 {
     $_SERVER['HTTP_HOST'] = 'localhost';
     $_SERVER['SERVER_NAME'] = 'localhost';
     $_SERVER['DOCUMENT_ROOT'] = '/var/www';
     $_SERVER['REQUEST_URI'] = '/luya/envs/dev/public_html/';
     $_SERVER['SCRIPT_NAME'] = '/luya/envs/dev/public_html/index.php';
     $_SERVER['PHP_SELF'] = '/luya/envs/dev/public_html/index.php';
     $_SERVER['SCRIPT_FILENAME'] = '/var/www/luya/envs/dev/public_html/index.php';
     $object = new PaymentProcess(['transactionConfig' => ['class' => DummyTransaction::class], 'amount' => 100, 'orderId' => 123, 'currency' => 'EUR', 'successLink' => '/success', 'errorLink' => '/error', 'abortLink' => '/abort']);
     $this->assertContains('payment-create', $object->getTransactionGatewayCreateLink());
     $this->assertContains('payment-abort', $object->getTransactionGatewayAbortLink());
     $this->assertContains('payment-back', $object->getTransactionGatewayBackLink());
     $this->assertContains('payment-fail', $object->getTransactionGatewayFailLink());
     $this->assertContains('payment-notify', $object->getTransactionGatewayNotifyLink());
 }