<?php
ini_set('display_errors', 1);
error_reporting(E_ALL);

header("Access-Control-Allow-Origin: *");
header("Access-Control-Allow-Headers: Content-Type");
header("Access-Control-Allow-Methods: POST, OPTIONS");
header("Content-Type: application/json; charset=utf-8");
header("Access-Control-Max-Age: 86400");

require_once(__DIR__ . '/../../config.php'); // Asume que $mysqli está definido aquí

 $data = json_decode(file_get_contents('php://input'));
 $slug = $data->slug_tienda;
 $id_nuevo_activo = (int)$data->id;

// Iniciar una transacción para asegurar que ambas operaciones se completen
 $mysqli->begin_transaction();

try {
    // 1. Desactivar todos los rangos de esta tienda
    $stmt1 = $mysqli->prepare("UPDATE rangos_factura SET activo = 0 WHERE slug_tienda = ?");
    $stmt1->bind_param('s', $slug);
    $stmt1->execute();
    $stmt1->close();

    // 2. Activar el rango seleccionado
    $stmt2 = $mysqli->prepare("UPDATE rangos_factura SET activo = 1 WHERE id = ?");
    $stmt2->bind_param('i', $id_nuevo_activo);
    $stmt2->execute();
    $stmt2->close();

    // Si todo salió bien, confirmar la transacción
    $mysqli->commit();
    echo json_encode(['success' => true, 'message' => 'Rango activado.']);

} catch (Exception $e) {
    // Si algo falló, deshacer los cambios
    $mysqli->rollback();
    echo json_encode(['success' => false, 'message' => 'Error al activar el rango: ' . $e->getMessage()]);
}
?>