<?php
include("conexion.php");
include("funciones.php");
include_once("nomina_helpers.php");
nomina_ensure_cargos_schema($conexion);

session_start();

if (!isset($_SESSION['usuario'])) {
    header('Location: login.php');
    exit;
}

// Validar ID
$id = isset($_GET["id"]) ? (int)$_GET["id"] : 0;
if ($id <= 0) {
    header("Location: index.php");
    exit;
}

// Obtener los datos del registro
$sql = "SELECT * FROM personas WHERE id = $id";
$resultado = mysqli_query($conexion, $sql);
$fila = mysqli_fetch_assoc($resultado);

if (!$fila) {
    header("Location: index.php");
    exit;
}

// Obtener los turnos para el dropdown
$sql_turnos = "SELECT id, nombre FROM turnos ORDER BY nombre";
$resultado_turnos = mysqli_query($conexion, $sql_turnos);

// Obtener los cargos para el dropdown
$sql_cargo = "SELECT id_cargo, cargo, salario, COALESCE(moneda_salario, 'VES') AS moneda_salario FROM cargos ORDER BY cargo";
$resultado_cargos = mysqli_query($conexion, $sql_cargo);

// Si es POST, actualizar
if ($_SERVER["REQUEST_METHOD"] == "POST") {

    // Helper: toma valor de POST si existe; si no, conserva valor de BD.
    // Evita notices (Undefined index) y evita pisar campos que este formulario no muestra.
    $g = function(string $key, $default = '') use (&$fila) {
        if (isset($_POST[$key])) {
            return is_array($_POST[$key]) ? $default : trim((string)$_POST[$key]);
        }
        return isset($fila[$key]) ? (string)$fila[$key] : (string)$default;
    };

    // Detecta tipo de columna para normalizar "tiene_cuenta_bancaria" (puede ser ENUM('SI','NO') o TINYINT).
    $tiene_cuenta_es_numerico = false;
    $col = @mysqli_query($conexion, "SHOW COLUMNS FROM personas LIKE 'tiene_cuenta_bancaria'");
    if ($col && ($colrow = mysqli_fetch_assoc($col))) {
        $type = strtolower((string)($colrow['Type'] ?? ''));
        if (strpos($type, 'int') !== false || strpos($type, 'tinyint') !== false) {
            $tiene_cuenta_es_numerico = true;
        }
    }

    // Sanitizar
    $nombre = mysqli_real_escape_string($conexion, $g('nombre'));
    $apellido = mysqli_real_escape_string($conexion, $g('apellido'));
    $fecha_nacimiento = mysqli_real_escape_string($conexion, $g('fecha_nacimiento'));
    $fecha_ingreso = mysqli_real_escape_string($conexion, $g('fecha_ingreso'));
    $cedula = mysqli_real_escape_string($conexion, $g('cedula'));
    $direccion = mysqli_real_escape_string($conexion, $g('direccion'));
    $telefono = mysqli_real_escape_string($conexion, $g('telefono'));
    $id_turno = mysqli_real_escape_string($conexion, $g('id_turno'));

    $nacionalidad = mysqli_real_escape_string($conexion, $g('nacionalidad'));
    $edad = (int)$g('edad', 0);
    $sexo = mysqli_real_escape_string($conexion, $g('sexo'));
    $numero_gaceta = mysqli_real_escape_string($conexion, $g('numero_gaceta'));
    $estado_civil = mysqli_real_escape_string($conexion, $g('estado_civil'));
    $especificar_estado_civil = mysqli_real_escape_string($conexion, $g('especificar_estado_civil'));
    $numero_rif = mysqli_real_escape_string($conexion, $g('numero_rif'));

    $urbanizacion = mysqli_real_escape_string($conexion, $g('urbanizacion'));
    $avenida_calle = mysqli_real_escape_string($conexion, $g('avenida_calle'));
    $edificio_casa = mysqli_real_escape_string($conexion, $g('edificio_casa'));
    $piso = mysqli_real_escape_string($conexion, $g('piso'));
    $nro_apto_casa = mysqli_real_escape_string($conexion, $g('nro_apto_casa'));

    $estado = mysqli_real_escape_string($conexion, $g('estado'));
    $ciudad = mysqli_real_escape_string($conexion, $g('ciudad'));
    $municipio = mysqli_real_escape_string($conexion, $g('municipio'));
    $codigo_postal = mysqli_real_escape_string($conexion, $g('codigo_postal'));

    $telefono_celular = mysqli_real_escape_string($conexion, $g('telefono_celular'));
    $telefono_habitacion = mysqli_real_escape_string($conexion, $g('telefono_habitacion'));
    $correo_electronico = mysqli_real_escape_string($conexion, $g('correo_electronico'));

    // Normaliza "tiene_cuenta_bancaria" para evitar "Data truncated".
    $tiene_raw = strtoupper($g('tiene_cuenta_bancaria'));
    if ($tiene_raw === 'SÍ' || $tiene_raw === 'SI' || $tiene_raw === '1' || $tiene_raw === 'TRUE' || $tiene_raw === 'YES') {
        $tiene_val = $tiene_cuenta_es_numerico ? '1' : 'SI';
    } elseif ($tiene_raw === 'NO' || $tiene_raw === '0' || $tiene_raw === 'FALSE') {
        $tiene_val = $tiene_cuenta_es_numerico ? '0' : 'NO';
    } else {
        // Si no viene en el form, conserva el valor actual; si viene vacío, coloca NO/0.
        $tiene_val = $tiene_raw !== '' ? $tiene_raw : ($tiene_cuenta_es_numerico ? '0' : 'NO');
    }
    $tiene_cuenta_bancaria = mysqli_real_escape_string($conexion, $tiene_val);

    $numero_cuenta = mysqli_real_escape_string($conexion, $g('numero_cuenta'));
    $banco = mysqli_real_escape_string($conexion, $g('banco'));
    $tipo_cuenta = mysqli_real_escape_string($conexion, $g('tipo_cuenta'));

    $maneja = mysqli_real_escape_string($conexion, $g('maneja'));
    $grado_licencia = mysqli_real_escape_string($conexion, $g('grado_licencia'));
    $talla_camisa = mysqli_real_escape_string($conexion, $g('talla_camisa'));
    $talla_pantalon = mysqli_real_escape_string($conexion, $g('talla_pantalon'));
    $numero_calzado = mysqli_real_escape_string($conexion, $g('numero_calzado'));

    $nivel_educacion = mysqli_real_escape_string($conexion, $g('nivel_educacion'));
    $profesion = mysqli_real_escape_string($conexion, $g('profesion'));
    $estudio_especial = mysqli_real_escape_string($conexion, $g('estudio_especial'));
    $titulo_estudio_especial = mysqli_real_escape_string($conexion, $g('titulo_estudio_especial'));
    $idioma_extranjero = mysqli_real_escape_string($conexion, $g('idioma_extranjero'));

    $id_cargo = mysqli_real_escape_string($conexion, $g('id_cargo'));

    // ===== NUEVOS CAMPOS =====
    // Si el formulario aún no tiene estos campos, se conservan los valores existentes.
    $telefono_emergencia = mysqli_real_escape_string($conexion, $g('telefono_emergencia'));

    $diestro_zurdo = mysqli_real_escape_string($conexion, $g('diestro_zurdo'));
    $discapacidad = mysqli_real_escape_string($conexion, $g('discapacidad', $fila['discapacidad'] ?? 'NO'));
    $discapacidad_detalle = mysqli_real_escape_string($conexion, $g('discapacidad_detalle'));
    $certificado_discapacidad = mysqli_real_escape_string($conexion, $g('certificado_discapacidad'));

    $estatus_laboral = mysqli_real_escape_string($conexion, $g('estatus_laboral', $fila['estatus_laboral'] ?? 'ACTIVO'));
    $tipo_contrato = mysqli_real_escape_string($conexion, $g('tipo_contrato'));
    $fecha_egreso = mysqli_real_escape_string($conexion, $g('fecha_egreso'));

    $departamento = mysqli_real_escape_string($conexion, $g('departamento'));
    $area = mysqli_real_escape_string($conexion, $g('area'));

    $moneda_salario = mysqli_real_escape_string($conexion, $g('moneda_salario', $fila['moneda_salario'] ?? 'VES'));
    $salario_base_raw = $g('salario_base', $fila['salario_base'] ?? '');
    $salario_base_raw = str_replace(['.', ','], ['', '.'], $salario_base_raw); // "1.234,56" -> "1234.56"
    $salario_base = is_numeric($salario_base_raw) ? (float)$salario_base_raw : null;

    // Normalización
    if ($discapacidad !== 'SI') {
        $discapacidad_detalle = '';
        $certificado_discapacidad = '';
    }
    if ($estatus_laboral !== 'EGRESADO') {
        $fecha_egreso = '';
    }

    // Validación de cédula
    if (!validarCedula($cedula)) {
        echo "La cédula no es válida.";
        exit();
    }

    $login = $_SESSION['usuario'];

    // Manejo de foto (mantener anterior si no subes nueva)
    $fotoRuta = $fila["foto"];

    if (isset($_FILES['foto']) && $_FILES['foto']['error'] == 0) {
        $directorio = "fotos/";
        if (!file_exists($directorio)) {
            mkdir($directorio, 0777, true);
        }

        $archivoTemp = $_FILES['foto']['tmp_name'];
        $nombreArchivo = basename($_FILES['foto']['name']);
        $fotoRuta = $directorio . $nombreArchivo;

        if (!move_uploaded_file($archivoTemp, $fotoRuta)) {
            echo "Error al subir la foto.";
            exit();
        }
    }

    // UPDATE
    $sql_update = "UPDATE personas SET 
        nombre = '$nombre',
        apellido = '$apellido',
        fecha_nacimiento = '$fecha_nacimiento',
        fecha_ingreso = '$fecha_ingreso',
        cedula = '$cedula',
        direccion = '$direccion',
        telefono = '$telefono',
        telefono_emergencia = " . (!empty($telefono_emergencia) ? "'$telefono_emergencia'" : "NULL") . ",
        id_turno = '$id_turno',

        nacionalidad = '$nacionalidad',
        edad = $edad,
        sexo = '$sexo',
        numero_gaceta = '$numero_gaceta',
        estado_civil = '$estado_civil',
        especificar_estado_civil = '$especificar_estado_civil',
        numero_rif = '$numero_rif',

        urbanizacion = '$urbanizacion',
        avenida_calle = '$avenida_calle',
        edificio_casa = '$edificio_casa',
        piso = '$piso',
        nro_apto_casa = '$nro_apto_casa',
        estado = '$estado',
        ciudad = '$ciudad',
        municipio = '$municipio',
        codigo_postal = '$codigo_postal',

        telefono_celular = '$telefono_celular',
        telefono_habitacion = '$telefono_habitacion',
        correo_electronico = '$correo_electronico',

        tiene_cuenta_bancaria = '$tiene_cuenta_bancaria',
        numero_cuenta = '$numero_cuenta',
        banco = '$banco',
        tipo_cuenta = '$tipo_cuenta',

        maneja = '$maneja',
        grado_licencia = '$grado_licencia',
        talla_camisa = '$talla_camisa',
        talla_pantalon = '$talla_pantalon',
        numero_calzado = '$numero_calzado',

        nivel_educacion = '$nivel_educacion',
        profesion = '$profesion',
        estudio_especial = '$estudio_especial',
        titulo_estudio_especial = '$titulo_estudio_especial',
        idioma_extranjero = '$idioma_extranjero',

        diestro_zurdo = " . (!empty($diestro_zurdo) ? "'$diestro_zurdo'" : "NULL") . ",
        discapacidad = '" . ($discapacidad === 'SI' ? 'SI' : 'NO') . "',
        discapacidad_detalle = " . (!empty($discapacidad_detalle) ? "'$discapacidad_detalle'" : "NULL") . ",
        certificado_discapacidad = " . (!empty($certificado_discapacidad) ? "'$certificado_discapacidad'" : "NULL") . ",

        estatus_laboral = '$estatus_laboral',
        fecha_egreso = " . (!empty($fecha_egreso) ? "'$fecha_egreso'" : "NULL") . ",
        tipo_contrato = " . (!empty($tipo_contrato) ? "'$tipo_contrato'" : "NULL") . ",

        departamento = " . (!empty($departamento) ? "'$departamento'" : "NULL") . ",
        area = " . (!empty($area) ? "'$area'" : "NULL") . ",
        salario_base = " . ($salario_base !== null ? $salario_base : "NULL") . ",
        moneda_salario = '$moneda_salario',

        id_cargo = '$id_cargo',
        foto = '$fotoRuta',
        usuario = '$login'
        WHERE id = $id";

    if (mysqli_query($conexion, $sql_update)) {
        echo '<script type="text/javascript">
                alert("Registro Actualizado Correctamente");
                window.location.href="index.php";
              </script>';
        exit;
    } else {
        echo "Error al actualizar el registro: " . mysqli_error($conexion);
        exit;
    }
}
?>

<!DOCTYPE html>
<html lang="es">
<head>
    <meta charset="UTF-8">
    <title>Editar Registro</title>
    <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@4.0.0/dist/css/bootstrap.min.css">
    <style>
        body { font-family: 'Roboto', sans-serif; background-color: #f8f9fa; padding: 20px; }
        h1 { text-align: center; margin-bottom: 20px; }
        .container { max-width: 700px; margin: auto; background-color: #ffffff; padding: 20px; border-radius: 8px; box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1); }
        label { font-weight: bold; }
        input[type="text"], input[type="date"], input[type="number"], select, input[type="email"], input[type="file"] { width: 100%; margin-bottom: 15px; }
        input[type="submit"] { width: 100%; background-color: #007bff; color: white; border: none; padding: 10px; border-radius: 5px; cursor: pointer; }
        input[type="submit"]:hover { background-color: #0056b3; }
        .row-2 { display:grid; grid-template-columns: 1fr 1fr; gap: 12px; }
        @media (max-width: 600px){ .row-2{ grid-template-columns:1fr; } }
    </style>
</head>
<body>

<div class="container">
    <h1>Editar Registro</h1>
    <a href="index.php" class="btn btn-secondary mb-3">Regresar</a>

    <form action="editar.php?id=<?php echo $id ?>" method="post" enctype="multipart/form-data">

        <div class="row-2">
            <div>
                <label for="nombre">Nombre:</label>
                <input type="text" name="nombre" id="nombre" value="<?php echo htmlspecialchars($fila["nombre"]); ?>" required>
            </div>
            <div>
                <label for="apellido">Apellido:</label>
                <input type="text" name="apellido" id="apellido" value="<?php echo htmlspecialchars($fila["apellido"]); ?>" required>
            </div>
        </div>

        <div class="row-2">
            <div>
                <label for="fecha_nacimiento">Fecha de Nacimiento:</label>
                <input type="date" name="fecha_nacimiento" id="fecha_nacimiento" value="<?php echo htmlspecialchars($fila["fecha_nacimiento"]); ?>" required>
            </div>
            <div>
                <label for="fecha_ingreso">Fecha de Ingreso:</label>
                <input type="date" name="fecha_ingreso" id="fecha_ingreso" value="<?php echo htmlspecialchars($fila["fecha_ingreso"]); ?>" required>
            </div>
        </div>

        <div class="row-2">
            <div>
                <label for="cedula">Cédula:</label>
                <input type="text" name="cedula" id="cedula" value="<?php echo htmlspecialchars($fila["cedula"]); ?>" required>
            </div>
            <div>
                <label for="sexo">Sexo:</label>
                <select name="sexo" id="sexo" required>
                    <option value="M" <?php echo ($fila['sexo'] == 'M') ? 'selected' : ''; ?>>Masculino</option>
                    <option value="F" <?php echo ($fila['sexo'] == 'F') ? 'selected' : ''; ?>>Femenino</option>
                </select>
            </div>
        </div>

        <label for="direccion">Dirección:</label>
        <input type="text" name="direccion" id="direccion" value="<?php echo htmlspecialchars($fila["direccion"]); ?>" required>

        <div class="row-2">
            <div>
                <label for="telefono">Teléfono:</label>
                <input type="text" name="telefono" id="telefono" value="<?php echo htmlspecialchars($fila["telefono"]); ?>" required>
            </div>
            <div>
                <label for="telefono_emergencia">Teléfono de Emergencia:</label>
                <input type="text" name="telefono_emergencia" id="telefono_emergencia" value="<?php echo htmlspecialchars($fila["telefono_emergencia"] ?? ''); ?>">
            </div>
        </div>

        <label for="id_turno">Turno:</label>
        <select name="id_turno" id="id_turno" required>
            <option value="">Seleccione un turno</option>
            <?php while ($turno = mysqli_fetch_assoc($resultado_turnos)) { ?>
                <option value="<?php echo $turno['id']; ?>" <?php echo ($turno['id'] == $fila['id_turno']) ? 'selected' : ''; ?>>
                    <?php echo htmlspecialchars($turno['nombre']); ?>
                </option>
            <?php } ?>
        </select>

        <label for="nacionalidad">Nacionalidad:</label>
        <input type="text" name="nacionalidad" id="nacionalidad" value="<?php echo htmlspecialchars($fila["nacionalidad"]); ?>" required>

        <div class="row-2">
            <div>
                <label for="edad">Edad:</label>
                <input type="number" name="edad" id="edad" value="<?php echo (int)$fila["edad"]; ?>" required>
            </div>
            <div>
                <label for="estado_civil">Estado Civil:</label>
                <select name="estado_civil" id="estado_civil" required>
                    <option value="SOLTERO" <?php echo ($fila['estado_civil'] == 'SOLTERO') ? 'selected' : ''; ?>>Soltero</option>
                    <option value="CASADO" <?php echo ($fila['estado_civil'] == 'CASADO') ? 'selected' : ''; ?>>Casado</option>
                    <option value="OTROS" <?php echo ($fila['estado_civil'] == 'OTROS') ? 'selected' : ''; ?>>Otros</option>
                </select>
            </div>
        </div>

        <label for="especificar_estado_civil">Especificar Estado Civil:</label>
        <input type="text" name="especificar_estado_civil" id="especificar_estado_civil" value="<?php echo htmlspecialchars($fila["especificar_estado_civil"]); ?>">

        <label for="numero_rif">Número de RIF:</label>
        <input type="text" name="numero_rif" id="numero_rif" value="<?php echo htmlspecialchars($fila["numero_rif"]); ?>">

        <hr>
        <h5>Condición / Discapacidad</h5>

        <div class="row-2">
            <div>
                <label for="diestro_zurdo">Diestro / Zurdo:</label>
                <select name="diestro_zurdo" id="diestro_zurdo">
                    <option value="" <?php echo (empty($fila['diestro_zurdo'])) ? 'selected' : ''; ?>>Seleccione...</option>
                    <option value="DIESTRO" <?php echo (($fila['diestro_zurdo'] ?? '') == 'DIESTRO') ? 'selected' : ''; ?>>DIESTRO</option>
                    <option value="ZURDO" <?php echo (($fila['diestro_zurdo'] ?? '') == 'ZURDO') ? 'selected' : ''; ?>>ZURDO</option>
                    <option value="AMBIDIESTRO" <?php echo (($fila['diestro_zurdo'] ?? '') == 'AMBIDIESTRO') ? 'selected' : ''; ?>>AMBIDIESTRO</option>
                </select>
            </div>
            <div>
                <label for="discapacidad">¿Posee Discapacidad?</label>
                <select name="discapacidad" id="discapacidad">
                    <option value="NO" <?php echo (($fila['discapacidad'] ?? 'NO') == 'NO') ? 'selected' : ''; ?>>NO</option>
                    <option value="SI" <?php echo (($fila['discapacidad'] ?? 'NO') == 'SI') ? 'selected' : ''; ?>>SI</option>
                </select>
            </div>
        </div>

        <label for="discapacidad_detalle">Detalle Discapacidad:</label>
        <input type="text" name="discapacidad_detalle" id="discapacidad_detalle" value="<?php echo htmlspecialchars($fila["discapacidad_detalle"] ?? ''); ?>">

        <label for="certificado_discapacidad">Certificado Discapacidad:</label>
        <input type="text" name="certificado_discapacidad" id="certificado_discapacidad" value="<?php echo htmlspecialchars($fila["certificado_discapacidad"] ?? ''); ?>">

        <hr>
        <h5>Datos Laborales Nuevos</h5>

        <div class="row-2">
            <div>
                <label for="estatus_laboral">Estatus Laboral:</label>
                <select name="estatus_laboral" id="estatus_laboral">
                    <option value="ACTIVO" <?php echo (($fila['estatus_laboral'] ?? 'ACTIVO') == 'ACTIVO') ? 'selected' : ''; ?>>ACTIVO</option>
                    <option value="SUSPENDIDO" <?php echo (($fila['estatus_laboral'] ?? '') == 'SUSPENDIDO') ? 'selected' : ''; ?>>SUSPENDIDO</option>
                    <option value="EGRESADO" <?php echo (($fila['estatus_laboral'] ?? '') == 'EGRESADO') ? 'selected' : ''; ?>>EGRESADO</option>
                </select>
            </div>
            <div>
                <label for="fecha_egreso">Fecha de Egreso:</label>
                <input type="date" name="fecha_egreso" id="fecha_egreso" value="<?php echo htmlspecialchars($fila["fecha_egreso"] ?? ''); ?>">
            </div>
        </div>

        <div class="row-2">
            <div>
                <label for="tipo_contrato">Tipo de Contrato:</label>
                <select name="tipo_contrato" id="tipo_contrato">
                    <option value="" <?php echo (empty($fila['tipo_contrato'])) ? 'selected' : ''; ?>>Seleccione...</option>
                    <option value="INDETERMINADO" <?php echo (($fila['tipo_contrato'] ?? '') == 'INDETERMINADO') ? 'selected' : ''; ?>>INDETERMINADO</option>
                    <option value="DETERMINADO" <?php echo (($fila['tipo_contrato'] ?? '') == 'DETERMINADO') ? 'selected' : ''; ?>>DETERMINADO</option>
                    <option value="OBRA" <?php echo (($fila['tipo_contrato'] ?? '') == 'OBRA') ? 'selected' : ''; ?>>OBRA</option>
                </select>
            </div>
            <div>
                <label for="departamento">Departamento:</label>
                <input type="text" name="departamento" id="departamento" value="<?php echo htmlspecialchars($fila["departamento"] ?? ''); ?>">
            </div>
        </div>

        <label for="area">Área:</label>
        <input type="text" name="area" id="area" value="<?php echo htmlspecialchars($fila["area"] ?? ''); ?>">

        <div class="row-2">
            <div>
                <label for="salario_base">Salario Base (Mensual):</label>
                <small style="display:block;color:#666;margin-bottom:6px;">Si lo dejas vacío, heredará el salario configurado en el cargo.</small>
                <input type="text" name="salario_base" id="salario_base" value="<?php echo htmlspecialchars($fila["salario_base"] ?? ''); ?>">
            </div>
            <div>
                <label for="moneda_salario">Moneda Salario:</label>
                <small style="display:block;color:#666;margin-bottom:6px;">En USD, la nómina lo convertirá a Bs usando la tasa BCV congelada en la corrida.</small>
                <select name="moneda_salario" id="moneda_salario">
                    <option value="VES" <?php echo (($fila['moneda_salario'] ?? 'VES') == 'VES') ? 'selected' : ''; ?>>VES · Fijo en bolívares</option>
                    <option value="USD" <?php echo (($fila['moneda_salario'] ?? '') == 'USD') ? 'selected' : ''; ?>>USD · Indexado a Bs al calcular la nómina</option>
                </select>
            </div>
        </div>

        <div style="margin-top:8px;color:#555;font-size:14px;">
            <strong>Fecha de ingreso laboral:</strong> <?php echo htmlspecialchars($fila["fecha_ingreso"] ?? ''); ?>
        </div>

        <hr>

        <label for="id_cargo">Cargo:</label>
        <select name="id_cargo" id="id_cargo" required>
            <option value="">Seleccione un cargo</option>
            <?php while ($cargo = mysqli_fetch_assoc($resultado_cargos)) { ?>
                <option value="<?php echo $cargo['id_cargo']; ?>" data-salario="<?php echo htmlspecialchars((string)$cargo['salario']); ?>" data-moneda="<?php echo htmlspecialchars((string)$cargo['moneda_salario']); ?>" <?php echo ($cargo['id_cargo'] == $fila['id_cargo']) ? 'selected' : ''; ?>>
                    <?php echo htmlspecialchars($cargo['cargo']); ?>
                </option>
            <?php } ?>
        </select>
        <div id="cargoSalaryHint" style="margin-top:6px;color:#666;font-size:14px;"></div>

        <label for="foto">Foto:</label>
        <input type="file" name="foto" id="foto" accept="image/*">

        <input type="submit" value="Guardar">
        <a href="index.php" class="btn btn-secondary mt-2">Regresar</a>
    </form>
</div>

<script>
(function(){
    const discapacidad = document.getElementById('discapacidad');
    const detalle = document.getElementById('discapacidad_detalle');
    const cert = document.getElementById('certificado_discapacidad');
    function toggleDisc(){
        const si = discapacidad && discapacidad.value === 'SI';
        if (detalle) detalle.disabled = !si;
        if (cert) cert.disabled = !si;
        if (!si){
            if (detalle) detalle.value = '';
            if (cert) cert.value = '';
        }
    }
    if (discapacidad){
        discapacidad.addEventListener('change', toggleDisc);
        toggleDisc();
    }

    const estatus = document.getElementById('estatus_laboral');
    const egreso = document.getElementById('fecha_egreso');
    function toggleEgreso(){
        const eg = estatus && estatus.value === 'EGRESADO';
        if (egreso) egreso.disabled = !eg;
        if (!eg && egreso) egreso.value = '';
    }
    if (estatus){
        estatus.addEventListener('change', toggleEgreso);
        toggleEgreso();
    }

    const cargoSel = document.getElementById('id_cargo');
    const cargoHint = document.getElementById('cargoSalaryHint');
    function refreshCargoHint(){
        if (!cargoSel || !cargoHint) return;
        const opt = cargoSel.options[cargoSel.selectedIndex];
        const salario = opt ? opt.getAttribute('data-salario') : '';
        const moneda = opt ? opt.getAttribute('data-moneda') : '';
        if (cargoSel.value && salario !== null) {
            cargoHint.textContent = 'Si el salario base queda vacío, se heredará desde el cargo: ' + (moneda === 'USD' ? 'USD ' : 'VES ') + (salario || '0.00') + (moneda === 'USD' ? ' (indexado a Bs en la corrida).' : ' (fijo en bolívares).');
        } else {
            cargoHint.textContent = 'Selecciona un cargo para ver su salario base y moneda heredable.';
        }
    }
    if (cargoSel){
        cargoSel.addEventListener('change', refreshCargoHint);
        refreshCargoHint();
    }
})();
</script>

</body>
</html>
