permission($radice)) { $return = []; $return["draw"] = (int) $_POST["draw"]; $return["recordsTotal"] = (int) 0; $return["recordsFiltered"] = (int) 0; if (isset($_POST["draw"])) { $select = "SELECT * "; $count = "SELECT COUNT(codice)"; $from = "FROM b_fileManager"; $where = ["soft_delete = :soft_delete"]; $bind[":soft_delete"] = "N"; $total = $pdo->go("{$count} {$from} WHERE {$where[0]}", $bind)->fetch(PDO::FETCH_COLUMN, 0); if($total > 0) { $moduli = array_filter($config["moduli"], function(&$settings) { return $settings["completed"] == "S" && ! $settings["nascosto"]; }); $moduli = array_column($config["moduli"], "titolo", 'id'); $return["recordsTotal"] = (int) $total; if(! empty($_POST["modulo"])) { $sources = []; $types = filesManager::availableTypes(); foreach ($types as $source => $type) { if(! empty($type["modulo"])) { $sources[$type["modulo"]][] = $source; } } if(! empty($sources[$_POST["modulo"]])) { $where[] = "sourceType IN ('" . implode("', '", $sources[$_POST["modulo"]]) . "')"; } } if(! empty($_POST["classificazione"])) { $where[] = "classificazione = :classificazione"; $bind[":classificazione"] = $_POST["classificazione"]; } if(! empty($_POST["titolo"])) { $where[] = "titolo LIKE :titolo"; $bind[":titolo"] = "%{$_POST["titolo"]}%"; } if(! empty($_POST["data_inizio"])) { $where[] = "timestamp >= :data_inizio"; $bind[":data_inizio"] = date2mysql($_POST["data_inizio"]) . " 00:00:00"; } if(! empty($_POST["data_fine"])) { $where[] = "timestamp <= :data_fine"; $bind[":data_fine"] = date2mysql($_POST["data_fine"]) . " 23:59:59"; } $types = filesManager::availableTypes(); $moduli = array_filter($config["moduli"], function(&$settings) { return $settings["completed"] == "S" && ! $settings["nascosto"]; }); $moduli = array_column($config["moduli"], "titolo", 'id'); $order = ["column" => "codice", "dir" => $_POST["order"][0]["dir"] ?? "DESC"]; switch($_POST["order"][0]["column"]) { case "0": $order["column"] = "codice"; break; case "2": $order["column"] = "modulo"; break; case "3": $order["column"] = "titolo"; break; } $where = "WHERE " . implode(" AND ", $where); $limit = ""; if(isset($_POST["start"]) && isset($_POST["length"]) && (int) $_POST["length"] > 0) { $start = (int) $_POST["start"]; $end = $start + (int) $_POST["length"]; $limit = "LIMIT {$start}, {$end}"; } $filtered = $pdo->go("{$count} {$from} {$where} ORDER BY {$order["column"]} {$order["dir"]}", $bind); $return["recordsFiltered"] = (int) $filtered->fetch(PDO::FETCH_COLUMN, 0); $result = $pdo->go("{$select} {$from} {$where} ORDER BY {$order["column"]} {$order["dir"]} {$limit}", $bind); if(! empty($_POST["token"])) { $_SESSION["ARCHIVIO-DOCUMENTALE"][$_POST["token"]]["sql"] = "{$select} {$from} {$where} ORDER BY {$order["column"]} {$order["dir"]} {$limit}"; $_SESSION["ARCHIVIO-DOCUMENTALE"][$_POST["token"]]["bind"] = $bind; $_SESSION["ARCHIVIO-DOCUMENTALE"][$_POST["token"]]["timestamp"] = date('Y-m-d H:i:s'); } $categoria = $pdo->prepare("SELECT titolo FROM b_categorie_documentali WHERE codice = :codice"); while ($record = $result->fetch(PDO::FETCH_ASSOC)) { $url = filesManager::getAttachURL($record, $record["sourceID"], $record["sourceType"], false); $row = []; $row[] = $record["codice"]; $modulo = $record["sourceType"]; if(! empty($types[$record["sourceType"]])) { $modulo = $types[$record["sourceType"]]["modulo"]; if(! empty($moduli[$modulo])) { $modulo = $moduli[$modulo]; } } $row[] = $modulo; $classificazione = "Nessuna"; if(! empty($record["classificazione"])) { $categoria->bindValue(":codice", $record["classificazione"]); $categoria->execute(); $classificazione = $categoria->fetch(PDO::FETCH_COLUMN, 0); } $row[] = $classificazione; ob_start(); ?> ()
SHA256: []