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
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(); |
|
} |
|
|
|
?>
|