<?php
session_start();
require_once 'conexao.php';

$erro = '';
$mensagem = '';
$novaSenha = '';
$token = $_GET['token'] ?? '';

if (!$token) {
    $erro = "Token inválido.";
} else {
    // Verifica se o token é válido e não expirou
    $stmt = $conn->prepare("SELECT email, expira_em FROM tokens_recuperacao WHERE token = ?");
    $stmt->bind_param("s", $token);
    $stmt->execute();
    $resultado = $stmt->get_result();

    if ($resultado->num_rows === 1) {
        $row = $resultado->fetch_assoc();
        $email = $row['email'];
        $expira = strtotime($row['expira_em']);

        if (time() > $expira) {
            $erro = "Este link expirou.";
        }

    } else {
        $erro = "Token inválido.";
    }
    $stmt->close();
}

// Quando o formulário for enviado
if ($_SERVER['REQUEST_METHOD'] === 'POST' && isset($_POST['senha']) && empty($erro)) {
    $novaSenha = $_POST['senha'];
    $hash = password_hash($novaSenha, PASSWORD_DEFAULT);

    // Tenta atualizar nas duas tabelas
    $stmt1 = $conn->prepare("UPDATE usuarios SET senha = ? WHERE email = ?");
    $stmt1->bind_param("ss", $hash, $email);
    $stmt1->execute();

    $stmt2 = $conn->prepare("UPDATE cliente_tvitec SET senha = ? WHERE email = ?");
    $stmt2->bind_param("ss", $hash, $email);
    $stmt2->execute();

    // Remove o token
    $stmt3 = $conn->prepare("DELETE FROM tokens_recuperacao WHERE token = ?");
    $stmt3->bind_param("s", $token);
    $stmt3->execute();

    $mensagem = "Senha alterada com sucesso!";
    $stmt1->close();
    $stmt2->close();
    $stmt3->close();
}

$conn->close();
?>

<!DOCTYPE html>
<html lang="pt-br">
<head>
    <meta charset="UTF-8">
    <title>Redefinir Senha</title>
    <style>
        body {
            font-family: Arial;
            background: #f5f5f5;
            display: flex;
            justify-content: center;
            align-items: center;
            height: 100vh;
        }
        .box {
            background: white;
            padding: 30px;
            border-radius: 8px;
            box-shadow: 0 0 10px rgba(0,0,0,.1);
            max-width: 400px;
            width: 100%;
        }
        h2 {
            text-align: center;
            color: #333;
        }
        .form-group {
            margin: 15px 0;
        }
        input[type=password] {
            width: 100%;
            padding: 10px;
            border-radius: 4px;
            border: 1px solid #ccc;
        }
        button {
            width: 100%;
            padding: 10px;
            background: #3498db;
            color: white;
            border: none;
            border-radius: 4px;
            font-size: 16px;
        }
        .msg {
            margin-top: 15px;
            padding: 10px;
            border-radius: 4px;
            text-align: center;
        }
        .msg.success { background: #d4edda; color: #155724; }
        .msg.error   { background: #f8d7da; color: #721c24; }
    </style>
</head>
<body>
<div class="box">
    <h2>Redefinir Senha</h2>

    <?php if ($erro): ?>
        <div class="msg error"><?= htmlspecialchars($erro) ?></div>
    <?php elseif ($mensagem): ?>
        <div class="msg success"><?= htmlspecialchars($mensagem) ?></div>
    <?php elseif (!empty($token)): ?>
        <form method="POST">
            <div class="form-group">
                <label for="senha">Nova Senha:</label>
                <input type="password" name="senha" id="senha" required>
            </div>
            <button type="submit">Salvar Nova Senha</button>
        </form>
    <?php endif; ?>
</div>
</body>
</html>
