<?php
// Define o fuso horário do Brasil para a máquina (Hetzner) não se perder
date_default_timezone_set('America/Sao_Paulo');

// Este arquivo deve ser chamado pelo CRON JOB (cPanel)
require_once 'conexao.php';
require_once 'funcao_backup.php';

// 1. Verifica se a automação está ativa
$config = $connGeral->query("SELECT * FROM backup_automatizado WHERE id=1")->fetch(PDO::FETCH_ASSOC);

if (!$config || $config['status'] !== 'ativo') {
    die("Backup automatico desativado.");
}

// 2. Verifica se está na hora de rodar
$hora_agendada = $config['horario']; // Horário salvo no painel (Ex: 00:45)
$hora_agora = date('H:i'); // Horário EXATO de Brasília agora

// Captura a data de hoje no fuso horário do Brasil
$hoje_brasil = date('Y-m-d');

// Verifica se já existe backup HOJE comparando direto com a data do Brasil (evita erro de fuso no MySQL)
$ja_fez_hoje = $connGeral->query("SELECT id FROM arquivo_backup WHERE tipo='Automatico' AND DATE(data) = '{$hoje_brasil}'")->fetch();

// CORREÇÃO DA SEGURANÇA: Trocado de >= para == para rodar APENAS no minuto exato configurado
if (!$ja_fez_hoje && $hora_agora == $hora_agendada) {
    // Executa o backup
    if (gerarBackupCompleto('Automatico')) {
        echo "Backup Automatico realizado com sucesso em " . date('d/m/Y H:i:s');
    } else {
        echo "Erro ao gerar backup automatico.";
    }
} else {
    echo "Ainda nao eh hora ($hora_agora diferente de $hora_agendada) ou ja foi feito hoje.";
}
?>
