<?php

namespace App\Http\Controllers\Admin;

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

class TwilioSMSController extends Controller
{
    public function index(){
        abort_if(Gate::denies('twilio_sms_configuration_edit'), Response::HTTP_FORBIDDEN, '403 Forbidden');

        $twilio_sms_config = TwilioSMSSettings::first();

        return view('admin.twilio_sms.form',compact('twilio_sms_config'));
    }
    public function update(Request $request){
        $request->validate([
            'status' => 'required',
            'twilio_sid' => 'required',
            'twilio_token' => 'required'
        ]);

        $twilio_sms_config = TwilioSMSSettings::first();
        if (!$twilio_sms_config) {
            $twilio_sms_config = new TwilioSMSSettings();
        }

        $twilio_sms_config->status = $request->status ?? '';
        $twilio_sms_config->twilio_sid = $request->twilio_sid ?? '';
        $twilio_sms_config->twilio_token = $request->twilio_token ?? '';
        $twilio_sms_config->save();

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