<?php
session_start();
// Verificamos sesión por seguridad
if (!isset($_SESSION['usuario'])) {
    header("Location: iniciosesi.php");
    exit();
}

$conexion = mysqli_connect("localhost", "root", "BpjysVrFK6LJ5XyW", "micpu");
$conexion->set_charset("utf8");

// Recibimos y limpiamos los datos
$Id     = mysqli_real_escape_string($conexion, $_POST['Id']);
$Nombre = mysqli_real_escape_string($conexion, $_POST['Nombre']);
$correo = mysqli_real_escape_string($conexion, $_POST['correo']);
$pass   = $_POST['pass']; // La contraseña no se escapa aquí porque se procesará

// Lógica de actualización
if (!empty($pass)) {
    // Si el administrador escribió una nueva contraseña, generamos el HASH
    $pass_segura = password_hash($pass, PASSWORD_DEFAULT);
    
    $sql = "UPDATE usuarios 
            SET Nombre = '$Nombre', 
                correo = '$correo', 
                pass   = '$pass_segura' 
            WHERE Id = '$Id'";
} else {
    // Si el campo de contraseña se envió vacío, actualizamos todo menos la clave
    $sql = "UPDATE usuarios 
            SET Nombre = '$Nombre', 
                correo = '$correo' 
            WHERE Id = '$Id'";
}

$rta = mysqli_query($conexion, $sql);

if (!$rta) {
    echo "<h3>Error técnico: No se pudo actualizar el registro.</h3>";
    echo "Detalle: " . mysqli_error($conexion);
} else {
    // Redirigimos de vuelta a la lista de usuarios
    header("Location: usuarios.php?status=success");
    exit();
}
?>