registerPayPalExpress(); $this->registerStripe(); $this->registerPaytm(); $this->registerRazorpay(); $this->registerInstamojo(); $this->registerAuthorizenet(); $this->registerPaystack(); $this->registerMercadoPago(); $this->registerFlutterwave(); $this->registerCashOnDelivery(); $this->registerBankTransfer(); $this->registerCheckPayment(); } private function enabled($paymentMethod) { if (app('inAdminPanel')) { return true; } return setting("{$paymentMethod}_enabled"); } private function registerPayPalExpress() { if ($this->enabled('paypal')) { Gateway::register('paypal', new PayPal()); } } private function registerStripe() { if ($this->enabled('stripe')) { Gateway::register('stripe', new Stripe()); } } private function registerPaytm() { if ($this->enabled('paytm')) { Gateway::register('paytm', new Paytm()); } } private function registerRazorpay() { if ($this->enabled('razorpay')) { Gateway::register('razorpay', new Razorpay()); } } private function registerInstamojo() { if ($this->enabled('instamojo')) { Gateway::register('instamojo', new Instamojo()); } } private function registerPaystack() { if ($this->enabled('paystack')) { Gateway::register('paystack', new Paystack()); } } private function registerAuthorizenet() { if ($this->enabled('authorizenet')) { Gateway::register('authorizenet', new AuthorizeNet()); } } private function registerMercadoPago() { if ($this->enabled('mercadopago')) { Gateway::register('mercadopago', new MercadoPago()); } } private function registerFlutterwave() { if ($this->enabled('flutterwave')) { Gateway::register('flutterwave', new Flutterwave()); } } private function registerCashOnDelivery() { if ($this->enabled('cod')) { Gateway::register('cod', new COD()); } } private function registerBankTransfer() { if ($this->enabled('bank_transfer')) { Gateway::register('bank_transfer', new BankTransfer()); } } private function registerCheckPayment() { if ($this->enabled('check_payment')) { Gateway::register('check_payment', new CheckPayment()); } } }