<?php
include('../include/headscript.php');

if (isset($_POST['user']) && isset($_POST['table'])) {
    $userId = $_POST['user'];
    $page = 'reports';

    $conn = new mysqli($servername, $username, $password, $database);

    if ($conn->connect_error) {
        die("Connection failed: " . $conn->connect_error);
    }

    // Query per cercare le impostazioni salvate
    $query = "SELECT * FROM user_table_settings WHERE iduser = ? AND page = ?";
    $stmt = $conn->prepare($query);
    $stmt->bind_param("is", $userId, $page);
    $stmt->execute();
    $result = $stmt->get_result();

    if ($result->num_rows > 0) {
        // Se esistono, restituisci le impostazioni esistenti
        $row = $result->fetch_assoc();
        $settings = [
            'columns' => json_decode($row['column_visibility'], true),
            'ColReorder' => json_decode($row['column_order'], true),
            'time' => time()
        ];

        echo json_encode($settings);
    } else {
        // Se non esistono, inserisci un record di default
        $defaultColumnVisibility = json_encode([true, true, true, true, true, true]); // Adatta le colonne al numero di colonne della tua tabella
        $defaultColumnOrder = json_encode([0, 1, 2, 3, 4, 5]); // Ordine predefinito delle colonne

        $insertQuery = "INSERT INTO user_table_settings (iduser, page, column_visibility, column_order, created_at, updated_at) VALUES (?, ?, ?, ?, NOW(), NOW())";
        $insertStmt = $conn->prepare($insertQuery);
        $insertStmt->bind_param("isss", $userId, $page, $defaultColumnVisibility, $defaultColumnOrder);

        if ($insertStmt->execute()) {
            // Restituisci le impostazioni predefinite appena create
            $settings = [
                'columns' => json_decode($defaultColumnVisibility, true),
                'ColReorder' => json_decode($defaultColumnOrder, true),
                'time' => time()
            ];

            echo json_encode($settings);
        } else {
            // Gestisci eventuali errori nell'inserimento
            echo json_encode(['error' => 'Failed to insert default settings']);
        }

        $insertStmt->close();
    }

    $stmt->close();
    $conn->close();
} else {
    echo json_encode(['error' => 'Invalid request']);
}
