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.
66 righe
2.5 KiB
66 righe
2.5 KiB
<? |
|
$configPath = substr(__DIR__,0,strpos(__DIR__,"/public_html"))."/config.php"; |
|
include_once($configPath); |
|
|
|
$error = true; |
|
|
|
if (!empty($_SESSION["utente"]) && ! empty($_SESSION["ente"]) && ! empty($_GET["elemento"]) && ! empty($_GET["modulo"]) && ! empty($_GET["codice"])) { |
|
|
|
if ($_SESSION["utente"]->permission($_GET["modulo"], $_GET["elemento"])) { |
|
|
|
$comunicazione = $pdo->go( |
|
"SELECT r_comunicazioni_utenti.codice_ente, b_comunicazioni.codice as codice, r_comunicazioni_utenti.codice as codice_messaggio |
|
FROM r_comunicazioni_utenti |
|
JOIN b_comunicazioni ON r_comunicazioni_utenti.codice_comunicazione = b_comunicazioni.codice |
|
WHERE r_comunicazioni_utenti.codice = :codice LIMIT 0,1", |
|
[ |
|
":codice" => $_GET["codice"] |
|
] |
|
)->fetch(PDO::FETCH_ASSOC); |
|
|
|
if(! empty($comunicazione["codice"])) { |
|
|
|
$path = "{$config["mediaFolder"]}/{$comunicazione["codice_ente"]}/ricevute/{$comunicazione["codice"]}/{$comunicazione["codice_messaggio"]}"; |
|
|
|
$ricevute = glob("{$path}/*.eml"); |
|
if(! empty($ricevute)) { |
|
|
|
$z = "{$path}/ricevute-comunicazione-{$comunicazione["codice"]}-messaggio-{$comunicazione["codice_messaggio"]}.zip"; |
|
|
|
$zip = new ZipArchive; |
|
if ($zip->open($z, ZipArchive::CREATE) === TRUE) { |
|
foreach ($ricevute as $ricevuta) { |
|
$zip->addFile($ricevuta, basename($ricevuta)); |
|
} |
|
} |
|
$zip->close(); |
|
if(file_exists($z) && filesize($z) > 0) { |
|
$zip = file_get_contents($z); |
|
unlink($z); |
|
|
|
header('Content-Description: File Transfer'); |
|
header('Content-Type: application/zip'); |
|
header('Content-Disposition: attachment; filename=' . basename($z)); |
|
header('Content-Transfer-Encoding: binary'); |
|
header('Expires: 0'); |
|
header('Cache-Control: must-revalidate, post-check=0, pre-check=0'); |
|
header('Pragma: public'); |
|
|
|
echo $zip; |
|
die(); |
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
header('HTTP/1.0 403 Forbidden'); |
|
?><h1>Forbidden</h1><a href="/index.php"><?= __("Ritorna") ?></a><? |
|
die(); |
|
|
|
|
|
?>
|