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.
 
 
 
 
 

184 righe
7.6 KiB

<?
$configPath = substr(__DIR__,0,strpos(__DIR__,"/public_html"))."/config.php";
include_once($configPath);
include_once ($beRoot."/layout/top.php");
if (!empty($_SESSION["utente"]) && $_SESSION["utente"]->permission($radice)) {
?>
<div class="container-fluid pt-5">
<div class="row">
<div class="col-12">
<p class="d-block display-4">
<?= Modulo::header($radice) ?>
</p>
</div>
</div>
</div>
<?
$postFilter = [];
if (isset($_POST["filter"])) {
$postFilter = $_POST["filter"];
$_SESSION["access-filter"] = $postFilter;
}
?>
<div id="modal-log" class="modal" tabindex="-1" role="dialog">
<div class="modal-dialog modal-lg" role="document">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">&times;</span>
</button>
</div>
<div class="modal-body"></div>
<div class="modal-footer">
<button class="btn btn-block" data-dismiss="modal">Close</button>
</div>
</div>
</div>
</div>
<div id="commands" class="mb-5">
<div class="commands container-fluid">
<div class="row">
<div class="col-12 text-right">
<button class="btn btn-warning" data-toggle="collapse" href="#filtri" aria-expanded="false" aria-controls="filtri""><span class="fa fa-filter"></span> Filter</button>
</div>
</div>
</div>
</div>
<div class="container-fluid collapse mb-3" id="filtri">
<div class="row">
<div class="col-12">
<div class="card">
<form action="index.php" target="_self" method="post" rel="validate">
<?if (empty($postFilter["tipo"])) { $postFilter["tipo"] = "accessi"; } ?>
<input type="hidden" name="filter[tipo]" id="tipo" value="<?= $postFilter["tipo"] ?>">
<div class="card-body">
<div class="row">
<div class="form-group col-sm-2">
<label>User:</label>
<input class="input form-control" id="filter-user" title="User" name="filter[user]" value="<?= (!empty($postFilter["user"])) ? $postFilter["user"] : "" ?>">
</div>
<?
if (empty($_SESSION["ente"])) {
?>
<div class="form-group col-sm-3">
<label>Ente:</label>
<select name="filter[codice_ente]" class="form-control" id="filter-codice_ente" title="<?= __('ente') ?>">
<option value="">All</option>
<option value="0">None</option>
<?
$sql = "SELECT codice, denominazione FROM b_enti WHERE attivo = 'S' AND dominio IS NOT NULL AND dominio <> '' ORDER BY denominazione";
$ris_filter = $pdo->go($sql);
if ($ris_filter->rowCount() > 0) {
?>
<? while ($option = $ris_filter->fetch(PDO::FETCH_ASSOC)) { ?>
<option value="<?= $option["codice"] ?>"><?= $option["denominazione"] ?></option>
<? } ?>
<?
}
?>
</select>
<?
if (!empty($postFilter["codice_ente"])) {
?>
<script>
$("#filter-codice_ente").val('<?= $postFilter["codice_ente"] ?>');
</script>
<?
}
?>
</div>
<?
}
?>
<div class="form-group col-sm-3">
<label>IP:</label>
<input class="input form-control" id="filter-ip" title="IP" name="filter[ip]" value="<?= (!empty($postFilter["ip"])) ? $postFilter["ip"] : "" ?>">
</div>
<div class="form-group col-sm-2">
<label>From:</label>
<input class="input form-control datetimepick" id="filter-from" title="From" name="filter[from]" rel="N;0;0;DT;filter-to;<" value="<?= (!empty($postFilter["from"])) ? $postFilter["from"] : "" ?>">
</div>
<div class="form-group col-sm-2">
<label>To:</label>
<input class="input form-control datetimepick" id="filter-to" title="To" name="filter[to]" rel="N;0;0;DT;filter-from;>" value="<?= (!empty($postFilter["to"])) ? $postFilter["to"] : "" ?>">
</div>
</div>
</div>
<div class="card-footer">
<div class="row">
<div class="col-6">
<button type="submit" onClick="$('#tipo').val('accessi');" class="btn btn-success form-control">
<span class="fa fa-check"></span> Login
</button>
</div>
<div class="col-6">
<button type="submit" onClick="$('#tipo').val('tentativi');" class="btn btn-danger form-control">
<span class="fa fa-times"></span> Attempts
</button>
</div>
</div>
</div>
</form>
</div>
</div>
</div>
</div>
<div class="container-fluid">
<div class="row">
<div class="col-12">
<div class="card">
<div class="card-header">
<h4 class="mb-0">
<?
switch($postFilter["tipo"]) {
case "tentativi": echo '<span class="fa fa-times"></span> Attempts'; break;
default: echo '<span class="fa fa-check"></span> Login'; break;
}
?>
</h4>
</div>
<div class="card-body">
<div class="table-responsive table-condensed">
<table class="table table-striped table-hover table-condensed" id="log" width="100%">
<thead>
<tr>
<th>User</th>
<? if (empty($_SESSION["ente"])) { ?><th><?= __("ente") ?></th><? } ?>
<th width="100">IP</th>
<th width="120">Timestamp</th>
</tr>
</thead>
<tbody>
</tbody>
</table>
</div>
<script>
$("#log").DataTable({
"ordering": false,
"searching": false,
"info": false,
"processing": true,
"serverSide": true,
"language": {
"url": "/dictionary/datatables/<?= $_SESSION["language"] ?>.lang"
},
"ajax": "table.php",
"lengthMenu": [[10, 25, 50, 100], [10, 25, 50, 100]]
});
</script>
</div>
<div class="card-footer">
<a href="export.php" class="btn btn-danger form-control" target="_blank"><span class="fa fa-cloud-download-alt"></span> Export</a>
</div>
</div>
</div>
</div>
</div>
<?
include_once ($beRoot."/layout/bottom.php");
} else {
echo '<meta http-equiv="refresh" content="0;URL=/index.php">';
die();
}
?>