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.
 
 
 
 
 

189 righe
7.4 KiB

<?
if (!isset($beRoot)) {
$configPath = substr(__DIR__,0,strpos(__DIR__,"/public_html"))."/config.php";
include_once($configPath);
if (isset($_GET["month"]) && isset($_GET["year"])) {
$month = (int) $_GET["month"];
$year = (int) $_GET["year"];
}
} else {
$month = date("m");
$year = date("Y");
}
if (!empty($month) && !empty($year) && isset($_SESSION["utente"])) {
$modal = 0;
if (!empty($_GET["modal"])) { $modal = 1; }
$prevMonth = $month - 1;
$nextMonth = $month + 1;
$nextYear = $prevYear = $year;
if ($prevMonth == 0) {
$prevMonth = 12;
$prevYear = $year - 1;
}
if ($nextMonth == 13) {
$nextMonth = 1;
$nextYear = $year + 1;
}
$month = str_pad($month,2,"0",STR_PAD_LEFT);
$dateFrom = "{$year}-{$month}-01";
$dateTo = date("Y-m-t",strtotime($dateFrom));
$modulo = $_GET["modulo"] ?? null;
$codiceElementoScadenze = $_GET["codice_elemento"] ?? null;
$scadenze = $_SESSION["utente"]->getScadenze($dateFrom,$dateTo,$modulo,$codiceElementoScadenze);
$firstDay = (int)date("w",strtotime($dateFrom));
$lastDay = (int)date("t",strtotime($dateFrom));
switch($month) {
case "01": $literalMonth = "Gennaio"; break;
case "02": $literalMonth = "Febbraio"; break;
case "03": $literalMonth = "Marzo"; break;
case "04": $literalMonth = "Aprile"; break;
case "05": $literalMonth = "Maggio"; break;
case "06": $literalMonth = "Giugno"; break;
case "07": $literalMonth = "Luglio"; break;
case "08": $literalMonth = "Agosto"; break;
case "09": $literalMonth = "Settembre"; break;
case "10": $literalMonth = "Ottobre"; break;
case "11": $literalMonth = "Novembre"; break;
case "12": $literalMonth = "Dicembre"; break;
}
$url = "/backend/listAttivita.php?dateFrom={$dateFrom}&dateTo={$dateTo}";
$elementQS = "";
if (!empty($modulo)) {
$url .= "&modulo={$modulo}";
$elementQS .= "&modulo={$modulo}";
}
if (!empty($codiceElementoScadenze)) {
$url .= "&codice_elemento={$codiceElementoScadenze}";
$elementQS .= "&codice_elemento={$codiceElementoScadenze}";
}
$click = false;
if (empty($modal)) {
$click = "$('#attivitaDashboard').html('<div class=\'text-center\'><span class=\'fa fa-spinner fa-spin fa-4x\'></span></div>').load('{$url}')";
} else {
$click = "showModalWithURL('{$url}');";
}
?>
<div class="d-flex justify-content-between">
<span class="h2">
<span class="fa fa-calendar"></span>
<? if (!empty($click)) { ?>
<a href="#" onClick="<?= $click ?>" title="<?= __("Attività del mese") ?>">
<? } ?>
<?= __($literalMonth) ?> <?= $year ?>
<? if (!empty($click)) { ?>
</a>
<? } ?>
</span>
<span class="pull-right">
<?
if ($_SESSION["utente"]->permission("task")) {
?>
<button class="btn btn-sm" onClick="showModalWithURL('/backend/task/edit.php')">
<span class="fa fa-calendar-plus text-success"></span> <?= __("Aggiungi promemoria") ?>
</button>
<?
}
?>
<a href="#" onClick="$(this).parent().parent().parent().html('<div class=\'text-center\'><span class=\'fa fa-spinner fa-spin fa-4x\'></span></div>').load('/backend/calendar.php?modal=<?= $modal ?>&month=<?= $prevMonth ?>&year=<?= $prevYear ?><?= $elementQS ?>')">
<span class="fa fa-chevron-left"></span>
</a>
<a href="#" onClick="$(this).parent().parent().parent().html('<div class=\'text-center\'><span class=\'fa fa-spinner fa-spin fa-4x\'></span></div>').load('/backend/calendar.php?modal=<?= $modal ?>&month=<?= date("m") ?>&year=<?= date("Y") ?><?= $elementQS ?>')">
<span class="fa fa-calendar-alt"></span>
</a>
<a href="#" onClick="$(this).parent().parent().parent().html('<div class=\'text-center\'><span class=\'fa fa-spinner fa-spin fa-4x\'></span></div>').load('/backend/calendar.php?modal=<?= $modal ?>&month=<?= $nextMonth ?>&year=<?= $nextYear ?><?= $elementQS ?>')">
<span class="fa fa-chevron-right"></span>
</a>
</span>
</div>
<table class="my-2 table table-striped table-bordered table-hover">
<thead>
<tr>
<th style="width:14%" class="text-center"><?= __("Domenica") ?></th>
<th style="width:14%" class="text-center"><?= __("Lunedì") ?></th>
<th style="width:14%" class="text-center"><?= __("Martedì") ?></th>
<th style="width:14%" class="text-center"><?= __("Mercoledì") ?></th>
<th style="width:14%" class="text-center"><?= __("Giovedì") ?></th>
<th style="width:14%" class="text-center"><?= __("Venerdì") ?></th>
<th style="width:14%" class="text-center"><?= __("Sabato") ?></th>
</tr>
</thead>
<tbody>
<?
$day = 1;
$startEcho = false;
$monthEnded = false;
for($w=0;$w<7;$w++) {
?>
<tr>
<?
for($d=0;$d<7;$d++) {
if (!$startEcho && !$monthEnded) {
if ($d==$firstDay) { $startEcho = true; }
}
if ($day > $lastDay) {
$monthEnded = true;
$startEcho = false;
}
$click = false;
ob_start();
if ($startEcho) {
echo $day;
$date = $year."-".$month."-".str_pad($day,2,"0",STR_PAD_LEFT);
if (!empty($scadenze[$date])) {
$url = "/backend/listAttivita.php?date={$date}";
if (empty($modal)) {
$click = "$('#attivitaDashboard').html('<div class=\'text-center\'><span class=\'fa fa-spinner fa-spin fa-4x\'></span></div>').load('{$url}')";
} else {
$click = "showModalWithURL('{$url}');";
}
$badges = [];
foreach($scadenze[$date] AS $scadenza) {
$index = $scadenza["icon"] . "_" . $scadenza["bgClass"];
if (!isset($badges[$index])) { $badges[$index] = 0; }
$badges[$index]++;
}
?>
<div class="d-flex float-right">
<?
$badgeTotal = 0;
foreach($badges AS $index => $badgeCount) {
$index = explode("_",$index);
$icon = $index[0];
$class = $index[1];
$badgeTotal += $badgeCount;
?>
<small class="p-1 bg-<?= $class ?>"><span class="<?= $icon ?>"></span></small>
<?
}
?>
<small class="p-1 bg-white text-dark"><?= $badgeTotal ?></small>
</div>
<?
}
$day++;
}
$td = ob_get_clean();
?>
<td <? if (!empty($click)) { ?>class="table-active" style="cursor:pointer" onClick="<?= $click ?>"<? } ?>>
<?
echo $td;
?>
</td>
<?
}
?>
</tr>
<?
if ($monthEnded) { break; }
}
?>
</tbody>
</table>
<?
} else {
header('HTTP/1.0 403 Forbidden');
die();
}
?>