115 lines
5.9 KiB
Plaintext
115 lines
5.9 KiB
Plaintext
<div class="offcanvas-md offcanvas-start app-sidebar col-md-3 col-lg-2" tabindex="-1" id="sidebarMenu" aria-labelledby="sidebarMenuLabel">
|
|
|
|
<!-- Header para Móvil (Offcanvas) -->
|
|
<div class="offcanvas-header d-md-none border-bottom p-3">
|
|
<div class="d-flex align-items-center gap-2">
|
|
<img src="/img/logo.svg" alt="Logo" width="24" height="24" class="rounded-1">
|
|
<h6 class="offcanvas-title mb-0 fw-bold" id="sidebarMenuLabel">Menú Principal</h6>
|
|
</div>
|
|
<button type="button" class="btn-close" data-bs-dismiss="offcanvas" data-bs-target="#sidebarMenu" aria-label="Cerrar"></button>
|
|
</div>
|
|
|
|
<div class="offcanvas-body d-flex flex-column p-3 pt-md-3 h-100">
|
|
|
|
<!-- Ficha de Organización / Tenant -->
|
|
<% if (typeof company !== 'undefined' && company) { %>
|
|
<div class="sidebar-company-card mb-3 p-2.5 rounded-3">
|
|
<div class="d-flex align-items-center justify-content-between mb-1">
|
|
<span class="company-card-title text-truncate fw-bold text-dark" style="font-size: 0.84rem;"><%= company.name %></span>
|
|
<span class="badge company-plan-badge"><%= (company.plan || 'Plan').toUpperCase() %></span>
|
|
</div>
|
|
<div class="d-flex align-items-center gap-1.5 text-muted" style="font-size: 0.72rem;">
|
|
<span class="company-status-dot"></span>
|
|
<span>Tenant <%= company.slug || 'activo' %></span>
|
|
</div>
|
|
</div>
|
|
<% } %>
|
|
|
|
<!-- Lista de Navegación -->
|
|
<ul class="nav flex-column sidebar-nav flex-grow-1 gap-1">
|
|
|
|
<li class="sidebar-heading">OPERACIONES</li>
|
|
|
|
<% if (user.rol === 'superadmin') { %>
|
|
<li class="nav-item">
|
|
<a class="nav-link <%= typeof title !== 'undefined' && title === 'Empresas' ? 'active' : '' %>" href="/saas/companies">
|
|
<div class="nav-icon-wrapper"><i class="fas fa-sitemap"></i></div>
|
|
<span>Empresas SaaS</span>
|
|
</a>
|
|
</li>
|
|
<% } %>
|
|
|
|
<li class="nav-item">
|
|
<a class="nav-link <%= typeof title !== 'undefined' && (title.includes('Dashboard') || title === 'Mis Tickets') ? 'active' : '' %>" href="/<%= ['superadmin','admin'].includes(user.rol) ? 'admin' : user.rol %>/dashboard">
|
|
<div class="nav-icon-wrapper"><i class="fas fa-chart-pie"></i></div>
|
|
<span>Dashboard</span>
|
|
</a>
|
|
</li>
|
|
|
|
<% if (user.rol === 'client') { %>
|
|
<li class="nav-item">
|
|
<a class="nav-link <%= typeof title !== 'undefined' && title === 'Nuevo Ticket' ? 'active' : '' %>" href="/client/new-ticket">
|
|
<div class="nav-icon-wrapper text-primary"><i class="fas fa-plus-circle"></i></div>
|
|
<span>Nuevo Ticket</span>
|
|
</a>
|
|
</li>
|
|
<li class="nav-item">
|
|
<a class="nav-link <%= typeof title !== 'undefined' && title === 'Mis Tickets' ? 'active' : '' %>" href="/client/dashboard">
|
|
<div class="nav-icon-wrapper"><i class="fas fa-ticket-alt"></i></div>
|
|
<span>Mis Tickets</span>
|
|
</a>
|
|
</li>
|
|
<% } %>
|
|
|
|
<% if (['superadmin', 'admin', 'agent'].includes(user.rol)) { %>
|
|
<li class="nav-item">
|
|
<a class="nav-link <%= typeof title !== 'undefined' && title.includes('Agente') ? 'active' : '' %>" href="/agent/dashboard">
|
|
<div class="nav-icon-wrapper"><i class="fas fa-inbox"></i></div>
|
|
<span>Bandeja Tickets</span>
|
|
</a>
|
|
</li>
|
|
<% } %>
|
|
|
|
<% if (['superadmin', 'admin'].includes(user.rol)) { %>
|
|
<li class="sidebar-heading mt-3">ADMINISTRACIÓN</li>
|
|
<li class="nav-item">
|
|
<a class="nav-link <%= typeof title !== 'undefined' && title === 'Usuarios' ? 'active' : '' %>" href="/admin/users">
|
|
<div class="nav-icon-wrapper"><i class="fas fa-users-cog"></i></div>
|
|
<span>Usuarios y Equipo</span>
|
|
</a>
|
|
</li>
|
|
<li class="nav-item">
|
|
<a class="nav-link <%= typeof title !== 'undefined' && title === 'Departamentos' ? 'active' : '' %>" href="/admin/departments">
|
|
<div class="nav-icon-wrapper"><i class="fas fa-network-wired"></i></div>
|
|
<span>Departamentos</span>
|
|
</a>
|
|
</li>
|
|
<% } %>
|
|
|
|
<li class="sidebar-heading mt-3">SISTEMA</li>
|
|
<li class="nav-item">
|
|
<a class="nav-link <%= typeof title !== 'undefined' && title === 'Configuración' ? 'active' : '' %>" href="/company">
|
|
<div class="nav-icon-wrapper"><i class="fas fa-sliders-h"></i></div>
|
|
<span>Configuración</span>
|
|
</a>
|
|
</li>
|
|
</ul>
|
|
|
|
<!-- Widget Bot de Soporte Activo en el Sidebar -->
|
|
<div class="sidebar-bot-card mt-3 p-2.5 rounded-3 border text-center">
|
|
<div class="d-flex align-items-center gap-2 justify-content-center mb-1">
|
|
<img src="/img/bot-soporte.svg" alt="Bot Soporte" width="34" height="34" class="bot-sidebar-avatar">
|
|
<div class="text-start">
|
|
<div class="fw-bold text-dark" style="font-size: 0.78rem; line-height: 1.1;">Asistente FSM</div>
|
|
<small class="text-muted" style="font-size: 0.68rem;">SIAX Core v2.0</small>
|
|
</div>
|
|
</div>
|
|
<div class="d-flex align-items-center justify-content-center gap-1.5 pt-1">
|
|
<span class="bot-status-dot" style="width: 6px; height: 6px;"></span>
|
|
<span class="text-success fw-medium" style="font-size: 0.70rem;">Monitoreo 24/7</span>
|
|
</div>
|
|
</div>
|
|
|
|
</div>
|
|
</div>
|