<?php
session_start();
include '../includes/session_control.php';
header('Content-Type: application/json; charset=utf-8');

require_once __DIR__ . '/../cotizaciones/api/_node.php';
require_once __DIR__ . '/../includes/user_activity_log.php';

if ($_SERVER['REQUEST_METHOD'] === 'POST') {
  $payload = [
    'id' => intval($_POST['id'] ?? 0),
    'idEmpresa' => intval($_POST['idEmpresa'] ?? 0),
    'idTercero' => intval($_POST['idTercero'] ?? 0),
  ];

  $token = cpn_node_token_or_fail();
  $url = cpn_node_api_base() . '/api/gastos/beneficiario/update';
  $resp = cpn_node_request('POST', $url, $token, $payload);

  if (!($resp['ok'] ?? false)) {
    http_response_code(intval($resp['_http'] ?? 500));
    echo json_encode(['success' => false, 'msg' => $resp['error']['message'] ?? 'Error en API']);
    exit;
  }

  cpn_activity_log_event(
    'Gastos',
    'gastos.beneficiario_update',
    'Actualizó beneficiario del gasto #' . (int)$payload['id'],
    'gasto',
    (int)$payload['id'],
    ['idEmpresa' => (int)$payload['idEmpresa'], 'idTercero' => (int)$payload['idTercero']]
  );

  echo json_encode($resp['data'] ?? ['success' => false]);
}
