84 lines
1.7 KiB
PHP
Executable File
84 lines
1.7 KiB
PHP
Executable File
<?php
|
|
|
|
use App\Models\AdminUser;
|
|
use App\Models\Configuracion;
|
|
use Illuminate\Support\Facades\Auth;
|
|
|
|
/**
|
|
* Helper para obtener configuraciones del sitio
|
|
*
|
|
* @param string $clave La clave de configuración
|
|
* @param mixed $default Valor por defecto si no existe
|
|
* @return mixed
|
|
*/
|
|
if (! function_exists('config_site')) {
|
|
function config_site(string $clave, $default = null)
|
|
{
|
|
return Configuracion::get($clave, $default);
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Helper para establecer una configuración
|
|
*
|
|
* @param string $clave La clave de configuración
|
|
* @param mixed $valor El valor a guardar
|
|
* @return Configuracion
|
|
*/
|
|
if (! function_exists('set_config_site')) {
|
|
function set_config_site(string $clave, $valor): Configuracion
|
|
{
|
|
return Configuracion::set($clave, $valor);
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Helper para obtener todas las configuraciones como array
|
|
*
|
|
* @return array
|
|
*/
|
|
if (! function_exists('all_config_site')) {
|
|
function all_config_site(): array
|
|
{
|
|
return Configuracion::allAsArray();
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Helper para verificar si el usuario actual es admin
|
|
*
|
|
* @return bool
|
|
*/
|
|
if (! function_exists('is_admin')) {
|
|
function is_admin(): bool
|
|
{
|
|
return Auth::guard('admin')->check();
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Helper para obtener el usuario admin actual
|
|
*
|
|
* @return AdminUser|null
|
|
*/
|
|
if (! function_exists('admin_user')) {
|
|
function admin_user(): ?AdminUser
|
|
{
|
|
return Auth::guard('admin')->user();
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Helper para verificar si el usuario actual es super_admin
|
|
*
|
|
* @return bool
|
|
*/
|
|
if (! function_exists('is_super_admin')) {
|
|
function is_super_admin(): bool
|
|
{
|
|
$user = Auth::guard('admin')->user();
|
|
|
|
return $user && $user->isSuperAdmin();
|
|
}
|
|
}
|