57 lines
1.4 KiB
PHP
Executable File
57 lines
1.4 KiB
PHP
Executable File
<?php
|
|
|
|
namespace App\Http\Controllers\Admin;
|
|
|
|
use App\Http\Controllers\Controller;
|
|
use App\Models\Configuracion;
|
|
use Illuminate\Http\RedirectResponse;
|
|
use Illuminate\View\View;
|
|
|
|
class ConfiguracionController extends Controller
|
|
{
|
|
/**
|
|
* Mostrar configuración
|
|
*/
|
|
public function index(): View
|
|
{
|
|
$configuracion = Configuracion::allAsArray();
|
|
|
|
return view('admin.configuracion.index', compact('configuracion'));
|
|
}
|
|
|
|
/**
|
|
* Actualizar configuración
|
|
*/
|
|
public function update(): RedirectResponse
|
|
{
|
|
$fields = [
|
|
'nombre_sitio',
|
|
'telefono',
|
|
'email',
|
|
'direccion',
|
|
'horario',
|
|
'facebook',
|
|
'instagram',
|
|
'whatsapp',
|
|
'tiktok',
|
|
'youtube',
|
|
'seo_titulo',
|
|
'seo_descripcion',
|
|
];
|
|
|
|
foreach ($fields as $field) {
|
|
$value = request($field);
|
|
|
|
// Only save if the field has a value
|
|
if ($value !== null && $value !== '') {
|
|
Configuracion::set($field, $value);
|
|
} else {
|
|
// Optionally clear empty fields
|
|
Configuracion::remove($field);
|
|
}
|
|
}
|
|
|
|
return redirect()->route('admin.configuracion.index')->with('success', 'Configuración guardada correctamente.');
|
|
}
|
|
}
|