<?php
/**
 * includes/sidebar-secretaria.php
 * Sidebar compartido del módulo Secretaria.
 *
 * Uso en cada página:
 *   $paginaActual = 'dashboard';
 *   include __DIR__ . '/../../includes/sidebar-secretaria.php';
 *
 * Valores de $paginaActual:
 *   'dashboard'
 *   — PPP —
 *   'certificados', 'informes', 'mediciones'
 *   — Vinculación —
 *   'vinc_grupos', 'cert_vinculacion'
 *   — Titulación —
 *   'titulacion'
 *   — Migración Histórica —
 *   'migrar_ppp', 'migrar_vinculacion'
 *   — Reportes —
 *   'reportes'
 *   — Cuenta —
 *   'contrasena'
 */

// ── Badge certificados PPP pendientes ──────────────────────
if (!isset($sinCert)) {
    try {
        $__idInst = function_exists('instId') ? (int)instId() : 0;
        $__iCond  = $__idInst ? "AND id_instituto = $__idInst" : '';
        $__st = $db->prepare("
            SELECT COUNT(*) FROM practicas
            WHERE estado = 'completado'
            {$__iCond}
            AND id_practica NOT IN (
                SELECT id_practica FROM certificados WHERE tipo='completado' AND vigente=1
            )
        ");
        $__st->execute();
        $sinCert = (int)$__st->fetchColumn();
    } catch (Exception $e) { $sinCert = 0; }
}

// ── Badge certificados vinculación pendientes ───────────────
if (!isset($sinCertVinc)) {
    try {
        $__idInst2 = function_exists('instId') ? (int)instId() : 0;
        $__iCond2  = $__idInst2 ? "AND g.id_instituto = $__idInst2" : '';

        // Verifica si la tabla existe antes de consultar
        $__tbl = $db->query("SHOW TABLES LIKE 'certificados_vinculacion'")->fetchColumn();
        if ($__tbl) {
            $__stv = $db->prepare("
                SELECT COUNT(DISTINCT CONCAT(m.id_grupo,'_',m.id_estudiante))
                FROM miembros_grupo_vinculacion m
                JOIN grupos_vinculacion g ON g.id_grupo = m.id_grupo
                WHERE g.estado = 'completado'
                  AND m.estado = 'activo'
                  {$__iCond2}
                  AND NOT EXISTS (
                      SELECT 1 FROM certificados_vinculacion cv
                      WHERE cv.id_grupo      = m.id_grupo
                        AND cv.id_estudiante = m.id_estudiante
                        AND cv.tipo          = 'culminacion'
                        AND cv.vigente       = 1
                  )
            ");
            $__stv->execute();
            $sinCertVinc = (int)$__stv->fetchColumn();
        } else {
            $sinCertVinc = 0;
        }
    } catch (Exception $e) { $sinCertVinc = 0; }
}

function sidebarSecActive(string $pagina): string {
    global $paginaActual;
    return ($paginaActual ?? '') === $pagina ? ' class="active"' : '';
}
global $sidebarBaseUrl;
$__base = rtrim($sidebarBaseUrl ?? '', '/') ?: '.';
?>
<aside class="sidebar">
  <div class="sidebar-label" style="color:#ffffff;">Secretaria</div>

  <a href="<?= $__base ?>/dashboard.php"<?= sidebarSecActive('dashboard') ?>>
    <span class="icon"><i class="fa fa-gauge"></i></span> Dashboard
  </a>

  <!-- ── Gestión PPP — Azul ── -->
  <div class="sidebar-group g-gestion">
    <span class="sg-label"><i class="fa fa-folder-open me-1"></i>Gestión PPP</span>
    <a href="<?= $__base ?>/certificados.php"<?= sidebarSecActive('certificados') ?>>
      <span class="icon"><i class="fa fa-certificate"></i></span> Certificados PPP
      <?php if ($sinCert > 0): ?>
        <span class="badge rounded-pill ms-auto" style="background:#f7b93e;color:#0d1117;font-size:10px;"><?= $sinCert ?></span>
      <?php endif; ?>
    </a>
    <a href="<?= $__base ?>/informes.php"<?= sidebarSecActive('informes') ?>>
      <span class="icon"><i class="fa fa-file-lines"></i></span> Informes
    </a>
    <a href="<?= $__base ?>/mediciones.php"<?= sidebarSecActive('mediciones') ?>>
      <span class="icon"><i class="fa fa-chart-column"></i></span> Mediciones
    </a>
  </div>

  <!-- ── Vinculación — Verde ── -->
  <div class="sidebar-group g-vinculacion">
    <span class="sg-label"><i class="fa fa-users me-1"></i>Vinculación</span>
    <a href="<?= $__base ?>/vinculacion_grupos.php"<?= sidebarSecActive('vinc_grupos') ?>>
      <span class="icon"><i class="fa fa-people-group"></i></span> Grupos y equipos
    </a>
    <a href="<?= $__base ?>/cert_vinculacion.php"<?= sidebarSecActive('cert_vinculacion') ?>>
      <span class="icon"><i class="fa fa-award"></i></span> Cert. culminación
      <?php if ($sinCertVinc > 0): ?>
        <span class="badge rounded-pill ms-auto" style="background:#10b981;color:#fff;font-size:10px;"><?= $sinCertVinc ?></span>
      <?php endif; ?>
    </a>
  </div>

  <!-- ── Histórico — Violeta ── -->
  <div class="sidebar-group g-historico"
       style="border-left:3px solid #8b5cf6;margin-left:0;padding-left:0;">
    <span class="sg-label"
          style="color:#8b5cf6 !important;font-weight:700;letter-spacing:.06em;">
      <i class="fa fa-clock-rotate-left me-1"></i>HISTÓRICO
    </span>
    <a href="<?= $__base ?>/migrar_ppp.php"<?= sidebarSecActive('migrar_ppp') ?>>
      <span class="icon"><i class="fa fa-file-import"></i></span> PPP Histórico
    </a>
    <a href="<?= $__base ?>/migrar_vinculacion.php"<?= sidebarSecActive('migrar_vinculacion') ?>>
      <span class="icon"><i class="fa fa-people-arrows"></i></span> Vinculación Histórica
    </a>
  </div>

  <!-- ── Reportes — Violeta ── -->
  <div class="sidebar-group g-reportes">
    <span class="sg-label"><i class="fa fa-chart-bar me-1"></i>Reportes</span>
    <a href="<?= $__base ?>/reportes.php?tipo=ces"<?= ($paginaActual??'')==='reportes' && ($_GET['tipo']??'')==='ces' ? ' class="active"' : '' ?>>
      <span class="icon"><i class="fa fa-chart-bar"></i></span> Reporte CES
    </a>
    <a href="<?= $__base ?>/reportes.php?tipo=caces"<?= ($paginaActual??'')==='reportes' && ($_GET['tipo']??'')==='caces' ? ' class="active"' : '' ?>>
      <span class="icon"><i class="fa fa-graduation-cap"></i></span> Reporte CACES
    </a>
  </div>

  <!-- ── Cuenta — Índigo ── -->
  <div class="sidebar-group g-cuenta">
    <span class="sg-label"><i class="fa fa-user me-1"></i>Cuenta</span>
    <a href="<?= $__base ?>/cambiar_contrasena.php"<?= sidebarSecActive('contrasena') ?>>
      <span class="icon"><i class="fa fa-lock"></i></span> Contraseña
    </a>
  </div>

  <div class="sidebar-sep"></div>
  <a href="<?= BASE_URL ?>/auth/logout.php">
    <span class="icon"><i class="fa fa-right-from-bracket"></i></span> Salir
  </a>
</aside>