mirror of
https://git.imnavajas.es/jjimenez/safekat.git
synced 2025-07-25 22:52:08 +00:00
Revision facturas en vista cliente
This commit is contained in:
@ -63,7 +63,7 @@ class Facturas extends \App\Controllers\BaseResourceController
|
|||||||
|
|
||||||
public function list()
|
public function list()
|
||||||
{
|
{
|
||||||
checkPermission('facturas.menu');
|
checkGroups(['admin', 'cliente-admin', 'cliente-editor', 'contabilidad']);
|
||||||
|
|
||||||
$viewData = [
|
$viewData = [
|
||||||
'currentModule' => static::$controllerSlug,
|
'currentModule' => static::$controllerSlug,
|
||||||
|
|||||||
@ -120,3 +120,37 @@ if (!function_exists('checkPermission')) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (!function_exists('checkGroups')) {
|
||||||
|
/**
|
||||||
|
* Verifica si el usuario pertenece a alguno de los grupos especificados.
|
||||||
|
*
|
||||||
|
* @param array $groups Lista de grupos permitidos.
|
||||||
|
* @param string|null $redirectRoute Ruta de redirección si no pertenece a ningún grupo.
|
||||||
|
* @return \CodeIgniter\HTTP\RedirectResponse|null
|
||||||
|
*/
|
||||||
|
function checkGroups(array $groups, string $redirectRoute = null)
|
||||||
|
{
|
||||||
|
$session = \Config\Services::session();
|
||||||
|
$response = \Config\Services::response();
|
||||||
|
$auth = auth(); // Shield auth service
|
||||||
|
|
||||||
|
$user = $auth->user();
|
||||||
|
|
||||||
|
$inGroup = false;
|
||||||
|
foreach ($groups as $group) {
|
||||||
|
if ($user->inGroup($group)) {
|
||||||
|
$inGroup = true;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!$inGroup) {
|
||||||
|
$session->setFlashdata('errorMessage', 'No tiene permisos de acceso.');
|
||||||
|
$route = $redirectRoute ?? 'home';
|
||||||
|
return $response->redirect(route_to($route));
|
||||||
|
}
|
||||||
|
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|||||||
@ -12,15 +12,10 @@ if (auth()->user()->inGroup('cliente-admin') || auth()->user()->inGroup('cliente
|
|||||||
</a>
|
</a>
|
||||||
<ul class="menu-sub">
|
<ul class="menu-sub">
|
||||||
<li class="menu-item">
|
<li class="menu-item">
|
||||||
<a href="<?= site_url("facturas/list") ?>" class="menu-link">
|
<a href="<?= route_to('facturasList') ?>" class="menu-link">
|
||||||
<?= lang("App.menu_facturas") ?>
|
<?= lang("App.menu_facturas") ?>
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<li class="menu-item">
|
|
||||||
<a href="<?= site_url("facturas/albaranes") ?>" class="menu-link">
|
|
||||||
<?= lang("App.menu_albaran") ?>
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
</ul>
|
</ul>
|
||||||
</li>
|
</li>
|
||||||
<?php } ?>
|
<?php } ?>
|
||||||
@ -19,7 +19,7 @@ if (auth()->user()->can('facturas.menu')) {
|
|||||||
</li>
|
</li>
|
||||||
<?php endif; ?>
|
<?php endif; ?>
|
||||||
<li class="menu-item">
|
<li class="menu-item">
|
||||||
<a href="<?= site_url("facturas/list") ?>" class="menu-link">
|
<a href="<?= route_to('facturasList') ?>" class="menu-link">
|
||||||
<?= lang("App.menu_facturas") ?>
|
<?= lang("App.menu_facturas") ?>
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
@ -30,11 +30,6 @@ if (auth()->user()->can('facturas.menu')) {
|
|||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<?php endif; ?>
|
<?php endif; ?>
|
||||||
<li class="menu-item">
|
|
||||||
<a href="<?= site_url("facturas/albaranes") ?>" class="menu-link">
|
|
||||||
<?= lang("App.menu_albaran") ?>
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
</ul>
|
</ul>
|
||||||
</li>
|
</li>
|
||||||
<?php } ?>
|
<?php } ?>
|
||||||
Reference in New Issue
Block a user