86 lines
2.9 KiB
PHP
86 lines
2.9 KiB
PHP
<?php #ajax/einsaetze.php
|
|
|
|
error_reporting(E_ALL);
|
|
ini_set("display_errors", 1);
|
|
|
|
require_once "../../db/conf.php";
|
|
|
|
$article = $_POST["article"] ?? "Empty";
|
|
|
|
$years = array();
|
|
$query = "select distinct year(Alarmierungszeit) y from `Einsätze` order by y desc";
|
|
if ($res = $mysqli->query($query)) {
|
|
while ($row = $res->fetch_assoc()) {
|
|
$years[] = $row["y"];
|
|
}
|
|
} else {
|
|
echo $mysqli->error."<br />".$query;
|
|
}
|
|
$year = $_POST["section"]["year"] ?? ($years[0] ?? date("Y"));
|
|
|
|
$quarters = array(1, 2, 3, 4);
|
|
$quarter = $quarters[0];
|
|
if (isset($_POST["section"]["quarter"])) {
|
|
$quarter = $_POST["section"]["quarter"];
|
|
} else {
|
|
$query = "select quarter(Alarmierungszeit) q from `Einsätze` order by Alarmierungszeit desc limit 1";
|
|
if ($res = $mysqli->query($query)) {
|
|
if (1==$res->num_rows) {
|
|
$quarter = $res->fetch_row()[0];
|
|
} else {
|
|
$quarter = ceil(date("n")/3);
|
|
}
|
|
} else {
|
|
echo $mysqli->error."<br />".$query;
|
|
}
|
|
}
|
|
|
|
$query = "select date_format(b.Alarmierungszeit, '%d.%m.%Y %H:%i') Alarmierungszeit, date_format(b.Einsatzende, '%d.%m.%Y %H:%i') Einsatzende, b.Adresse, b.Zusammenfassung, a.Name aname, k.Farbe from Einsätze b "
|
|
."left join Einsatzarten a on a.ID=b.Einsatzart "
|
|
."left join Einsatzkategorien k on k.ID=a.Einsatzkategorie "
|
|
."where year(Alarmierungszeit) = ? and quarter(Alarmierungszeit) = ? "
|
|
."order by b.Alarmierungszeit desc";
|
|
$deployments = array();
|
|
if ($stmt = $mysqli->prepare($query)) {
|
|
$stmt->bind_param("ii", $year, $quarter);
|
|
$stmt->execute();
|
|
$res = $stmt->get_result();
|
|
while ($row = $res->fetch_assoc()) {
|
|
$deployments[] = $row;
|
|
}
|
|
$stmt->close();
|
|
}
|
|
|
|
$id = preg_replace('/\s+/', '', $article."_".$year."-Q".$quarter);
|
|
|
|
?>
|
|
<footer>
|
|
<h1><?=$article;?></h1>
|
|
<?php if (count($years)>0) { ?>
|
|
<ul>
|
|
<select onchange="javascript:loadArticle('<?=basename(__FILE__);?>', '<?=$article;?>', {'year': this.options[this.selectedIndex].value, 'quarter': <?=$quarter;?>})">
|
|
<?php foreach ($years as $y) { ?>
|
|
<option<?=($year==$y ? " selected" : "");?>><?=$y;?></option>
|
|
<?php } ?>
|
|
</select>
|
|
<select onchange="javascript:loadArticle('<?=basename(__FILE__);?>', '<?=$article;?>', {'year': <?=$year;?>, 'quarter': this.options[this.selectedIndex].value})">
|
|
<?php foreach ($quarters as $q) { ?>
|
|
<option value="<?=$q;?>"<?=($quarter==$q ? " selected" : "");?>>Q<?=$q;?></option>
|
|
<?php } ?>
|
|
</select>
|
|
</ul>
|
|
<?php } ?>
|
|
</footer>
|
|
<section id="<?=$id;?>">
|
|
<ul class="listprops">
|
|
<?php foreach ($deployments as $dep) { ?>
|
|
<li style="border-color: <?=$dep["Farbe"];?>">
|
|
<?=$dep["Alarmierungszeit"];?><?=("00.00.0000 00:00"!=$dep["Einsatzende"] ? " bis ".$dep["Einsatzende"] : "");?>: <i><?=$dep["Adresse"];?></i><br /><b><?=($dep["Zusammenfassung"]!="" ? $dep["Zusammenfassung"] : " ");?></b>
|
|
<div class="tooltip">
|
|
<i><?=$dep["aname"];?></i>
|
|
</div>
|
|
</li>
|
|
<?php } ?>
|
|
</ul>
|
|
</section>
|