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

header('Content-Type: application/json');

// Verificar CSRF token
if (!isset($_SERVER['HTTP_CONTENT_TYPE']) || 
    stripos($_SERVER['HTTP_CONTENT_TYPE'], 'application/json') === false) {
    die(json_encode(['success' => false, 'message' => 'Content-Type must be application/json']));
}

$data = json_decode(file_get_contents('php://input'), true);

if (!isset($data['csrf_token']) || $data['csrf_token'] !== $_SESSION['csrf_token']) {
    die(json_encode(['success' => false, 'message' => 'Token CSRF inválido']));
}

if (!isset($data['cliente_id']) || !isset($data['produto_id'])) {
    die(json_encode(['success' => false, 'message' => 'Dados incompletos']));
}

$clienteId = (int)$data['cliente_id'];
$produtoId = (int)$data['produto_id'];
$usuarioId = $_SESSION['usuario_id'] ?? null;
$nomeUsuario = $_SESSION['usuario_nome'] ?? null;

// Obter nome do produto para o log
$sqlProduto = "SELECT nome FROM produtos WHERE id = ?";
$stmtProduto = $conn->prepare($sqlProduto);
$stmtProduto->bind_param("i", $produtoId);
$stmtProduto->execute();
$produto = $stmtProduto->get_result()->fetch_assoc();

// Remover vínculo
$sqlDelete = "DELETE FROM cliente_produtos WHERE cliente_id = ? AND produto_id = ?";
$stmtDelete = $conn->prepare($sqlDelete);
$stmtDelete->bind_param("ii", $clienteId, $produtoId);

if ($stmtDelete->execute()) {
    // Registrar na tabela de logs de produtos
    $sqlLog = "INSERT INTO produto_cliente_logs 
               (cliente_id, produto_id, produto_nome, acao, detalhes, usuario_id, nome_usuario) 
               VALUES (?, ?, ?, 'remocao_produto', 'Produto removido do cliente', ?, ?)";
    $stmtLog = $conn->prepare($sqlLog);
    $stmtLog->bind_param("iisii", $clienteId, $produtoId, $produto['nome'], $usuarioId, $nomeUsuario);
    $stmtLog->execute();
    
    echo json_encode(['success' => true]);
} else {
    echo json_encode(['success' => false, 'message' => 'Erro ao remover vínculo de produto']);
}

$conn->close();
?>