Abgleich mit Live-Daten
This commit is contained in:
+51
-51
@@ -1,52 +1,52 @@
|
||||
<?php
|
||||
|
||||
require_once("./zapcallib.php");
|
||||
include './../inc/config.inc.php';
|
||||
|
||||
$startdate= date('Y-m-d',(strtotime ( '-180 days' ) ));
|
||||
// SQL-Abfrage, um Urlaubstermine abzurufen
|
||||
$sql = 'SELECT DATE_ADD(start, INTERVAL 1 DAY) AS stadate , DATE_ADD(ende, INTERVAL 1 DAY) AS enddate FROM urlaub WHERE start >= "' . $startdate . '"';
|
||||
$sql = 'SELECT start AS stadate , DATE_ADD(ende, INTERVAL 1 DAY) AS enddate FROM urlaub WHERE start >= "' . $startdate . '"';
|
||||
#echo $sql;
|
||||
$result = mysqli_query($con, $sql);
|
||||
|
||||
// create the ical object
|
||||
$icalobj = new ZCiCal();
|
||||
|
||||
$title = "Urlaub";
|
||||
|
||||
// Iteriere durch die Ergebnisse und füge Events zur iCal-Datei hinzu
|
||||
while ($row = mysqli_fetch_assoc($result)) {
|
||||
// create the event within the ical object
|
||||
$eventobj = new ZCiCalNode("VEVENT", $icalobj->curnode);
|
||||
|
||||
// add title
|
||||
$eventobj->addNode(new ZCiCalDataNode("SUMMARY:" . $title));
|
||||
|
||||
// add start date
|
||||
$eventobj->addNode(new ZCiCalDataNode("DTSTART:" . ZCiCal::fromSqlDateTime($row["stadate"])));
|
||||
|
||||
// add end date
|
||||
$eventobj->addNode(new ZCiCalDataNode("DTEND:" . ZCiCal::fromSqlDateTime($row["enddate"])));
|
||||
|
||||
}
|
||||
|
||||
// iCal-Datei ausgeben
|
||||
file_put_contents("kalender.ics", $icalobj->export());
|
||||
file_put_contents("kalender.ical", $icalobj->export());
|
||||
echo "Aktualisierung angestossen. Bitte Kalender pruefen.<br>Wenn in dieser Liste der Eintrag steht, dann sind Anfragen und Telefonanlage vorbereitet!<br><br>";
|
||||
#echo file_get_contents('./kalender.ical', true);
|
||||
$handle = fopen("./kalender.ical", "r");
|
||||
if ($handle) {
|
||||
while (($line = fgets($handle)) !== false) {
|
||||
// process the line read.
|
||||
echo $line . "<br>";
|
||||
}
|
||||
|
||||
fclose($handle);
|
||||
}
|
||||
echo"<br>Der letzte oder vorherige Eintrag bei DTSTART und DTEND sollte das gewuenschte Urlaubsdatum plus einen Tag haben.<br>
|
||||
20240330 steht fuer den 30.03.2024.<br>
|
||||
";
|
||||
|
||||
<?php
|
||||
|
||||
require_once("./zapcallib.php");
|
||||
include './../inc/config.inc.php';
|
||||
|
||||
$startdate= date('Y-m-d',(strtotime ( '-180 days' ) ));
|
||||
// SQL-Abfrage, um Urlaubstermine abzurufen
|
||||
$sql = 'SELECT DATE_ADD(start, INTERVAL 1 DAY) AS stadate , DATE_ADD(ende, INTERVAL 1 DAY) AS enddate FROM urlaub WHERE start >= "' . $startdate . '"';
|
||||
$sql = 'SELECT start AS stadate , DATE_ADD(ende, INTERVAL 1 DAY) AS enddate FROM urlaub WHERE start >= "' . $startdate . '"';
|
||||
#echo $sql;
|
||||
$result = mysqli_query($con, $sql);
|
||||
|
||||
// create the ical object
|
||||
$icalobj = new ZCiCal();
|
||||
|
||||
$title = "Urlaub";
|
||||
|
||||
// Iteriere durch die Ergebnisse und füge Events zur iCal-Datei hinzu
|
||||
while ($row = mysqli_fetch_assoc($result)) {
|
||||
// create the event within the ical object
|
||||
$eventobj = new ZCiCalNode("VEVENT", $icalobj->curnode);
|
||||
|
||||
// add title
|
||||
$eventobj->addNode(new ZCiCalDataNode("SUMMARY:" . $title));
|
||||
|
||||
// add start date
|
||||
$eventobj->addNode(new ZCiCalDataNode("DTSTART:" . ZCiCal::fromSqlDateTime($row["stadate"])));
|
||||
|
||||
// add end date
|
||||
$eventobj->addNode(new ZCiCalDataNode("DTEND:" . ZCiCal::fromSqlDateTime($row["enddate"])));
|
||||
|
||||
}
|
||||
|
||||
// iCal-Datei ausgeben
|
||||
file_put_contents("kalender.ics", $icalobj->export());
|
||||
file_put_contents("kalender.ical", $icalobj->export());
|
||||
echo "Aktualisierung angestossen. Bitte Kalender pruefen.<br>Wenn in dieser Liste der Eintrag steht, dann sind Anfragen und Telefonanlage vorbereitet!<br><br>";
|
||||
#echo file_get_contents('./kalender.ical', true);
|
||||
$handle = fopen("./kalender.ical", "r");
|
||||
if ($handle) {
|
||||
while (($line = fgets($handle)) !== false) {
|
||||
// process the line read.
|
||||
echo $line . "<br>";
|
||||
}
|
||||
|
||||
fclose($handle);
|
||||
}
|
||||
echo"<br>Der letzte oder vorherige Eintrag bei DTSTART und DTEND sollte das gewuenschte Urlaubsdatum plus einen Tag haben.<br>
|
||||
20240330 steht fuer den 30.03.2024.<br>
|
||||
";
|
||||
|
||||
?>
|
||||
Reference in New Issue
Block a user