<?php

namespace App\Http\Controllers\Admin;

use App\Http\Controllers\Controller;
use App\Models\PaymentGatewaySettings;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Gate;
use Symfony\Component\HttpFoundation\Response;

class PaymentGatewayController extends Controller
{
    public function index(Request $request){
        abort_if(Gate::denies('payment_gateway_settings_edit'), Response::HTTP_FORBIDDEN, '403 Forbidden');

        $payment_gateway_config = PaymentGatewaySettings::first();

        return view('admin.payment_gateway_settings.form',compact('payment_gateway_config'));
    }

    public function update(Request $request){
        $payment_gateway_config = PaymentGatewaySettings::first();
        if (!$payment_gateway_config) {
            $payment_gateway_config = new PaymentGatewaySettings();
        }

        $payment_gateway_config->type = $request->type ?? '';
        $payment_gateway_config->tap_payment_key_live = $request->tap_payment_key_live ?? '';
        $payment_gateway_config->tap_payment_key_test = $request->tap_payment_key_test ?? '';
        $payment_gateway_config->save();

        return redirect()->route('admin.payment_gateway.index')->with('success', __('global.payment_method_updated'));
    }
}
