<?php
include 'config/db.php';
session_start();
if (!isset($_SESSION['usuario'])) {
    header("Location: login.php");
    exit;
}

$id = $_GET['id'];
$sql = "SELECT * FROM usuarios WHERE id = ?";
$stmt = $conexion->prepare($sql);
$stmt->bind_param("i", $id);
$stmt->execute();
$result = $stmt->get_result();
$usuario = $result->fetch_assoc();

if ($_SERVER['REQUEST_METHOD'] === 'POST') {
    $nombre_usuario = $_POST['nombre_usuario'];
    $nombre_completo = $_POST['nombre_completo'];
    $rol = $_POST['rol'];
    $contrasena = !empty($_POST['contrasena']) ? md5($_POST['contrasena']) : $usuario['contrasena'];

    $sql = "UPDATE usuarios SET nombre_usuario = ?, nombre_completo = ?, contrasena = ?, rol = ? WHERE id = ?";
    $stmt = $conexion->prepare($sql);
    $stmt->bind_param("ssssi", $nombre_usuario, $nombre_completo, $contrasena, $rol, $id);

    if ($stmt->execute()) {
        header("Location: listar_usuarios.php");
        exit;
    } else {
        echo "Error al actualizar usuario: " . $conexion->error;
    }
}

?>

<!DOCTYPE html>
<html lang="es">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Editar Usuario</title>
    <link rel="stylesheet" href="css/style.css">
    <style>
        /* Estilos base */
        body {
            font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
            margin: 0;
            padding: 0;
            background-color: #f7f7f7;
        }

        .sidebar {
            width: 250px;
            background-color: #2c3e50;
            height: 100vh;
            position: fixed;
            top: 0;
            left: 0;
            color: white;
            padding: 20px 10px;
            transition: all 0.3s ease;
        }

        .sidebar h2 {
            text-align: center;
            font-size: 24px;
            color: #1abc9c;
            margin-bottom: 30px;
        }

        .sidebar ul {
            list-style: none;
            padding: 0;
        }

        .sidebar ul li {
            margin: 20px 0;
        }

        .sidebar ul li a {
            text-decoration: none;
            color: white;
            padding: 12px;
            display: block;
            font-size: 18px;
            transition: background-color 0.3s ease;
        }

        .sidebar ul li a:hover,
        .sidebar ul li a.active {
            background-color: #1abc9c;
        }

        .main-content {
            margin-left: 270px;
            padding: 30px;
        }

        .main-content h1 {
            font-size: 28px;
            color: #0984e3;
            margin-bottom: 20px;
            text-align: center;
        }

        form {
            max-width: 500px;
            background: white;
            padding: 20px;
            border-radius: 8px;
            box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
            margin: 0 auto;
        }

        form label {
            display: block;
            font-size: 16px;
            margin-bottom: 8px;
            color: #333;
        }

        form input,
        form select {
            width: 100%;
            padding: 10px;
            margin-bottom: 20px;
            border: 1px solid #ddd;
            border-radius: 4px;
            font-size: 14px;
        }

        form button {
            padding: 10px 20px;
            font-size: 16px;
            background-color: #1abc9c;
            color: white;
            border: none;
            border-radius: 5px;
            cursor: pointer;
            transition: background-color 0.3s ease;
            width: 100%;
        }

        form button:hover {
            background-color: #16a085;
        }

        /* Estilo responsivo */
        @media (max-width: 768px) {
            .sidebar {
                width: 100%;
                height: auto;
                position: static;
                padding: 10px 0;
            }

            .main-content {
                margin-left: 0;
                padding: 15px;
            }

            form {
                width: 100%;
                padding: 15px;
            }

            form label {
                font-size: 14px;
            }

            form input,
            form select {
                font-size: 12px;
                padding: 8px;
            }

            form button {
                font-size: 14px;
                padding: 10px;
            }
        }

        @media (max-width: 576px) {
            form {
                padding: 10px;
            }

            form input,
            form select {
                font-size: 12px;
                padding: 6px;
            }

            form button {
                font-size: 12px;
                padding: 8px;
            }
        }
    </style>
</head>
<body>
    <div class="sidebar">
        <h2>PYP Conservaci¨Žn Auditiva</h2>
        <ul>
            <li><a href="index.php">Inicio</a></li>
            <li><a href="listar_usuarios.php" class="active">Gestionar Usuarios</a></li>
        </ul>
    </div>

    <div class="main-content">
        <h1>Editar Usuario</h1>
        <form action="" method="POST">
            <label for="nombre_usuario">Nombre de Usuario:</label>
            <input type="text" name="nombre_usuario" value="<?= $usuario['nombre_usuario'] ?>" required>

            <label for="nombre_completo">Nombre Completo:</label>
            <input type="text" name="nombre_completo" value="<?= $usuario['nombre_completo'] ?>" required>

            <label for="contrasena">Nueva Contrase&ntilde;a:</label>
            <input type="password" name="contrasena">

            <label for="rol">Rol:</label>
            <select name="rol">
                <option value="user" <?= $usuario['rol'] === 'user' ? 'selected' : '' ?>>Usuario</option>
                <option value="admin" <?= $usuario['rol'] === 'admin' ? 'selected' : '' ?>>Administrador</option>
            </select>

            <button type="submit">Actualizar</button>
        </form>
    </div>
</body>
</html>
