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.
69 righe
3.1 KiB
69 righe
3.1 KiB
<?php |
|
|
|
$configPath = substr(__DIR__,0,strpos(__DIR__,"/public_html"))."/config.php"; |
|
include_once($configPath); |
|
|
|
if (! empty($_SESSION["utente"]) && empty($_SESSION["ente"]) && $_SESSION["utente"]->permission($radice) && ! empty($_GET["codice"]) && $_SESSION["utente"]->isSupportoOrRoot()) { |
|
|
|
$ente = $pdo->go("SELECT codice, denominazione, dominio, esportazione, password_esportazione, giorni_durata_esportazione, data_richiesta_esportazione FROM b_enti WHERE codice = :codice AND attivo = 'N'", [":codice" => $_GET["codice"]])->fetch(PDO::FETCH_ASSOC); |
|
// Se non è stata ancora richiesta oppure se l'esportazione è scaduta |
|
if(empty($ente["data_richiesta_esportazione"]) || strtotime("+{$ente["giorni_durata_esportazione"]} days", strtotime($ente["data_richiesta_esportazione"])) <= strtotime('now')) { |
|
|
|
$_csrf_token = tokenGen(); |
|
echo <<<HTML |
|
<form method="POST" rel="validate" id="form-advanced" action="/backend/enti/esportazione/save.php"> |
|
<input type="hidden" name="token" value="{$_csrf_token}"> |
|
<input type="hidden" name="codice_ente" value="{$ente['codice']}"> |
|
<div class="row"> |
|
<div class="col-12"> |
|
<span class="h2 d-block text-center"> |
|
Esportazione : {$ente["denominazione"]}<br> |
|
<small><i>{$ente["dominio"]}</i></small> |
|
</span> |
|
</div> |
|
</div> |
|
<div class="row mt-3"> |
|
<div class="form-group col-sm-12 text-center"> |
|
<label for="giorni_durata_esportazione text-center">Giorni validità dell'archivio *</label> |
|
<input name="giorni_durata_esportazione" type="text" class="input-lg form-control text-center" id="giorni_durata_esportazione" value="{$ente['giorni_durata_esportazione']}" title="Giorni validità dell'archivio" rel="S;1;10;N;10;>="> |
|
</div> |
|
</div> |
|
<div class="row"> |
|
<div class="col-12"> |
|
<button type="submit" class="btn btn-warning btn-block"><i class="fas fa-file-export mr-2"></i>Programma esportazione</button> |
|
</div> |
|
</div> |
|
</form> |
|
HTML; |
|
exit; |
|
|
|
// Se l'esportazione è stata richiesta o è in corso di validità |
|
} elseif (! empty($ente["data_richiesta_esportazione"] && strtotime("+{$ente["giorni_durata_esportazione"]} days", strtotime($ente["data_richiesta_esportazione"])) > strtotime('now'))) { |
|
|
|
// Se l'esportazione è completa |
|
if($ente["esportazione"] == 'completa') { |
|
|
|
alertManager::printSuccessBox("Esportazione completata"); |
|
$token = base64_encode(gzdeflate(json_encode(["hash" => password_hash("{$ente["codice"]}-{$ente["dominio"]}-EXPORT-TUTTOGARE", PASSWORD_BCRYPT), "codice" => $ente["codice"]]))); |
|
echo <<<HTML |
|
<div class="row"> |
|
<div class="col-12 text-center mb-4"> |
|
<a href="{$config['link_sito']}/tenant-exp/{$token}" target="_blank">Link archivio zip protetto da password.</a> |
|
</div> |
|
</div> |
|
HTML; |
|
exit; |
|
|
|
// Se l'esportazione è in corso |
|
} else { |
|
|
|
alertManager::printInfoBox("Esportazione in corso", "E' in corso la generazione del pacchetto della piattaforma."); |
|
exit; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
HTTPStatus(403); |