gestione gare pubbliche
Non puoi selezionare più di 25 argomenti Gli argomenti devono iniziare con una lettera o un numero, possono includere trattini ('-') e possono essere lunghi fino a 35 caratteri.
 
 
 
 
 

60 righe
2.4 KiB

<?php
$configPath = substr(__DIR__,0,strpos(__DIR__,"/public_html"))."/config.php";
include_once($configPath);
if (!empty($_SESSION["utente"]) && $_SESSION["utente"]->permission($radice)) {
if(! empty($_GET["codice"])) {
$pacchetto = $pdo->go("SELECT * FROM b_conservazione WHERE codice = :codice LIMIT 0,1", [":codice" => $_GET["codice"]])->fetch(PDO::FETCH_ASSOC);
if(! empty($pacchetto)) {
if($pacchetto["archivio"] == "S" && file_exists("{$config["mediaFolder"]}/{$_SESSION["ente"]->codice}/conservazione/ZIPARCH-{$pacchetto["codice"]}.zip")) {
$archivio = "{$config["mediaFolder"]}/{$_SESSION["ente"]->codice}/conservazione/ZIPARCH-{$pacchetto["codice"]}.zip";
header('Content-Description: File Transfer');
header("Content-Type: application/zip");
header('Content-Disposition: attachment; filename="'.basename($archivio).'"');
header('Expires: 0');
header('Cache-Control: must-revalidate');
header('Pragma: public');
header("Content-Transfer-Encoding: Binary");
header('Content-Length: ' . filesize($archivio));
$chunk = 10 * 1024 * 1024;
$handle = fopen($archivio, 'rb');
while (!feof($handle)) {
$buffer = fread($handle, $chunk);
echo $buffer;
ob_flush();
flush();
}
fclose($handle);
unlink($archivio);
die();
} else {
$pdo->go("UPDATE b_conservazione SET archivio = :archivio, utente_modifica = :utente_modifica WHERE codice = :codice", [":codice" => $pacchetto["codice"], ":archivio" => "W", ":utente_modifica" => $_SESSION["utente"]->codice]);
$result = shell_exec("php {$config["cmds_folder"]}/artisan job:dispatch Preservation/MakeZipArchiveJob -P {$_SESSION["ente"]->codice} -P {$pacchetto["codice"]} -Q preservation -C database -D now 2>&1");
$result = preg_replace('~[[:cntrl:]]~', '', $result);
if($result == "Job has been scheduled.") {
header("Location: {$_SERVER['HTTP_REFERER']}");
die();
}
}
}
}
}
HTTPStatus(403);
?><h1>Forbidden</h1><a href="/index.php"><?= __("Ritorna") ?></a><?