Hallo erstmal zusammen,
ich bin seit 2 Jahren begeisterter User von IP-Symcon und habe immer „schweigend“ in diesem Forum mitgelesen und Dank euer aller Ideen und Anleitungen sehr viel umsetzen können.
Nun möchte ich dem Forum auch mal etwas „zurückgeben“ und habe das Abfallkalender-Script geändert für den Rems-Murr-Kreis.
Ich bin kein PHP-Guru, aber ich denke, der ein oder andere kann sicher etwas damit anfangen
Noch eine Anmerkung: die Auswahl, welche Abfuhrtermine angezeigt werden sollen, funktioniert leider nicht so, wie ich mir das vorstelle. Deswegen hole ich einfach alle Termine und mache dann die, die ich nicht benötige, im Objektbaum unsichtbar.
Für Verbesserungen oder Kritik bin ich immer offen…
<?
include("snoopy.class.php");
$snoopy = new Snoopy;
$snoopy->referer="http://www.awg-rems-murr.de/generator/abfallkalender.php5";
$submit_url = "http://www.awg-rems-murr.de/generator/abfallkalender.php5";
$submit_vars["kalender"] = "7"; // Gemeindekreis
$submit_vars["step1"] = ">> weiter "; // Weiter
$submit_vars["ortschaft"] = "25"; // 25=Sulzbach
$submit_vars["step2"] =">> weiter "; // Weiter
$starttime = time();
$endtime = strtotime("+1 week");
$submit_vars["a_tag"] = date("j",$starttime);
$submit_vars["a_monat"] = date("n",$starttime);
$submit_vars["a_jahr"] = date("Y",$starttime);
$submit_vars["e_tag"] = date("j",$endtime);
$submit_vars["e_monat"] = date("n",$endtime);
$submit_vars["e_jahr"] = date("Y",$endtime);
$submit_vars["alle_abfallfraktionen"] = "1";
$submit_vars["rest_2w"] = "1";
$submit_vars["rest_4w"] = "1";
$submit_vars["container_1w"] = "1";
$submit_vars["container_2w"] = "1";
$submit_vars["bio"] = "2";
$submit_vars["papier"] = "3";
$submit_vars["gelber_sack"] = "4";
$submit_vars["christbaeume"] = "7";
$submit_vars["gruengut"] = "8";
$submit_vars["auswahl"] = "Abfuhrtermine anzeigen";
//Daten holen
$snoopy->submit($submit_url,$submit_vars);
$buffer = $snoopy->results;
$buffer = stristr($buffer, "kalenderdatenBody");
$content=$buffer;
$pattern = "!<div class=\"kalendertag\">(.*)</div>!isU";
preg_match_all($pattern, $content, $result);
$result = $result[1];
$anzahl = count($result)-1;
$Bezeichnung = "";
for ($zaehler = 0; $zaehler <= $anzahl; $zaehler++)
{
//print_r($result[$zaehler]);
$buffer = stristr($buffer,$result[$zaehler]);
$buffer = stristr($buffer, "> ");
$Abfallart = str_replace(" ","",substr($buffer, 1, strpos($buffer, "<br />")-1));
$Abfallart = str_replace("</span>","§",$Abfallart);
$Abfallart = str_replace("ä","ä",$Abfallart);
$Abfallart = str_replace("Ä","Ä",$Abfallart);
$Abfallart = str_replace("ö","ö",$Abfallart);
$Abfallart = str_replace("Ö","Ö",$Abfallart);
$Abfallart = str_replace("ü","ü",$Abfallart);
$Abfallart = str_replace("Ü","Ü",$Abfallart);
$Abfallart = str_replace("ß","ß",$Abfallart);
$Bezeichnung = $Abfallart;
$Bezeichnung = strip_tags($Bezeichnung);
$Bezeichnung = str_replace("§","<br>",$Bezeichnung);
//echo $Bezeichnung;
$arr = explode("<br>",$Bezeichnung);
$Gesplittet = "";
for($i=0; $i<sizeof($arr); $i++)
{
$Gesplittet = $arr[$i];
If ($Gesplittet == "")
{
}
else
{
SetValueString (CreateVariableByName($IPS_SELF, strip_tags($Gesplittet), 3), $result[$zaehler]);
function CreateVariableByName($id, $name, $type)
{
global $IPS_SELF;
$name = str_replace("§","",$name);
$vid = @IPS_GetVariableIDByName($name, 24226 /*[.Abfallkalender]*/);
//IPS_DeleteVariable($vid);
if($vid===false) {
$vid = IPS_CreateVariable($type);
IPS_SetParent($vid, 24226 /*[.Abfallkalender]*/);
IPS_SetName($vid, $name);
IPS_SetInfo($vid, "This Variable was created by Script #$IPS_SELF");
IPS_SetVariableCustomProfile($vid, "~String");
}
return $vid;
}
function DateAdd($interval,$nummer,$date)
{
$date=$date+($interval*$nummer);
return date("d/m/Y",$date);
}
?>