subordinados.php Lista de subordinados directos 1 líneas
1
<?php
// ============================================================
// SIDE - ARC 1.0
// Archivo: subordinados.php
// ============================================================

require_once 'conexion.php';
require_once 'helpers.php';

// --- Validar parent_id ---
if (!isset($_GET['parent_id']) || !is_numeric($_GET['parent_id'])) {
    header('Location: /apps/side-arc/cuadro_clasificacion.php');
    exit;
}

$parent_id = (int) $_GET['parent_id'];
$es_admin  = es_admin();

// ============================================================
// CARGAR DATOS DEL REGISTRO PADRE
// ============================================================
$stmt = mysqli_prepare($conexion,
    "SELECT id, titulo, nivel_descripcion, codigo_referencia
     FROM descripcion_isadg WHERE id = ? LIMIT 1");
mysqli_stmt_bind_param($stmt, 'i', $parent_id);
mysqli_stmt_execute($stmt);
$res   = mysqli_stmt_get_result($stmt);
$padre = mysqli_fetch_assoc($res);
mysqli_free_result($res);
mysqli_stmt_close($stmt);

if (!$padre) {
    header('Location: /apps/side-arc/cuadro_clasificacion.php');
    exit;
}

// ============================================================
// CARGAR HIJOS DIRECTOS DEL PADRE
// ============================================================
$hijos = obtener_hijos($conexion, $parent_id);

// ============================================================
// TÍTULO Y HEADER
// ============================================================
$titulo_pagina = 'Subordinados de: ' . h($padre['titulo']);
require_once 'header.php';

$prefijo_padre = prefijo_nivel($padre['nivel_descripcion']);
?>

<div class="site-main" style="padding: 1.5rem;">

<div class="sub-encabezado">
    <div class="sub-encabezado__info">
        <span class="atom-prefijo nivel-<?= strtolower($prefijo_padre) ?>">
            [<?= $prefijo_padre ?>]
        </span>
        <h1 class="sub-encabezado__titulo"><?= h($padre['titulo']) ?></h1>
        <?php if (!empty($padre['codigo_referencia'])): ?>
            <span class="ficha-codigo"><?= h($padre['codigo_referencia']) ?></span>
        <?php endif; ?>
    </div>
    <div class="sub-encabezado__acciones">
        <a href="/apps/side-arc/ficha.php?id=<?= $parent_id ?>"
           class="btn btn--primario">← Regresar a la ficha</a>
        <?php if ($es_admin): ?>
            <a href="/apps/side-arc/ingreso.php?parent_id=<?= $parent_id ?>"
               class="btn btn--primario">+ Agregar subordinado</a>
        <?php endif; ?>
    </div>
</div>

<?php if (empty($hijos)): ?>
    <div class="alerta alerta--info">Este registro no tiene subordinados.</div>
<?php else: ?>
    <div class="buscar-resultados__cabecera">
    <h2 class="buscar-resultados__titulo">
        <?= count($hijos) ?> resultado(s)
    </h2>
</div>
    <div class="buscar-lista">
            <?php foreach ($hijos as $hijo):
                $prefijo_hijo = prefijo_nivel($hijo['nivel_descripcion']);
                $tiene_digital = !empty($hijo['ruta_objeto_digital']);
                $alcance = $hijo['alcance_contenido'] ?? '';
                $alcance_corto = mb_strlen($alcance) > 200
                    ? mb_substr($alcance, 0, 200) . '...'
                    : $alcance;
            ?>
            <div class="buscar-resultado">
                <div class="buscar-resultado__cabecera">
                    <span class="atom-prefijo nivel-<?= strtolower($prefijo_hijo) ?>">
                        [<?= $prefijo_hijo ?>]
                    </span>
                    <a href="/apps/side-arc/ficha.php?id=<?= $hijo['id'] ?>"
                       class="buscar-resultado__titulo">
                        <?= h($hijo['titulo']) ?>
                    </a>
                    <?php if ($tiene_digital): ?>
                        <span class="ficha-estado">(Digitalizado)</span>
                    <?php endif; ?>
                    <?php if ($es_admin): ?>
                        <a href="/apps/side-arc/editar.php?id=<?= $hijo['id'] ?>"
                           class="btn--toolbar" style="margin-left:auto;">Editar</a>
                        <a href="/apps/side-arc/eliminar.php?id=<?= $hijo['id'] ?>"
                           class="btn--toolbar btn--toolbar--peligro"
                           onclick="return confirm('¿Confirma la eliminación?')">Eliminar</a>
                    <?php endif; ?>
                </div>
                <?php if (!empty($hijo['codigo_referencia'])): ?>
                    <div class="buscar-resultado__codigo">
                        <span class="ficha-codigo"><?= h($hijo['codigo_referencia']) ?></span>
                    </div>
                <?php endif; ?>
                <?php if (!empty($alcance_corto)): ?>
                    <div class="buscar-resultado__alcance">
                        <?= h($alcance_corto) ?>
                    </div>
                <?php endif; ?>
            </div>
            <?php endforeach; ?>
        </div>

    <?php endif; ?>

</div>

<?php
mysqli_close($conexion);
require_once 'footer.php';
?>