<?php
session_start();
require 'db.php';
require 'functions.php';

$erro = '';
$mensagem_sucesso = '';

// Verificar se há mensagem de sucesso da recuperação de senha
if (isset($_SESSION['mensagem_sucesso'])) {
    $mensagem_sucesso = $_SESSION['mensagem_sucesso'];
    unset($_SESSION['mensagem_sucesso']);
}

// Verificar se há mensagem de erro
if (isset($_SESSION['mensagem_erro'])) {
    $erro = $_SESSION['mensagem_erro'];
    unset($_SESSION['mensagem_erro']);
}

// Funções para verificar se cadastro e recuperação de senha estão habilitados
function cadastro_esta_habilitado($pdo) {
    try {
        $stmt = $pdo->prepare("SELECT valor FROM configuracoes WHERE chave = 'habilitar_cadastro'");
        $stmt->execute();
        $resultado = $stmt->fetch(PDO::FETCH_ASSOC);
        return $resultado && $resultado['valor'] == '1';
    } catch (Exception $e) {
        return true; // Se houver erro, assume que está habilitado por padrão
    }
}

function recuperacao_senha_esta_habilitada($pdo) {
    try {
        $stmt = $pdo->prepare("SELECT valor FROM configuracoes WHERE chave = 'habilitar_recuperar_senha'");
        $stmt->execute();
        $resultado = $stmt->fetch(PDO::FETCH_ASSOC);
        return $resultado && $resultado['valor'] == '1';
    } catch (Exception $e) {
        return true; // Se houver erro, assume que está habilitado por padrão
    }
}

if ($_SERVER['REQUEST_METHOD'] === 'POST') {
    $email = $_POST['email'] ?? '';
    $senha = $_POST['senha'] ?? '';

    $stmt = $pdo->prepare("SELECT * FROM usuarios WHERE email = ?");
    $stmt->execute([$email]);
    $user = $stmt->fetch();

    if ($user && password_verify($senha, $user['senha'])) {
        $_SESSION['usuario_id'] = $user['id'];
        $_SESSION['nome'] = $user['nome'];
        $_SESSION['is_admin'] = ($user['tipo'] === 'admin');
        header("Location: " . ($user['tipo'] === 'admin' ? "admin.php" : "dashboard.php"));
        exit;
    } else {
        $erro = "E-mail ou senha inválidos!";
    }
}
?><!DOCTYPE html>
<html lang="pt-br">
<head>
  <meta charset="UTF-8">
  <title>Login - Sistema de Ponto</title>
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css" rel="stylesheet">
  <link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css" rel="stylesheet">
  <link rel="stylesheet" href="style.css">
  <link rel="stylesheet" href="style-override.css?v=1.0.1">
  <link rel="stylesheet" href="style-icons-fix.css">
  <link rel="stylesheet" href="style-close-button.css">
  <?php
  $favicon = safe_buscar_config($pdo, 'favicon', '');
  if (!empty($favicon)) {
      echo '<link rel="icon" type="image/svg+xml" href="upload/' . htmlspecialchars($favicon) . '">';
  } else {
      echo '<link rel="icon" href="/default-favicon.ico">';
  }
  ?>
  <style>
    body, html {
      margin: 0;
      padding: 0;
      height: 100%;
      overflow-x: hidden;
    }
    .wrapper.center {
      margin: 0;
      padding: 0;
      display: flex;
      justify-content: center;
      align-items: center;
      min-height: 100vh;
      background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    }
  </style>
</head>
<body>
  <div class="footer-spacer"></div> <!-- Espaçador para o conteúdo não ficar atrás do footer -->
  <div class="wrapper center">
    <form method="POST" class="login-box">
      <div class="text-center mb-4">
        <?php if (!empty($favicon)): ?>
          <img src="upload/<?= htmlspecialchars($favicon) ?>" alt="Sistema de Ponto" style="width: 70px; height: 70px; object-fit: contain; margin-bottom: 15px;">
        <?php else: ?>
          <img src="upload/favicon_new.svg" alt="Sistema de Ponto" style="width: 70px; height: 70px; object-fit: contain; margin-bottom: 15px;">
        <?php endif; ?>
        <h1 class="h3 mb-3 fw-normal">Sistema de Ponto</h1>
        <p class="text-muted">Faça login para continuar</p>
      </div>
      
      <div class="mb-3">
        <input type="email" name="email" class="form-control" placeholder="E-mail" required>
      </div>
      
      <div class="mb-4">
        <input type="password" name="senha" class="form-control" placeholder="Senha" required>
      </div>
      
      <button type="submit" class="btn btn-primary w-100 py-3 mb-3">
        <i class="fas fa-sign-in-alt me-2"></i>Entrar
      </button>

      <div class="d-grid gap-2">
        <?php if (recuperacao_senha_esta_habilitada($pdo)): ?>
        <a href="recuperar_senha.php" class="btn btn-outline-primary py-2">
          <i class="fas fa-key me-2"></i>Esqueci minha senha
        </a>
        <?php endif; ?>
        
        <?php if (cadastro_esta_habilitado($pdo)): ?>
        <a href="cadastro.php" class="btn btn-outline-primary py-2">
          <i class="fas fa-user-plus me-2"></i>Criar conta
        </a>
        <?php endif; ?>
      </div>

      <?php if ($mensagem_sucesso): ?>
        <div class="alert alert-success mt-3">
          <i class="fas fa-check-circle me-2"></i><?= htmlspecialchars($mensagem_sucesso) ?>
        </div>
      <?php endif; ?>

      <?php if ($erro): ?>
        <div class="alert alert-danger mt-3">
          <i class="fas fa-exclamation-circle me-2"></i><?= htmlspecialchars($erro) ?>
        </div>
      <?php endif; ?>
    </form>
  </div>

  <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/js/bootstrap.bundle.min.js"></script>
  
  <div class="footer-spacer"></div>
  <footer class="footer-cwmkt">Desenvolvido por CWMKT</footer>

</body>
</html>