<?php
/**
 * Script para salvar veículo direto no banco de dados
 * Usado pelo painel web de retaguarda
 */

// Configurar UTF-8
// Removido header JSON pois vamos redirecionar

// Conectar ao banco
function conectarBanco() {
    $host = 'localhost';
    $dbname = 'pinheir3_controle_frotasV1.1';
    $username = 'pinheir3_admin';
    $password = '080880Gelboy';
    
    try {
        $pdo = new PDO("mysql:host=$host;dbname=$dbname;charset=utf8mb4", $username, $password, [
            PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
            PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC,
        ]);
        return $pdo;
    } catch (PDOException $e) {
        throw new Exception('Erro de conexão: ' . $e->getMessage());
    }
}

// Função removida - agora usamos redirecionamento

try {
    $pdo = conectarBanco();

    // Verificar se é POST
    if ($_SERVER['REQUEST_METHOD'] !== 'POST') {
        header('Location: admin/cadastros.html?msg=Método não permitido&tipo=erro');
        exit();
    }
    
    // Pegar dados do formulário
    $acao = $_POST['acao'] ?? '';
    $id = $_POST['id'] ?? null;
    
    // Validar campos obrigatórios
    $camposObrigatorios = ['placa', 'modelo', 'marca', 'ano', 'cor', 'tipo'];
    foreach ($camposObrigatorios as $campo) {
        if (!isset($_POST[$campo]) || empty($_POST[$campo])) {
            header('Location: admin/cadastros.html?msg=Campo obrigatório: ' . urlencode($campo) . '&tipo=erro');
            exit();
        }
    }
    
    // Preparar dados
    $dados = [
        'placa' => $_POST['placa'],
        'modelo' => $_POST['modelo'],
        'marca' => $_POST['marca'],
        'ano_fabricacao' => $_POST['ano'],
        'cor' => $_POST['cor'],
        'tipo' => $_POST['tipo'],
        'observacoes' => !empty($_POST['observacoes']) ? $_POST['observacoes'] : null,
        'status' => 'ativo'
    ];
    
    if ($acao === 'editar' && $id) {
        // Atualizar veículo existente
        $sql = "UPDATE veiculos SET 
            placa = ?, modelo = ?, marca = ?, ano_fabricacao = ?, cor = ?, tipo = ?, observacoes = ?
            WHERE id = ?";
        
        $stmt = $pdo->prepare($sql);
        $stmt->execute([
            $dados['placa'],
            $dados['modelo'],
            $dados['marca'],
            $dados['ano_fabricacao'],
            $dados['cor'],
            $dados['tipo'],
            $dados['observacoes'],
            $id
        ]);
        
        // Redirecionar de volta para a página de cadastros
        header('Location: admin/cadastros.html?msg=Veículo atualizado com sucesso!&tipo=sucesso');
        exit();
        
    } else {
        // Cadastrar novo veículo
        $sql = "INSERT INTO veiculos (placa, modelo, marca, ano_fabricacao, cor, tipo, observacoes, status) 
                VALUES (?, ?, ?, ?, ?, ?, ?, ?)";
        
        $stmt = $pdo->prepare($sql);
        $stmt->execute([
            $dados['placa'],
            $dados['modelo'],
            $dados['marca'],
            $dados['ano_fabricacao'],
            $dados['cor'],
            $dados['tipo'],
            $dados['observacoes'],
            $dados['status']
        ]);
        
        $novoId = $pdo->lastInsertId();
        // Redirecionar de volta para a página de cadastros
        header('Location: admin/cadastros.html?msg=Veículo cadastrado com sucesso!&tipo=sucesso');
        exit();
    }
    
} catch (Exception $e) {
    // Redirecionar com mensagem de erro
    header('Location: admin/cadastros.html?msg=Erro ao salvar veículo: ' . urlencode($e->getMessage()) . '&tipo=erro');
    exit();
}
?> 
