<?php
// edit-document.php
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);

include('include/headscript.php');

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

if ($conn->connect_error) {
    die("Errore di connessione: " . $conn->connect_error);
}

// Verifica se la richiesta è POST
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
    // Recupera i dati dal form
    $document_id = isset($_POST['document_id']) ? (int)$_POST['document_id'] : 0;
    $document_name = $conn->real_escape_string($_POST['document_name']);
    $page_id = isset($_POST['page_id']) ? (int)$_POST['page_id'] : null;
    $idsections = isset($_POST['idsections']) ? (int)$_POST['idsections'] : null;
    $max_documents = isset($_POST['max_documents']) ? (int)$_POST['max_documents'] : 0;
    $is_required = isset($_POST['is_required']) ? (int)$_POST['is_required'] : 0;
    $notes = !empty($_POST['notes']) ? $conn->real_escape_string($_POST['notes']) : null;
    $tags = isset($_POST['tags']) ? $_POST['tags'] : []; // Array di tag selezionati

    // Prepara la query di aggiornamento
    $query = "
        UPDATE documents 
        SET document_name = ?, page_id = ?, idsections = ?, max_documents = ?, is_required = ?, notes = ? 
        WHERE document_id = ?
    ";

    $stmt = $conn->prepare($query);
    if ($stmt === false) {
        die("Errore nella preparazione della query: " . $conn->error);
    }

    // Associa i parametri alla query
    $stmt->bind_param('siiissi', $document_name, $page_id, $idsections, $max_documents, $is_required, $notes, $document_id);

    // Esegue la query e controlla il risultato
    if ($stmt->execute()) {
        // Elimina i tag esistenti
        $stmt = $conn->prepare("DELETE FROM document_tags WHERE document_id = ?");
        $stmt->bind_param("i", $document_id);
        $stmt->execute();
        $stmt->close();

        // Inserisci i nuovi tag
        if (!empty($tags)) {
            $stmt = $conn->prepare("INSERT INTO document_tags (document_id, tag_id) VALUES (?, ?)");
            foreach ($tags as $tag_id) {
                $tag_id = (int)$tag_id;
                $stmt->bind_param("ii", $document_id, $tag_id);
                $stmt->execute();
            }
            $stmt->close();
        }

        // Reindirizza con messaggio di successo
        header("Location: documents-settings.php?success=1");
        exit();
    } else {
        // Reindirizza con messaggio di errore
        header("Location: documents-settings.php?error=1");
        exit();
    }

    $stmt->close();
} else {
    // Metodo non consentito
    header("HTTP/1.1 405 Method Not Allowed");
    echo "Metodo non consentito.";
    exit();
}

$conn->close();
