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.
 
 
 
 
 

176 righe
9.1 KiB

<?
$configPath = substr(__DIR__,0,strpos(__DIR__,"/public_html"))."/config.php";
include_once($configPath);
$id_modulo = "open";
$cmd_info = gara::getInfoModulo($id_modulo);
if (!empty($_SESSION["utente"]) && $_SESSION["utente"]->permission($radice,$_GET["codice"],$id_modulo) && $_SESSION["utente"]->permission($cmd_info["modulo_riferimento"])) {
$codice_round = $_GET["codice_round"] ?? NULL;
$gara = gara::init($_GET["codice"],$codice_round);
if (!empty($gara)) {
$record = $gara->info;
$round = $gara->round;
$titolo_modulo = __($cmd_info["titolo"]);
$breadcrumb = array();
$breadcrumb["/".$radice."/"] = Modulo::getInfo($radice)["titolo"];
$breadcrumb["/".$radice."/panel.php?codice=".$record["codice"]."&codice_round=".$round["codice"]] = __("Pannello");
$breadcrumb[""] = $titolo_modulo;
include_once ($beRoot."/layout/top.php");
?><h1><?= $titolo_modulo ?></h1><?
$gara->printSelectLottiConditions = ["hasPartecipanti"];
if ($gara->chooseLotto($_GET["codice_lotto"] ?? false,"{$_SERVER["PHP_SELF"]}?codice=".$record["codice"]."&codice_round=".$round["codice"])) {
$lotto = $gara->lotto;
$lock = $gara->checkLock($cmd_info["id"]);
$partecipanti = $gara->getPartecipanti();
$sedute = $gara->getSedute();
if (count($partecipanti) > 0) {
?>
<div id="commands" class="mb-5">
<div class="commands container-fluid">
<div class="row">
<div class="col-12 text-right">
<? if (!empty($sedute)) { ?>
<button onClick="showModalWithURL('list.php?codice_gara=<?= $record["codice"] ?>&codice_round=<?= $round["codice"] ?>')" class="btn btn-info" title="<?= __('Elenco sedute') ?>"><span class="fa fa-list"></span> <?= __('Elenco sedute') ?></button>
<? } ?>
<? if (!$lock) { ?>
<button onClick="showModalWithURL('edit.php?codice_gara=<?= $record["codice"] ?>&codice_round=<?= $round["codice"] ?>&codice=0')" class="btn btn-success" title="<?= __('aggiungi nuova seduta') ?>"><span class="fa fa-plus-circle"></span> <?= __('aggiungi nuova seduta') ?></button>
<? } ?>
</div>
</div>
</div>
</div>
<div id="form-chiave-privata" class="card">
<div class="card-body text-center">
<h3><span class="fa fa-lock"></span> <?= __("chiave privata") ?></h3>
<div class="showKeySelect">
<input type="file" id="chiave" title="<?= __("chiave privata") ?>" rel="S;0;0;F"/>
</div>
<div class="alert alert-success showKeyOk" style="display:none">
<span class="fa fa-key"></span> <?= __("Chiave caricata") ?>
<br><button type="button" onClick='$("#chiave").val("");$("#private").val("");$(".private").val("");$(".showKeySelect").slideDown();$(".showKeyOk").slideUp();' class="btn btn-sm btn-danger"><span class="fa fa-times"></span><?= __("Rimuovi chiave") ?></button>
</div>
<input type="hidden" class="private" id="private" />
</div>
</div>
<?
$seduta_aperta = $gara->sedutaAperta();
$punteggi_tecnici = $gara->showPunteggiTecnici();
$punteggi_economici = $gara->showPunteggiEconomici();
?>
<div class="alert alert-<?= ($seduta_aperta) ? "success" : "danger" ?> text-center my-3" id="status-seduta">
<?= __("Stato seduta pubblica") ?><br>
<strong id="status-seduta-label"><?= $seduta_aperta ? __("Aperta") : __("Chiusa") ?></strong><br>
<button id="status-seduta-button" type="button" class="btn btn-sm px-5 my-1 btn-<?= (!$seduta_aperta) ? "success" : "danger" ?>"
onClick="disabilita('<?= $record["codice"] ?>','gare/open','codice_round=<?= $round["codice"] ?>')">
<?= !$seduta_aperta ? __("Apri seduta") : __("Chiudi seduta") ?>
</button>
<? if ($_SESSION["ente"]->hasModulo("conference")) { ?>
<a href="conference.php?codice=<?= $record["codice"] ?>&codice_round=<?= $round["codice"] ?>" target="_blank" class="comandiSeduta <?= !$seduta_aperta ? "collapse" : "" ?> btn btn-sm px-5 my-1 btn-primary">
<?= __("Avvia teleconferenza") ?>
</a>
<? } ?>
<button type="button" class="comandiSeduta btn btn-sm px-5 my-1 btn-primary <?= !$seduta_aperta ? "collapse" : "" ?>"
onClick="confirmBeforeSubmit('<?= $record["codice"] ?>','/backend/gare/open/sendMsgAvvio.php','codice_lotto=<?= $lotto["codice"] ?>&codice_round=<?= $round["codice"] ?>')">
<?= __("Invia comunicazione di avvio seduta") ?>
</button>
<div class="comandiSeduta <?= !$seduta_aperta ? "collapse" : "" ?>">
<? if (!empty($gara->getCriteriTecnici())) { ?>
<button id="status-tecnici-button" type="button" class="btn btn-sm px-5 my-1 btn-<?= (!$punteggi_tecnici) ? "info" : "warning" ?>"
onClick="confirmBeforeSubmit('<?= $record["codice"] ?>','/backend/gare/open/togglePunteggi.php','tecnici=1&codice_round=<?= $round["codice"] ?>')">
<?= !$punteggi_tecnici ? __("Esponi punteggi tecnici") : __("Nascondi punteggi tecnici") ?>
</button>
<? } ?>
<? if (!empty($gara->getCriteriEconomici())) { ?>
<button id="status-economici-button" type="button" class="btn btn-sm px-5 my-1 btn-<?= (!$punteggi_economici) ? "info" : "warning" ?>"
onClick="confirmBeforeSubmit('<?= $record["codice"] ?>','/backend/gare/open/togglePunteggi.php','economici=1&codice_round=<?= $round["codice"] ?>')">
<?= !$punteggi_economici ? __("Esponi punteggi economici") : __("Nascondi punteggi economici") ?>
</button>
<? } ?>
</div>
</div>
<script>
if (window.File && window.FileReader && window.FileList && window.Blob) {
function handleFileSelect(evt) {
var file = evt.target.files[0];
var r = new FileReader();
r.onload = function(e) {
var contents = e.target.result;
$("#private").val(contents);
$(".private").val(contents);
$(".showKeySelect").slideUp();
$(".showKeyOk").slideDown();
}
r.readAsBinaryString(file);
}
document.getElementById("chiave").addEventListener('change', handleFileSelect, false);
} else {
$("#form-chiave-privata").html('<?= __('errore generico') ?>');
}
</script>
<?
$tipiBuste = gara::tipologieBusta();
$buste = array();
foreach($tipiBuste AS $id_busta => $busta) {
$richieste = $gara->getRichieste($id_busta);
if (!empty($richieste)) { $buste[$id_busta] = $busta; }
}
?>
<div class="card card-body m-0 p-0">
<div class="table-responsive m-0">
<table class="table m-0 table-striped table-hover" id="tab-data" width="100%">
<thead>
<tr>
<th width="10">#</th>
<th width="10"><?= __("Codice Fiscale") ?></th>
<th><?= __("Ragione Sociale") ?></th>
<?
foreach ($buste AS $busta) {
echo "<th width='15%' class='text-center'>" . __($busta["titolo"]) . "</th>";
}
?>
</tr>
</thead>
<tbody>
</tbody>
<tfoot>
<tr>
<td colspan="<?= 3 + count($buste) ?>" class="text-right">
<button class="btn btn-sm" onclick="tabofferte.draw('page')"><span class="fa fa-sync"></span> <?= __("Aggiorna stato apertura") ?></button>
</td>
</tr>
</tfoot>
</table>
</div>
</div>
<script>
var tabofferte = $("#tab-data").DataTable({
"processing": true,
"serverSide": true,
"sort": false,
"info": false,
"filter": false,
"paginate": false,
"language": {
"url": "/dictionary/datatables/<?= $_SESSION["language"] ?>.lang"
},
"ajax": "table.php?codice=<?= $record["codice"] ?>&codice_round=<?= $round["codice"] ?>&codice_lotto=<?= $lotto["codice"] ?>"
});
</script>
<?
} else {
alertManager::printWarningBox(__("Nessun risultato"));
}
}
include_once ($beRoot."/layout/bottom.php");
} else {
echo '<meta http-equiv="refresh" content="0;URL=/index.php">';
die();
}
} else {
echo '<meta http-equiv="refresh" content="0;URL=/index.php">';
die();
}
?>