<?php

// Recibir y decodificar JSON del cuerpo de la petici¨®n
$_POST = json_decode(file_get_contents('php://input'), true);

// Verificar que los datos requeridos existen
if (!isset($_POST['token'], $_POST['bd'], $_POST['idCliente'], $_POST['sucursal'])) {
    echo json_encode(["error" => "Datos incompletos"]);
    exit;
}

// Obtener datos del POST
$token = trim($_POST['token']);
$bdname = trim($_POST['bd']);
$idcliente = intval($_POST['idCliente']);
$sucursal = trim($_POST['sucursal']);

// Configuraci¨®n de la base de datos
$servername = "directoriofitness.com.mx";
$username = "direct18";
$password = "L4LL4v3M@3str@";

try {
    // Crear la conexi¨®n con MySQL
    $conn = new mysqli($servername, $username, $password, $bdname);

    // Verificar si hay errores en la conexi¨®n
    if ($conn->connect_error) {
        die(json_encode(["error" => "Conexion fallida: " . $conn->connect_error]));
    }

    // Primera consulta: verificar si el token ya existe
    $query_check = "SELECT token FROM push_notificaciones WHERE token = ?";
    $stmt_check = $conn->prepare($query_check);
    $stmt_check->bind_param("s", $token);
    $stmt_check->execute();
    $stmt_check->store_result();

    if ($stmt_check->num_rows > 0) {
        // Si ya existe el token, enviamos un mensaje y no insertamos
        echo json_encode(["info" => "El token ya esta registrado."]);
    } else {
        // Si el token no existe, proceder con la inserci¨®n
        $query_insert = "INSERT INTO push_notificaciones (idSocio, token, sucursal, notificacion) VALUES (?, ?, ?, 1)";
        $stmt_insert = $conn->prepare($query_insert);
        $stmt_insert->bind_param("iss", $idcliente, $token, $sucursal);
        $result = $stmt_insert->execute();

        if ($result) {
            echo json_encode(["success" => "Token guardado correctamente."]);
        } else {
            echo json_encode(["error" => "Hubo un error al guardar el token."]);
        }

        // Cerrar la consulta de inserci¨®n
        $stmt_insert->close();
    }

    // Cerrar la consulta de verificaci¨®n
    $stmt_check->close();
    $conn->close();

} catch (Exception $e) {
    echo json_encode(["error" => "Error: " . $e->getMessage()]);
}

?>
