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

// Verifica método POST
if ($_SERVER['REQUEST_METHOD'] !== 'POST') {
    header('Location: lista_clientes.php');
    exit;
}

// Verifica login
if (!isset($_SESSION['usuario_id'])) {
    header('Location: login.php');
    exit;
}

// Validação CSRF
if (empty($_POST['csrf_token']) || $_POST['csrf_token'] !== ($_SESSION['csrf_token'] ?? '')) {
    die('Token CSRF inválido.');
}

// Sanitiza e valida dados
$clienteId = filter_input(INPUT_POST, 'cliente_id', FILTER_VALIDATE_INT);
$observacao = trim($_POST['observacao'] ?? '');

if (!$clienteId || $observacao === '') {
    $_SESSION['erro'] = 'Cliente inválido ou observação vazia.';
    header("Location: detalhes_cliente.php?id=$clienteId");
    exit;
}

// Insere log na tabela cliente_logs
// Observação geral: sem atividade_id, apenas detalhes e cliente_id, usuario_id, data_hora
$sql = "INSERT INTO cliente_logs (cliente_id, usuario_id, data_hora, detalhes, atividade_id) VALUES (?, ?, NOW(), ?, NULL)";
$stmt = $conn->prepare($sql);

if (!$stmt) {
    error_log("Erro ao preparar INSERT de observação geral: " . $conn->error);
    $_SESSION['erro'] = 'Erro interno ao salvar observação.';
    header("Location: detalhes_cliente.php?id=$clienteId");
    exit;
}

$usuarioId = $_SESSION['usuario_id'];
$stmt->bind_param("iis", $clienteId, $usuarioId, $observacao);

if ($stmt->execute()) {
    $_SESSION['sucesso'] = 'Observação geral adicionada com sucesso.';
} else {
    $_SESSION['erro'] = 'Erro ao salvar observação.';
}

$stmt->close();

header("Location: detalhes_cliente.php?id=$clienteId");
exit;
