<?php

namespace App\Http\Controllers;

use App\Models\Configuracion;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Hash;
use App\Models\User;

class ConfiguracionController extends Controller
{
    public function index()
    {
        $configuracion = Configuracion::first();
        return view('configuracion.index', compact('configuracion'));
    }

    public function store(Request $request)
    {
        $data = $request->validate([
            'nombre_proveedor' => 'required|string|max:255',
            'email_contacto' => 'nullable|email|max:255',
            'telefono_contacto' => 'nullable|string|max:50',
            'secret_key' => 'required|string'
        ]);

        $configuracion = Configuracion::first();
        if ($configuracion) {
            $configuracion->update($data);
        } else {
            Configuracion::create($data);
        }

        // Si cambió la contraseña
        if ($request->filled('new_password')) {
            $user = User::first();
            $user->update(['password' => Hash::make($request->new_password)]);
        }

        return redirect()->route('configuracion.index')->with('success', 'Configuración actualizada. Ten en cuenta que si cambiaste la secret_key, los clientes perderán sincronización offline si no actualizan también.');
    }
}
