Módulo de bitácoras y bitácora de accesos

This commit is contained in:
2025-05-22 15:36:03 -06:00
parent ffcf1e51f4
commit c294c859fc
9 changed files with 224 additions and 40 deletions

View File

@@ -43,9 +43,9 @@ if (!isset($_SESSION['usuario_id']) || $_SESSION['tipo_usuario'] !== 'importador
</button>
<span class="navbar-brand">SIIH | Configuración</span>
<div class="d-none d-md-flex">
<a href="/IMPORTADORES/importadores/dashboard" class="btn btn-outline-light btn-sm">
<- Volver al Panel Principal
<div class="d-flex ms-auto">
<a href="/IMPORTADORES/importadores/dashboard" class="btn btn-outline-light btn-sm" style="margin: 0 0 0 25px;">
Panel Principal
</a>
</div>
</div>
@@ -78,24 +78,44 @@ if (!isset($_SESSION['usuario_id']) || $_SESSION['tipo_usuario'] !== 'importador
class="nav-link px-3 py-2 <?= str_contains($_SERVER['REQUEST_URI'], '/configuracion/seguridad') ? 'active' : '' ?>">
🦺 Seguridad
</a>
<!-- BITÁCORAS -->
<a href="/IMPORTADORES/configuracion/bitacoras"
class="nav-link px-3 py-2 <?= str_contains($_SERVER['REQUEST_URI'], '/configuracion/bitacoras') ? 'active' : '' ?>">
📖 Bitácoras
</a>
<!-- BITÁCORAS -->
<?php
// Detecta si estamos en alguna ruta de bitácoras
$esVistaBitacoras = str_contains($_SERVER['REQUEST_URI'], '/bitacoras');
// Detecta si estamos en alguna parte de configuración
$esConfiguracion = str_contains($_SERVER['REQUEST_URI'], '/configuracion');
?>
<?php if ($esVistaBitacoras): ?>
<!-- Estamos en cualquier página relacionada a bitácoras -->
<a class="nav-link px-3 py-2 d-flex justify-content-between align-items-center <?= $esVistaBitacoras ? 'active' : '' ?>"
data-bs-toggle="collapse" href="#submenuBitacoras" role="button" aria-expanded="true" aria-controls="submenuBitacoras">
📖 Bitácoras
<span class="badge bg-secondary">1</span>
</a>
<div class="collapse show" id="submenuBitacoras">
<nav class="nav flex-column ms-3">
<a href="/IMPORTADORES/bitacoras/lista"
class="nav-link px-3 py-1 <?= $_SERVER['REQUEST_URI'] === '/IMPORTADORES/bitacoras/lista' ? 'active' : '' ?>">
• Registro de Accesos
</a>
</nav>
</div>
<?php elseif ($esConfiguracion): ?>
<!-- Si estamos en configuración, pero no en bitácoras -->
<a href="/IMPORTADORES/bitacoras/index"
class="nav-link px-3 py-2 d-flex justify-content-between align-items-center">
📖 Bitácoras
<span class="badge bg-secondary">1</span>
</a>
<?php endif; ?>
</nav>
</div>
<!-- OFFCANVAS PARA MÓVILES -->
<div class="offcanvas offcanvas-start d-md-none" tabindex="-1" id="sidebarMenu">
<div class="offcanvas-header">
<h5 class="offcanvas-title">Menú</h5>
<button type="button" class="btn-close" data-bs-dismiss="offcanvas"></button>
</div>
<div class="offcanvas offcanvas-start d-md-none" tabindex="-1" id="sidebarMenu" style="top: 56px;">
<div class="offcanvas-body">
<!-- INFORMACIÓN GENERAL -->
<!-- INFORMACIÓN GENERAL -->
<a href="/IMPORTADORES/configuracion/index"
class="nav-link px-3 py-2 <?= str_contains($_SERVER['REQUEST_URI'], '/configuracion/dashboard_configuracion') ? 'active' : '' ?>">

View File

@@ -43,9 +43,16 @@ if (!isset($_SESSION['usuario_id']) || $_SESSION['tipo_usuario'] !== 'importador
</button>
<span class="navbar-brand">SIIH | Importador</span>
<div class="d-none d-md-flex text-white">
Bienvenido, <?= htmlspecialchars($_SESSION['usuario_nombre']) ?>
<a href="/IMPORTADORES/sistemas/logout" class="btn btn-outline-light btn-sm ms-2">Cerrar sesión</a>
<div class="d-flex ms-auto text-white">
<?php
// Verifica si estás en el dashboard principal del importador
$esDashboard = str_contains($_SERVER['REQUEST_URI'], '/importadores/dashboard');
if ($esDashboard): ?>
Bienvenido, <?= htmlspecialchars($_SESSION['usuario_nombre']) ?>
<?php else: ?>
<a href="/IMPORTADORES/sistemas/logout" class="btn btn-outline-light btn-sm">Cerrar Sesión</a>
<?php endif; ?>
</div>
</div>
</nav>
@@ -132,7 +139,7 @@ if (!isset($_SESSION['usuario_id']) || $_SESSION['tipo_usuario'] !== 'importador
<a class="nav-link px-3 py-2 d-flex justify-content-between align-items-center <?= str_contains($_SERVER['REQUEST_URI'], '/IMPORTADORES/proveedores') ? 'active' : '' ?>"
data-bs-toggle="collapse" href="#submenuProveedores" role="button" aria-expanded="<?= str_contains($_SERVER['REQUEST_URI'], '/IMPORTADORES/proveedores') ? 'true' : 'false' ?>"
aria-controls="submenuProveedores">
🏭 Proveedores
🏭 Proveedores
<span class="badge bg-secondary">2</span>
</a>
<div class="collapse <?= str_contains($_SERVER['REQUEST_URI'], '/IMPORTADORES/proveedores') ? 'show' : '' ?>" id="submenuProveedores">
@@ -166,7 +173,7 @@ if (!isset($_SESSION['usuario_id']) || $_SESSION['tipo_usuario'] !== 'importador
</nav>
</div>
<!-- EXPEDIENTE ELECTRÓNICO -->
<!-- EXPEDIENTE ELECTRÓNICO -->
<a class="nav-link px-3 py-2 d-flex justify-content-between align-items-center
<?= str_contains($_SERVER['REQUEST_URI'], '/expediente') ? 'active' : '' ?>"
data-bs-toggle="collapse" href="#submenuExpediente" role="button" aria-expanded="false">
@@ -195,7 +202,7 @@ if (!isset($_SESSION['usuario_id']) || $_SESSION['tipo_usuario'] !== 'importador
</div>
<!-- OFFCANVAS PARA MÓVILES -->
<div class="offcanvas offcanvas-start d-md-none" tabindex="-1" id="sidebarMenu">
<div class="offcanvas offcanvas-start d-md-none" tabindex="-1" id="sidebarMenu" style="top: 75px;">
<div class="offcanvas-header">
<h5 class="offcanvas-title">Menú</h5>
<button type="button" class="btn-close" data-bs-dismiss="offcanvas"></button>
@@ -279,7 +286,7 @@ if (!isset($_SESSION['usuario_id']) || $_SESSION['tipo_usuario'] !== 'importador
<a class="nav-link px-3 py-2 d-flex justify-content-between align-items-center <?= str_contains($_SERVER['REQUEST_URI'], '/IMPORTADORES/proveedores') ? 'active' : '' ?>"
data-bs-toggle="collapse" href="#submenuProveedores" role="button" aria-expanded="<?= str_contains($_SERVER['REQUEST_URI'], '/IMPORTADORES/proveedores') ? 'true' : 'false' ?>"
aria-controls="submenuProveedores">
🏭 Proveedores
🏭 Proveedores
<span class="badge bg-secondary">2</span>
</a>
<div class="collapse <?= str_contains($_SERVER['REQUEST_URI'], '/IMPORTADORES/proveedores') ? 'show' : '' ?>" id="submenuProveedores">