From 99d0259365d803ee98a7858b18857240ed5fd417 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Benjamin=20Beganovi=C4=87?= Date: Fri, 23 Jul 2021 13:47:01 +0200 Subject: [PATCH] Scaffold MolliePaymentDriver --- app/PaymentDrivers/MolliePaymentDriver.php | 116 +++++++++++++++++++++ 1 file changed, 116 insertions(+) create mode 100644 app/PaymentDrivers/MolliePaymentDriver.php diff --git a/app/PaymentDrivers/MolliePaymentDriver.php b/app/PaymentDrivers/MolliePaymentDriver.php new file mode 100644 index 000000000000..03879c42fd1e --- /dev/null +++ b/app/PaymentDrivers/MolliePaymentDriver.php @@ -0,0 +1,116 @@ + CreditCard::class, + ]; + + const SYSTEM_LOG_TYPE = SystemLog::TYPE_STRIPE; + + public function init() + { + return $this; + } + + /* Returns an array of gateway types for the payment gateway */ + public function gatewayTypes(): array + { + $types = []; + + $types[] = GatewayType::CREDIT_CARD; + + return $types; + } + + public function setPaymentMethod($payment_method_id) + { + $class = self::$methods[$payment_method_id]; + $this->payment_method = new $class($this); + return $this; + } + + public function authorizeView(array $data) + { + return $this->payment_method->authorizeView($data); + } + + public function authorizeResponse($request) + { + return $this->payment_method->authorizeResponse($request); + } + + public function processPaymentView(array $data) + { + return $this->payment_method->paymentView($data); + } + + public function processPaymentResponse($request) + { + return $this->payment_method->paymentResponse($request); + } + + public function refund(Payment $payment, $amount, $return_client_response = false) + { + return $this->payment_method->yourRefundImplementationHere(); + } + + public function tokenBilling(ClientGatewayToken $cgt, PaymentHash $payment_hash) + { + return $this->payment_method->yourTokenBillingImplmentation(); + } + + public function processWebhookRequest(PaymentWebhookRequest $request, Payment $payment = null) + { + } +}