<?php /* * PHP Frontend for pocsag monitor * * Copyright (C) 2004-2005 * Manuel Weiser (manuelw@fire-devils.org) * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ $result = mysqli_query($dbconn, "SELECT u_meldung, u_text, u_farbe, DATE_FORMAT(u_lastcheck, '%Y%m%d%H%i%s') AS u_lastcheck, DATE_FORMAT(u_lastchange, '%Y%m%d%H%i%s') AS u_lastchange FROM unwetter WHERE id = '1'") or die (mysqli_error($dbconn)); $row = mysqli_fetch_array($result); if( ($timestampnow - $row["u_lastcheck"]) > ($uw_checktime * 100) && $_GET["nooutput"] == 1 ) { // if( $lines = file('http://www.dwd.de/de/WundK/Warnungen/zeige.php?ID='.$uw_landkreis.'#O') ) if( $lines = file('https://www.dwd.de/DE/wetter/warnungen/warnWetter_node.html?ort=Leipzig') ) { // Durchgehen des Arrays und Anzeigen des HTML Source inkl. Zeilennummern if( is_array($lines) ) { foreach( $lines as $line_num => $line ) { if( $line_num == 34 && htmlspecialchars(substr($line, 75, 6)) ) { $unwetter_aktiv = 1; if( htmlspecialchars(substr($line, 75, 6)) == "D90202" ) { $unwetter_status = "Warnung vor extremem Unwetter"; $unwetter_farbe = "#D90202"; } if( htmlspecialchars(substr($line, 75, 6)) == "FF0000" ) { $unwetter_status = "Unwetterwarnung"; $unwetter_farbe = "#FF6B39"; } if( htmlspecialchars(substr($line, 75, 6)) == "FFB599" ) { $unwetter_status = "Vorwarnung zur Unwetterwarnung";$unwetter_farbe = "#FFB599"; } if( htmlspecialchars(substr($line, 75, 6)) == "FA9600" ) { $unwetter_status = "Warnung vor markantem Wetter"; $unwetter_farbe = "#FFD553"; } if( htmlspecialchars(substr($line, 75, 6)) == "FFFF00" ) { $unwetter_status = "Wetterwarnung"; $unwetter_farbe = "#F0F805"; } if( htmlspecialchars(substr($line, 75, 6)) == "6F6FFF" ) { $unwetter_status = "Seewetterwarnung"; $unwetter_farbe = "#6F6FFF"; } } if( $unwetter_aktiv == 1 && $line_num > 36 && $line_num < 56 ) { $unwetter_meldung .= $line; } // Zum Pr�fen der Ausgabe deaktivieren //echo "Line #<b>{$line_num}</b> : " . htmlspecialchars($line) . "<br>\n"; } // Text von HTML Tags reinigen $unwetter_meldung = htmlCode_message($unwetter_meldung); //$unwetter_meldung = clean_htmlCode($unwetter_meldung); //$unwetter_meldung = stripslashes($unwetter_meldung); //$unwetter_meldung = strip_tags($unwetter_meldung, '<br>'); //echo '<br>--------------<br>msg: '.$unwetter_meldung; } } else { $unwetter_status = 'keine Verbindung !!!'; $unwetter_farbe = '#FFFFFF'; $unwetter_meldung = 'Verbindung zu dwd.de nicht m�glich !'; } // Wenn noch kein Eintrag in DB existiert if( empty($row["u_lastcheck"]) ) { mysqli_query($dbconn, "INSERT INTO unwetter (id, u_meldung, u_text, u_farbe, u_lastchange) VALUES ('1', '$unwetter_status', '$unwetter_meldung', '$unwetter_farbe', '$timestampnow')") or die(mysqli_error($dbconn)); } // Wenn bereits Eintrag vorhanden und Checktime erreicht if( $unwetter_meldung == $row["u_text"] ) { mysqli_query($dbconn, "UPDATE unwetter SET u_lastcheck='$timestampnow' WHERE id = '1'") or die(mysqli_error($dbconn)); } else { mysqli_query($dbconn, "UPDATE unwetter SET u_meldung='$unwetter_status', u_text='$unwetter_meldung', u_farbe='$unwetter_farbe', u_lastcheck='$timestampnow', u_lastchange='$timestampnow' WHERE id = '1'") or die(mysqli_error($dbconn)); } } // Ausgabe f�r User erzeugen if( !empty($row["u_meldung"]) && $_GET["nooutput"] != '1' ) { $uw_show_link = '<a href="javascript:animatedcollapse.toggle(\'wetter\')"><font style="background-color:#FFFFFF;"> toggle </font></a>'; $uw_warntime = time_format(get_time($row["u_lastchange"])); $uw_text = $row["u_text"]; // Neu markieren wenn ungelesen if( $_SESSION["last_seen"] <= $row["u_lastchange"] ) $_SESSION["uw_isnew"] = 'neu'; eval ("\$unwetter_field .= \"".gettemplate($template_dir."body_unwetter")."\";"); } ?>