<?php
// Configuración de la base de datos
$servidor = "localhost";
$usuario_bd = "root";
$clave_bd = "";
$nombre_bd = "db_panaderia";

// Conexión a la base de datos
$enlace = mysqli_connect($servidor, $usuario_bd, $clave_bd, $nombre_bd);
$msg = "";

// Verifica si hay error de conexión a la base de datos
if (!$enlace) {
    die("Error de conexión a la base de datos: " . mysqli_connect_error());
}

if ($_SERVER["REQUEST_METHOD"] == "POST") {
    $usuario = trim($_POST['nombre_usuario']);
    $correo  = trim($_POST['correo_institucional']);
    $clave   = $_POST['clave_acceso'];

    if (!empty($usuario) && !empty($correo) && !empty($clave)) {
        // Hash de la contraseña para seguridad
        $clave_segura = password_hash($clave, PASSWORD_DEFAULT);

        // Prepara la consulta SQL para evitar inyecciones
        $sql = "INSERT INTO usuarios_sistema (nombre_usuario, correo_institucional, clave_hash) VALUES (?, ?, ?)";
        $stmt = mysqli_prepare($enlace, $sql);

        if ($stmt) {
            // Vincula los parámetros y ejecuta la consulta
            mysqli_stmt_bind_param($stmt, "sss", $usuario, $correo, $clave_segura);
            if (mysqli_stmt_execute($stmt)) {
                $msg = "<div class='alert success'>✅ Usuario registrado correctamente. ¡Ya puedes iniciar sesión!</div>";
            } else {
                // Manejo de error si el usuario ya existe (código de error 1062 para clave única)
                if (mysqli_errno($enlace) == 1062) {
                    $msg = "<div class='alert error'>❌ El nombre de usuario o correo ya existe.</div>";
                } else {
                    $msg = "<div class='alert error'>❌ Error al registrar: " . mysqli_error($enlace) . "</div>";
                }
            }
            mysqli_stmt_close($stmt); // Cierra la declaración preparada
        } else {
            $msg = "<div class='alert error'>❌ Error al preparar la consulta: " . mysqli_error($enlace) . "</div>";
        }
    } else {
        $msg = "<div class='alert error'>❌ Por favor, complete todos los campos.</div>";
    }
}
?>

<!DOCTYPE html>
<html lang="es">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Panadería Kiarilu | Registro</title>
    <link rel="preconnect" href="https://fonts.googleapis.com">
    <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
    <link href="https://fonts.googleapis.com/css2?family=Playfair+Display:wght@700&display=swap" rel="stylesheet">
    <style>
        body { font-family: Arial, sans-serif; background: #FFF8E1; padding: 20px; display: flex; justify-content: center; align-items: center; min-height: 100vh; margin: 0; background-image: url('fondo.png'); background-size: cover; background-position: center; background-attachment: fixed; }
        .box { max-width: 400px; width: 90%; background-color: rgba(255, 255, 255, 0.95); padding: 30px; border-radius: 12px; box-shadow: 0 10px 25px rgba(0,0,0,0.1); border: 3px solid #D2B48C; }
        h2 { text-align:center; color:#8B4513; font-family: 'Playfair Display', serif; margin-bottom: 25px; font-size: 1.8em; }
        input[type="text"],
        input[type="email"],
        input[type="password"] {
            width: calc(100% - 24px); /* Ancho total menos padding */
            padding: 12px;
            margin: 8px 0;
            border: 1px solid #D2B48C;
            border-radius: 8px;
            font-size: 1em;
            box-sizing: border-box; /* Incluir padding en el ancho */
        }
        button {
            width: 100%;
            background: #8B4513;
            color: white;
            border: none;
            padding: 14px;
            border-radius: 8px;
            font-weight: bold;
            font-size: 1.1em;
            cursor: pointer;
            transition: background 0.3s ease;
            margin-top: 15px;
        }
        button:hover { background: #5C2E0E; }
        .alert { padding: 12px; border-radius: 8px; margin-bottom: 15px; text-align: center; font-weight: bold; }
        .success { background: #dcfce7; color: #166534; border:1px solid #bbf7d0; }
        .error { background: #fee2e2; color: #991b1b; border:1px solid #fecdd3; }
        p { text-align: center; margin-top: 20px; }
        a { color: #8B4513; text-decoration: none; font-weight: bold; transition: color 0.3s ease; }
        a:hover { color: #5C2E0E; text-decoration: underline; }
    </style>
</head>
<body>
    <div class="box">
        <h2 style="color: #8B4513; font-family: 'Playfair Display', serif;">🍞 Registro Panadería Kiarilu</h2>
        <?php echo $msg; ?>
        <form method="POST">
            <input type="text" name="nombre_usuario" placeholder="Nombre de Usuario" required autocomplete="username">
            <input type="email" name="correo_institucional" placeholder="Correo Electrónico" required autocomplete="email">
            <input type="password" name="clave_acceso" placeholder="Contraseña" required autocomplete="new-password">
            <button type="submit">Registrarse</button>
        </form>
        <p>¿Ya tienes cuenta? <a href="login.php">Iniciar Sesión</a></p>
    </div>
</body>
</html>