<?php



require_once __DIR__ . '/../../config.php';

// POST /admin/transacciones/confirm.php
// Body: { id, newTipo }
// Confirm pending payments (tipo 7→10, 8→11)

requireAdmin();

$data = body();

if (empty($data['id']) || empty($data['newTipo'])) {
    jsonErr(400, 'ID y newTipo requeridos.');
}

$id = (int)$data['id'];
$newTipo = (int)$data['newTipo'];

// Validate: only allow 7→10 and 8→11
$db = getDB();
$stmt = $db->prepare('SELECT tipo FROM transacciones WHERE idtransacciones = ?');
$stmt->execute([$id]);
$transaccion = $stmt->fetch();

if (!$transaccion) {
    jsonErr(404, 'Transacción no encontrada.');
}

$oldTipo = (int)$transaccion['tipo'];

if (($oldTipo === 7 && $newTipo !== 10) || ($oldTipo === 8 && $newTipo !== 11)) {
    jsonErr(400, 'Transición de tipo no permitida.');
}

$stmt = $db->prepare('UPDATE transacciones SET tipo = ? WHERE idtransacciones = ?');
$stmt->execute([$newTipo, $id]);

// Update depositos status
$stmt = $db->prepare('UPDATE depositos SET status = "confirmado" WHERE transacciones_idtransacciones = ?');
$stmt->execute([$id]);

jsonOk(['message' => 'Transacción confirmada.']);
