<?php /* # Fuer debugging error_reporting(E_ALL); ini_set('display_errors', 1); #echo __LINE__."<br>"; */ require("config/datenbankanbindung.php"); // fügt die Datenbankanbindung ein: Sys:\php\includes\kurs\datenbankanbindung.php require_once("func_rollenrechte.php"); $user_admin=$_COOKIE["user_admin"]; $timezone = 'Europe/Berlin'; ini_set('date.timezone',$timezone); if(isset($_GET['mon'])){ $mon = $_GET['mon']; }else{ $mon = ""; } if(isset($_GET['jahr'])){ $jahr = $_GET['jahr']; }else{ $jahr = ""; } if(isset($_GET['tag'])){ $tag = $_GET['tag']; }else{ $tag = ""; } if(isset($_GET['typ'])){ $typ = $_GET['typ']; }else{ $typ = ""; } if(isset($_GET['lid'])){ $lid = $_GET['lid']; }else{ $lid = ""; } // Rechteüberprüfung dbconnect(); if ($user_admin == ""){ require("index.php"); exit;} //Wenn man nicht angemeldet ist, darf man nicht auf die Seite if(!rore($user_admin,'a_outlook','RE')){require("lib/rechte.php");exit;} // Rechteüberprüfung ende ################# ## TYP=1 Einzelexport ################# if ($typ == 1){ $datum = "$jahr-$mon-$tag"; $Filename = "LG-Online.vcs"; header("Content-Type: text/x-vCalendar"); header("Content-Disposition: inline; filename=$Filename"); $db = dbconnect(); $result = $db->query("SELECT textstelle, ueberschrift, botschaft, textwort, inhalt, zusammenfassung, kontext, datum, DATE_Format(datum, '%d') tag, DATE_Format(datum, '%m') monat, DATE_Format(datum, '%Y') jahr, DATE_Format(datum, '%Y-%m-%d')AS datum_berechnung FROM quelle WHERE lid=$lid"); $row = $result->fetch_array(); $date_nlg = mktime(0, 0, 0, 12, 1, 2007); // Datum ab dem neue LGs gelten $date_nlg_format = date("Y-m-d", $date_nlg); // ISO-8601 Format wie in der Datenbank: Formatierung für Vergleiche erforderlich $switch_date = strtotime ($date_nlg_format); //Umrechnung des Fristgrenztages in eine Zahl $lg_datum = strtotime ($row['datum_berechnung']); // Umrechnung des Enddatums in eine Zahl $result2 = $db->query("SELECT notiz FROM notizen WHERE lid = '$lid' AND user = '$user_admin' "); $row2 = $result2->fetch_array(); ################################## ## Aufbau der Lieder ################################## $query = "SELECT nr, titel FROM lieder_quelle, lieder WHERE art='el' AND lid=$lid AND lieder_quelle.gbid = lieder.gbid ORDER BY lieder.gbid"; $result4 = $db->query( $query) or die ("Cannot execute query"); $zaehler = 1; $el =""; while ($row4 = $result4->fetch_array()){ if($zaehler != 1){ $el .= "; $row4[nr] - $row4[titel]"; }else{ $el = "Eingangslied: $row4[nr] - $row4[titel]"; $zaehler = $zaehler+1; } } $query = "SELECT nr, titel FROM lieder_quelle, lieder WHERE art='al' AND lid=$lid AND lieder_quelle.gbid = lieder.gbid ORDER BY lieder.gbid"; $result4 = $db->query( $query) or die ("Cannot execute query AL"); $zaehler = 1; $al = ""; while ($row4 = $result4->fetch_array()){ if($zaehler != 1){ $al .= "; $row4[nr] - $row4[titel]"; }else{ $al = "Abendmahlslied: $row4[nr] - $row4[titel]"; $zaehler = $zaehler+1; } } $query = "SELECT nr, titel FROM lieder_quelle, lieder WHERE art='wl' AND lid=$lid AND lieder_quelle.gbid = lieder.gbid ORDER BY lieder.gbid"; $result4 = $db->query( $query) or die ("Cannot execute query WL"); $zaehler = 1; $wl = ""; while ($row4 = $result4->fetch_array()){ if($zaehler != 1){ $wl .= "; $row4[nr] - $row4[titel]"; }else{ $wl = "Weitere Lieder: $row4[nr] - $row4[titel]"; $zaehler = $zaehler+1; } } $query = "SELECT nr, titel FROM lieder_quelle, lieder WHERE art='bl' AND lid=$lid AND lieder_quelle.gbid = lieder.gbid ORDER BY lieder.gbid"; $result5 = $db->query( $query) or die ("Cannot execute query BL"); $zaehler = 1; $bl =""; while ($row5 = $result5->fetch_array()){ if($zaehler != 1){ $bl .= "; $row5[nr] - $row5[titel]"; }else{ $bl = "Bu=DFlied: $row5[nr] - $row5[titel]"; $zaehler = $zaehler+1; } } if ($el != ""){ $el .= "=0D=0A"; } if ($al != ""){ $al .= "=0D=0A"; } if ($wl != ""){ $wl .= "=0D=0A"; } if ($bl != ""){ $bl .= "=0D=0A"; } if ($el != "" OR $al != "" OR $wl != "" OR $bl != ""){ $lieder ="$el$bl$al$wl=0D=0A"; } ################################## ## Aufbau der Lieder ENDE ################################## $textwort = strip_tags($row['textwort'],'<br>,<li>,<p>,<ul>'); $text = strip_tags($row['inhalt'],'<br>,<li>,<p>,<ul>'); $ueberschrift = strip_tags($row['ueberschrift'],'<br>,<li>,<p>,<ul>'); $notiz = strip_tags($row2['notiz'],'<br>,<li>,<p>,<ul>'); # =0D=0A --> Zeilenumbrüche im VCS if ($lg_datum >= $switch_date){ $botschaft = strip_tags($row['botschaft'],'<br>,<li>,<p>,<ul>'); $zusammenfassung = strip_tags($row['zusammenfassung'],'<br>,<li>,<p>,<ul>'); $kontext = strip_tags($row['kontext'],'<br>,<li>,<p>,<ul>'); } $lieder = str_replace (array("<li> ", "<li>", "</li></ul><p>", "</li> ", "</li>", "<ul> ", "<ul>", "</ul>", "<p>", "</p>", "<br style=\"\" />", "·", " ", "<", ">", """, "„", "“", "‚", "‘", "«", "»", "<br /> ", "<br />", "•", "ä", "Ä", "ü", "Ü", "ö", "Ö", "ß", chr(9), "'" ) , array("- ", "- ", "=0D=0A=0D=0A", "=0D=0A", "=0D=0A", "=0D=0A", "=0D=0A", "", "", "", "", chr(183), " ", chr(60), chr(62), chr(34), chr(132), chr(148), "'", "'", chr(174), chr(175), "=0D=0A", "=0D=0A", chr(149), "=E4", "=C4", "=FC", "=DC", "=F6", "=D6", "=DF", "", "'" ) , $lieder ); $lieder = trim(str_replace(array("\n", "\r") , array("","") , $lieder )); $textstelle = str_replace (array("<li> ", "<li>", "</li></ul><p>", "</li> ", "</li>", "<ul> ", "<ul>", "</ul>", "<p>", "</p>", "<br style=\"\" />", "·", " ", "<", ">", """, "„", "“", "‚", "‘", "«", "»", "<br /> ", "<br />", "•", "ä", "Ä", "ü", "Ü", "ö", "Ö", "ß", chr(9), "'" ) , array("- ", "- ", "=0D=0A=0D=0A", "=0D=0A", "=0D=0A", "=0D=0A", "=0D=0A", "", "", "", "", chr(183), " ", chr(60), chr(62), chr(34), chr(132), chr(148), "'", "'", chr(174), chr(175), "=0D=0A", "=0D=0A", chr(149), "=E4", "=C4", "=FC", "=DC", "=F6", "=D6", "=DF", "", "'" ) , $row['textstelle'] ); $textstelle = trim(str_replace(array("\n", "\r") , array("","") , $textstelle )); $textwort = str_replace (array("<li> ", "<li>", "</li></ul><p>", "</li> ", "</li>", "<ul> ", "<ul>", "</ul>", "<p>", "</p>", "<br style=\"\" />", "·", " ", "<", ">", """, "„", "“", "‚", "‘", "«", "»", "<br /> ", "<br />", "•", "ä", "Ä", "ü", "Ü", "ö", "Ö", "ß", chr(9), "'" ) , array("- ", "- ", "=0D=0A=0D=0A", "=0D=0A", "=0D=0A", "=0D=0A", "=0D=0A", "", "", "", "", chr(183), " ", chr(60), chr(62), chr(34), chr(132), chr(148), "'", "'", chr(174), chr(175), "=0D=0A", "=0D=0A", chr(149), "=E4", "=C4", "=FC", "=DC", "=F6", "=D6", "=DF", "", "'" ) , $textwort ); $textwort = trim(str_replace(array("\n", "\r") , array("","") , $textwort )); $text = str_replace (array("<li> ", "<li>", "</li></ul><p>", "</li> ", "</li>", "<ul> ", "<ul>", "</ul>", "<p>", "</p>", "<br style=\"\" />", "·", " ", "<", ">", """, "„", "“", "‚", "‘", "«", "»", "<br /> ", "<br />", "•", "ä", "Ä", "ü", "Ü", "ö", "Ö", "ß", chr(9), "'" ) , array("- ", "- ", "=0D=0A=0D=0A", "=0D=0A", "=0D=0A", "=0D=0A", "=0D=0A", "", "", "", "", chr(183), " ", chr(60), chr(62), chr(34), chr(132), chr(148), "'", "'", chr(174), chr(175), "=0D=0A", "=0D=0A", chr(149), "=E4", "=C4", "=FC", "=DC", "=F6", "=D6", "=DF", "", "'" ) , $text ); $text = trim(str_replace(array("\n", "\r") , array("","") , $text )); $text_header="=0D=0A=0D=0A=0D=0A"; $ueberschrift = str_replace (array("<li> ", "<li>", "</li></ul><p>", "</li> ", "</li>", "<ul> ", "<ul>", "</ul>", "<p>", "</p>", "<br style=\"\" />", "·", " ", "<", ">", """, "„", "“", "‚", "‘", "«", "»", "<br /> ", "<br />", "•", "ä", "Ä", "ü", "Ü", "ö", "Ö", "ß", chr(9), "'" ) , array("- ", "- ", "=0D=0A=0D=0A", "=0D=0A", "=0D=0A", "=0D=0A", "=0D=0A", "", "", "", "", chr(183), " ", chr(60), chr(62), chr(34), chr(132), chr(148), "'", "'", chr(174), chr(175), "=0D=0A", "=0D=0A", chr(149), "=E4", "=C4", "=FC", "=DC", "=F6", "=D6", "=DF", "", "'" ) , $ueberschrift ); $ueberschrift = trim(str_replace(array("\n", "\r") , array("","") , $ueberschrift )); $notiz = str_replace (array("<li> ", "<li>", "</li></ul><p>", "</li> ", "</li>", "<ul> ", "<ul>", "</ul>", "<p>", "</p>", "<br style=\"\" />", "·", " ", "<", ">", """, "„", "“", "‚", "‘", "«", "»", "<br /> ", "<br />", "•", "ä", "Ä", "ü", "Ü", "ö", "Ö", "ß", chr(9), "'" ) , array("- ", "- ", "=0D=0A=0D=0A", "=0D=0A", "=0D=0A", "=0D=0A", "=0D=0A", "", "", "", "", chr(183), " ", chr(60), chr(62), chr(34), chr(132), chr(148), "'", "'", chr(174), chr(175), "=0D=0A", "=0D=0A", chr(149), "=E4", "=C4", "=FC", "=DC", "=F6", "=D6", "=DF", "", "'" ) , $notiz ); $notiz = trim(str_replace(array("\n", "\r") , array("","") , $notiz )); if ($notiz == ""){ $notiz_header = ""; }else{ $notiz_header = "=0D=0A=0D=0A=0D=0ANotizen:=0D=0A"; } if ($lg_datum >= $switch_date){ #Neue LGs? $text_header="=0D=0A=0D=0A=0D=0AAusf=FChrungen:=0D=0A"; ## Soll nur angezeigt werden in den neuen LGs $botschaft = str_replace (array("<li> ", "<li>", "</li></ul><p>", "</li> ", "</li>", "<ul> ", "<ul>", "</ul>", "<p>", "</p>", "<br style=\"\" />", "·", " ", "<", ">", """, "„", "“", "‚", "‘", "«", "»", "<br /> ", "<br />", "•", "ä", "Ä", "ü", "Ü", "ö", "Ö", "ß", chr(9), "'" ) , array("- ", "- ", "=0D=0A=0D=0A", "=0D=0A", "=0D=0A", "=0D=0A", "=0D=0A", "", "", "", "", chr(183), " ", chr(60), chr(62), chr(34), chr(132), chr(148), "'", "'", chr(174), chr(175), "=0D=0A", "=0D=0A", chr(149), "=E4", "=C4", "=FC", "=DC", "=F6", "=D6", "=DF", "", "'" ) , $botschaft ); $botschaft = trim(str_replace(array("\n", "\r") , array("","") , $botschaft )); $botschaft_header="=0D=0A=0D=0A=0D=0ABotschaft:=0D=0A"; $zusammenfassung = str_replace (array("<li> ", "<li>", "</li></ul><p>", "</li> ", "</li>", "<ul> ", "<ul>", "</ul>", "<p>", "</p>", "<br style=\"\" />", "·", " ", "<", ">", """, "„", "“", "‚", "‘", "«", "»", "<br /> ", "<br />", "•", "ä", "Ä", "ü", "Ü", "ö", "Ö", "ß", chr(9), "'" ) , array("- ", "- ", "=0D=0A=0D=0A", "=0D=0A", "=0D=0A", "=0D=0A", "=0D=0A", "", "", "", "", chr(183), " ", chr(60), chr(62), chr(34), chr(132), chr(148), "'", "'", chr(174), chr(175), "=0D=0A", "=0D=0A", chr(149), "=E4", "=C4", "=FC", "=DC", "=F6", "=D6", "=DF", "", "'" ) , $zusammenfassung ); $zusammenfassung = trim(str_replace(array("\n", "\r") , array("","") , $zusammenfassung )); # Das Tag <ul> wird durch Zeilenumbruch ersetzt (=0D=0A). Gerade bei der Zusammenfassung # kommt es vor, dass mit <ul> begonnen wird. Dann soll nicht gleich eine Leerzeile # nach der Überschrift erscheinen if(ereg("^=0D=0A", $zusammenfassung)){ $zusammenfassung_header="=0D=0A=0D=0A=0D=0AZusammenfassung:"; }else{ $zusammenfassung_header="=0D=0A=0D=0A=0D=0AZusammenfassung:=0D=0A"; } $kontext = str_replace (array("<li> ", "<li>", "</li></ul><p>", "</li> ", "</li>", "<ul> ", "<ul>", "</ul>", "<p>", "</p>", "<br style=\"\" />", "·", " ", "<", ">", """, "„", "“", "‚", "‘", "«", "»", "<br /> ", "<br />", "•", "ä", "Ä", "ü", "Ü", "ö", "Ö", "ß", chr(9), "'" ) , array("- ", "- ", "=0D=0A=0D=0A", "=0D=0A", "=0D=0A", "=0D=0A", "=0D=0A", "", "", "", "", chr(183), " ", chr(60), chr(62), chr(34), chr(132), chr(148), "'", "'", chr(174), chr(175), "=0D=0A", "=0D=0A", chr(149), "=E4", "=C4", "=FC", "=DC", "=F6", "=D6", "=DF", "", "'" ) , $kontext ); $kontext = trim(str_replace(array("\n", "\r") , array("","") , $kontext )); $kontext_header="=0D=0A=0D=0AKontext:=0D=0A"; } #$notiz = str_replace("\n", "=0D=0A", $notiz); #$notiz = str_replace("\r", "=0D=0A", $notiz); $wochentag = date("l", mktime(0,0,0,$row['monat'],$row['tag'],$row['jahr'])); $result_gd = $db->query("SELECT wgd FROM profil WHERE user = '$user_admin'"); $row_gd = $result_gd->fetch_array(); if($wochentag == 'Wednesday' AND $row_gd['wgd'] != '0'){ $datum = date("Ymd", mktime(0,0,0,$row['monat'],$row['tag']+$row_gd['wgd'],$row['jahr'])); // + relativer Tag zum Mittwoch Do--> +1 }else{ $datum = date("Ymd", mktime(0,0,0,$row['monat'],$row['tag'],$row['jahr'])); // Diese Zeile ist für Sonntag, da braucht man den Tag ja nicht verschieben, nur Werktags } # Pear Package date: Wird hier zur Überprüfung der Sommerzeit verwendet require_once("Date/Date.php"); $date=new Date("$row[jahr]-$row[monat]-$row[tag] 06:00:00"); ## Uhrzeit egal. Zu den Zeiten wo GDs stattfinden ist die Zeitumstellung schon rum // UTC hat keine Sommerzeit $date->setTZbyID("Europe/Berlin"); if (true==$date->inDaylightTime()) { $faktor = "0"; }else{ $faktor = "1"; } switch($wochentag) { case 'Sunday': $stunde_beg = 7+$faktor; # Sommerzeitbedingt $stunde_end = 8+$faktor; # Sommerzeitbedingt $vCalStart = "$datum"."T0".$stunde_beg."3000Z"; $vCalEnd ="$datum"."T0".$stunde_end."3000Z"; break; case 'Wednesday': $stunde_beg = 18+$faktor; # Sommerzeitbedingt $stunde_end = 19+$faktor; # Sommerzeitbedingt $vCalStart = "$datum"."T".$stunde_beg."0000Z"; $vCalEnd ="$datum"."T".$stunde_end."0000Z"; break; case 'Thursday': $stunde_beg = 18+$faktor; # Sommerzeitbedingt $stunde_end = 19+$faktor; # Sommerzeitbedingt $vCalStart = "$datum"."T".$stunde_beg."0000Z"; $vCalEnd ="$datum"."T".$stunde_end."0000Z"; break; default: $stunde_beg = 7+$faktor; # Sommerzeitbedingt $stunde_end = 8+$faktor; # Sommerzeitbedingt $vCalStart = "$datum"."T0".$stunde_beg."3000Z"; $vCalEnd ="$datum"."T0".$stunde_end."3000Z"; break; } $description = "$lieder$textstelle: \"$textwort\" $botschaft_header$botschaft $text_header$text $zusammenfassung_header$zusammenfassung $kontext_header$kontext $notiz_header$notiz"; #$vCalStart = $row['datum']; #$vCalEnd = $row['datum']#date("Ymd\THi00", $row['datum']); echo" BEGIN:VCALENDAR VERSION:1.0 PRODID:LG-Online BEGIN:VEVENT SUMMARY;ENCODING=QUOTED-PRINTABLE:Gottesdienst: $ueberschrift \n CATEGORIES:NAK DESCRIPTION;ENCODING=QUOTED-PRINTABLE: $description \n DTSTART:$vCalStart \n DTEND: $vCalEnd \n ATTACH;VALUE=URL:http://www.lg-on.de END:VEVENT END:VCALENDAR "; exit; } ################# ## TYP=2 Monatsexport ################# if ($typ == 2){ if($mon < 10){ $mon = "0".$mon; # 0 voranstellen } $datum = "$jahr-$mon"; $Filename = "LG-Online_Monat-$mon.vcs"; header("Content-Type: text/x-vCalendar"); header("Content-Disposition: inline; filename=$Filename"); $db = dbconnect(); $query2 = "SELECT lid, textstelle, ueberschrift, textwort, botschaft, inhalt, zusammenfassung, kontext, datum, DATE_Format(datum, '%d') tag, DATE_Format(datum, '%m') monat, DATE_Format(datum, '%Y') jahr, DATE_Format(datum, '%Y-%m-%d')AS datum_berechnung FROM quelle WHERE datum LIKE'$datum%' AND kid=1 AND ( ukid=1 OR ukid=2 OR ukid=6 OR ukid=13 OR ukid=14 OR ukid=15 OR ukid=16 OR ukid=17 OR ukid=22 OR ukid=25 OR ukid=26 OR ukid=30 OR ukid=68 ) ORDER BY datum ASC "; #echo $query2; #exit; $result = $db->query( $query2) or die ("Cannot execute query2"); echo" BEGIN:VCALENDAR VERSION:1.0 PRODID:LG-Online "; while ($row = $result->fetch_array()){ $lieder=""; ## Sonst bekommen bei der Schleife die nachfolgenden GDs dieselben Lieder, wenn keine erfasst wurden $el=""; $al=""; $wl=""; $date_nlg = mktime(0, 0, 0, 12, 1, 2007); // Datum ab dem neue LGs gelten $date_nlg_format = date("Y-m-d", $date_nlg); // ISO-8601 Format wie in der Datenbank: Formatierung für Vergleiche erforderlich $switch_date = strtotime ($date_nlg_format); //Umrechnung des Fristgrenztages in eine Zahl $lg_datum = strtotime ($row[datum_berechnung]); // Umrechnung des Enddatums in eine Zahl $result2 = $db->query("SELECT notiz FROM notizen WHERE lid = '$row[lid]' AND user = '$user_admin' "); $row2 = $result2->fetch_array(); ################################## ## Aufbau der Lieder ################################## $query = "SELECT nr, titel FROM lieder_quelle, lieder WHERE art='el' AND lid=$row[lid] AND lieder_quelle.gbid = lieder.gbid ORDER BY lieder.gbid"; $result4 = $db->query( $query) or die ("Cannot execute query"); $zaehler = 1; $el =""; while ($row4 = $result4->fetch_array()){ if($zaehler != 1){ $el .= "; $row4[nr] - $row4[titel]"; }else{ $el = "Eingangslied: $row4[nr] - $row4[titel]"; $zaehler = $zaehler+1; } } $query = "SELECT nr, titel FROM lieder_quelle, lieder WHERE art='al' AND lid=$row[lid] AND lieder_quelle.gbid = lieder.gbid ORDER BY lieder.gbid"; $result4 = $db->query( $query) or die ("Cannot execute query AL"); $zaehler = 1; $al =""; while ($row4 = $result4->fetch_array()){ if($zaehler != 1){ $al .= "; $row4[nr] - $row4[titel]"; }else{ $al = "Abendmahlslied: $row4[nr] - $row4[titel]"; $zaehler = $zaehler+1; } } $query = "SELECT nr, titel FROM lieder_quelle, lieder WHERE art='wl' AND lid=$row[lid] AND lieder_quelle.gbid = lieder.gbid ORDER BY lieder.gbid"; $result4 = $db->query( $query) or die ("Cannot execute query WL"); $zaehler = 1; $wl =""; while ($row4 = $result4->fetch_array()){ if($zaehler != 1){ $wl .= "; $row4[nr] - $row4[titel]"; }else{ $wl = "Weitere Lieder: $row4[nr] - $row4[titel]"; $zaehler = $zaehler+1; } } $query = "SELECT nr, titel FROM lieder_quelle, lieder WHERE art='bl' AND lid=$row[lid] AND lieder_quelle.gbid = lieder.gbid ORDER BY lieder.gbid"; $result5 = $db->query( $query) or die ("Cannot execute query BL"); $zaehler = 1; $bl = ""; while ($row5 = $result5->fetch_array()){ if($zaehler != 1){ $bl .= "; $row5[nr] - $row5[titel]"; }else{ $bl = "Bu=DFlied: $row5[nr] - $row5[titel]"; $zaehler = $zaehler+1; } } if ($el != ""){ $el .= "=0D=0A"; } if ($al != ""){ $al .= "=0D=0A"; } if ($wl != ""){ $wl .= "=0D=0A"; } if ($bl != ""){ $bl .= "=0D=0A"; } if ($el != "" OR $al != "" OR $wl != "" OR $bl != ""){ $lieder ="$el$bl$al$wl=0D=0A"; } ################################## ## Aufbau der Lieder ENDE ################################## $text = strip_tags($row['inhalt'],'<br>,<li>,<p>,<ul>'); $textwort = strip_tags($row['textwort'],'<br>,<li>,<p>,<ul>'); $ueberschrift = strip_tags($row['ueberschrift'],'<br>,<li>,<p>,<ul>'); $notiz = strip_tags($row2['notiz'],'<br>,<li>,<p>,<ul>'); # =0D=0A --> Zeilenumbrüche im VCS if ($lg_datum >= $switch_date){ $botschaft = strip_tags($row['botschaft'],'<br>,<li>,<p>,<ul>'); $zusammenfassung = strip_tags($row['zusammenfassung'],'<br>,<li>,<p>,<ul>'); $kontext = strip_tags($row['kontext'],'<br>,<li>,<p>,<ul>'); } $lieder = str_replace (array("<li> ", "<li>", "</li></ul><p>", "</li> ", "</li>", "<ul> ", "<ul>", "</ul>", "<p>", "</p>", "<br style=\"\" />", "·", " ", "<", ">", """, "„", "“", "‚", "‘", "«", "»", "<br /> ", "<br />", "•", "ä", "Ä", "ü", "Ü", "ö", "Ö", "ß", chr(9), "'" ) , array("- ", "- ", "=0D=0A=0D=0A", "=0D=0A", "=0D=0A", "=0D=0A", "=0D=0A", "", "", "", "", chr(183), " ", chr(60), chr(62), chr(34), chr(132), chr(148), "'", "'", chr(174), chr(175), "=0D=0A", "=0D=0A", chr(149), "=E4", "=C4", "=FC", "=DC", "=F6", "=D6", "=DF", "", "'" ) , $lieder ); $lieder = trim(str_replace(array("\n", "\r") , array("","") , $lieder )); $textstelle = str_replace (array("<li> ", "<li>", "</li></ul><p>", "</li> ", "</li>", "<ul> ", "<ul>", "</ul>", "<p>", "</p>", "<br style=\"\" />", "·", " ", "<", ">", """, "„", "“", "‚", "‘", "«", "»", "<br /> ", "<br />", "•", "ä", "Ä", "ü", "Ü", "ö", "Ö", "ß", chr(9), "'" ) , array("- ", "- ", "=0D=0A=0D=0A", "=0D=0A", "=0D=0A", "=0D=0A", "=0D=0A", "", "", "", "", chr(183), " ", chr(60), chr(62), chr(34), chr(132), chr(148), "'", "'", chr(174), chr(175), "=0D=0A", "=0D=0A", chr(149), "=E4", "=C4", "=FC", "=DC", "=F6", "=D6", "=DF", "", "'" ) , $row['textstelle'] ); $textstelle = trim(str_replace(array("\n", "\r") , array("","") , $textstelle )); $textwort = str_replace (array("<li> ", "<li>", "</li></ul><p>", "</li> ", "</li>", "<ul> ", "<ul>", "</ul>", "<p>", "</p>", "<br style=\"\" />", "·", " ", "<", ">", """, "„", "“", "‚", "‘", "«", "»", "<br /> ", "<br />", "•", "ä", "Ä", "ü", "Ü", "ö", "Ö", "ß", chr(9), "'" ) , array("- ", "- ", "=0D=0A=0D=0A", "=0D=0A", "=0D=0A", "=0D=0A", "=0D=0A", "", "", "", "", chr(183), " ", chr(60), chr(62), chr(34), chr(132), chr(148), "'", "'", chr(174), chr(175), "=0D=0A", "=0D=0A", chr(149), "=E4", "=C4", "=FC", "=DC", "=F6", "=D6", "=DF", "", "'" ) , $textwort ); $textwort = trim(str_replace(array("\n", "\r") , array("","") , $textwort )); $text = str_replace (array("<li> ", "<li>", "</li></ul><p>", "</li> ", "</li>", "<ul> ", "<ul>", "</ul>", "<p>", "</p>", "<br style=\"\" />", "·", " ", "<", ">", """, "„", "“", "‚", "‘", "«", "»", "<br /> ", "<br />", "•", "ä", "Ä", "ü", "Ü", "ö", "Ö", "ß", chr(9), "'" ) , array("- ", "- ", "=0D=0A=0D=0A", "=0D=0A", "=0D=0A", "=0D=0A", "=0D=0A", "", "", "", "", chr(183), " ", chr(60), chr(62), chr(34), chr(132), chr(148), "'", "'", chr(174), chr(175), "=0D=0A", "=0D=0A", chr(149), "=E4", "=C4", "=FC", "=DC", "=F6", "=D6", "=DF", "", "'" ) , $text ); $text = trim(str_replace(array("\n", "\r") , array("","") , $text )); $text_header="=0D=0A=0D=0A=0D=0A"; $ueberschrift = str_replace (array("<li> ", "<li>", "</li></ul><p>", "</li> ", "</li>", "<ul> ", "<ul>", "</ul>", "<p>", "</p>", "<br style=\"\" />", "·", " ", "<", ">", """, "„", "“", "‚", "‘", "«", "»", "<br /> ", "<br />", "•", "ä", "Ä", "ü", "Ü", "ö", "Ö", "ß", chr(9), "'" ) , array("- ", "- ", "=0D=0A=0D=0A", "=0D=0A", "=0D=0A", "=0D=0A", "=0D=0A", "", "", "", "", chr(183), " ", chr(60), chr(62), chr(34), chr(132), chr(148), "'", "'", chr(174), chr(175), "=0D=0A", "=0D=0A", chr(149), "=E4", "=C4", "=FC", "=DC", "=F6", "=D6", "=DF", "", "'" ) , $ueberschrift ); $ueberschrift = trim(str_replace(array("\n", "\r") , array("","") , $ueberschrift )); $notiz = str_replace (array("<li> ", "<li>", "</li></ul><p>", "</li> ", "</li>", "<ul> ", "<ul>", "</ul>", "<p>", "</p>", "<br style=\"\" />", "·", " ", "<", ">", """, "„", "“", "‚", "‘", "«", "»", "<br /> ", "<br />", "•", "ä", "Ä", "ü", "Ü", "ö", "Ö", "ß", chr(9), "'" ) , array("- ", "- ", "=0D=0A=0D=0A", "=0D=0A", "=0D=0A", "=0D=0A", "=0D=0A", "", "", "", "", chr(183), " ", chr(60), chr(62), chr(34), chr(132), chr(148), "'", "'", chr(174), chr(175), "=0D=0A", "=0D=0A", chr(149), "=E4", "=C4", "=FC", "=DC", "=F6", "=D6", "=DF", "", "'" ) , $notiz ); $notiz = trim(str_replace(array("\n", "\r") , array("","") , $notiz )); if ($notiz == ""){ $notiz_header = ""; }else{ $notiz_header = "=0D=0A=0D=0A=0D=0ANotizen:=0D=0A"; } if ($lg_datum >= $switch_date){ #Neue LGs? $text_header="=0D=0A=0D=0A=0D=0AAusf=FChrungen:=0D=0A"; ## Soll nur angezeigt werden in den neuen LGs $botschaft = str_replace (array("<li> ", "<li>", "</li></ul><p>", "</li> ", "</li>", "<ul> ", "<ul>", "</ul>", "<p>", "</p>", "<br style=\"\" />", "·", " ", "<", ">", """, "„", "“", "‚", "‘", "«", "»", "<br /> ", "<br />", "•", "ä", "Ä", "ü", "Ü", "ö", "Ö", "ß", chr(9), "'" ) , array("- ", "- ", "=0D=0A=0D=0A", "=0D=0A", "=0D=0A", "=0D=0A", "=0D=0A", "", "", "", "", chr(183), " ", chr(60), chr(62), chr(34), chr(132), chr(148), "'", "'", chr(174), chr(175), "=0D=0A", "=0D=0A", chr(149), "=E4", "=C4", "=FC", "=DC", "=F6", "=D6", "=DF", "", "'" ) , $botschaft ); $botschaft = trim(str_replace(array("\n", "\r") , array("","") , $botschaft )); $botschaft_header="=0D=0A=0D=0A=0D=0ABotschaft:=0D=0A"; $zusammenfassung = str_replace (array("<li> ", "<li>", "</li></ul><p>", "</li> ", "</li>", "<ul> ", "<ul>", "</ul>", "<p>", "</p>", "<br style=\"\" />", "·", " ", "<", ">", """, "„", "“", "‚", "‘", "«", "»", "<br /> ", "<br />", "•", "ä", "Ä", "ü", "Ü", "ö", "Ö", "ß", chr(9), "'" ) , array("- ", "- ", "=0D=0A=0D=0A", "=0D=0A", "=0D=0A", "=0D=0A", "=0D=0A", "", "", "", "", chr(183), " ", chr(60), chr(62), chr(34), chr(132), chr(148), "'", "'", chr(174), chr(175), "=0D=0A", "=0D=0A", chr(149), "=E4", "=C4", "=FC", "=DC", "=F6", "=D6", "=DF", "", "'" ) , $zusammenfassung ); $zusammenfassung = trim(str_replace(array("\n", "\r") , array("","") , $zusammenfassung )); # Das Tag <ul> wird durch Zeilenumbruch ersetzt (=0D=0A). Gerade bei der Zusammenfassung # kommt es vor, dass mit <ul> begonnen wird. Dann soll nicht gleich eine Leerzeile # nach der Überschrift erscheinen if(ereg("^=0D=0A", $zusammenfassung)){ $zusammenfassung_header="=0D=0A=0D=0A=0D=0AZusammenfassung:"; }else{ $zusammenfassung_header="=0D=0A=0D=0A=0D=0AZusammenfassung:=0D=0A"; } $kontext = str_replace (array("<li> ", "<li>", "</li></ul><p>", "</li> ", "</li>", "<ul> ", "<ul>", "</ul>", "<p>", "</p>", "<br style=\"\" />", "·", " ", "<", ">", """, "„", "“", "‚", "‘", "«", "»", "<br /> ", "<br />", "•", "ä", "Ä", "ü", "Ü", "ö", "Ö", "ß", chr(9), "'" ) , array("- ", "- ", "=0D=0A=0D=0A", "=0D=0A", "=0D=0A", "=0D=0A", "=0D=0A", "", "", "", "", chr(183), " ", chr(60), chr(62), chr(34), chr(132), chr(148), "'", "'", chr(174), chr(175), "=0D=0A", "=0D=0A", chr(149), "=E4", "=C4", "=FC", "=DC", "=F6", "=D6", "=DF", "", "'" ) , $kontext ); $kontext = trim(str_replace(array("\n", "\r") , array("","") , $kontext )); $kontext_header="=0D=0A=0D=0AKontext:=0D=0A"; } $wochentag = date("l", mktime(0,0,0,$row['monat'],$row['tag'],$row['jahr'])); $result_gd = $db->query("SELECT wgd FROM profil WHERE user = '$user_admin'"); $row_gd = $result_gd->fetch_array(); if($wochentag == 'Wednesday' AND $row_gd['wgd'] != '0'){ $datum = date("Ymd", mktime(0,0,0,$row['monat'],$row['tag']+$row_gd['wgd'],$row['jahr'])); // + relativer Tag zum Mittwoch Do--> +1 }else{ $datum = date("Ymd", mktime(0,0,0,$row['monat'],$row['tag'],$row['jahr'])); // Diese Zeile ist für Sonntag, da braucht man den Tag ja nicht verschieben, nur Werktags } # Pear Package date: Wird hier zur Überprüfung der Sommerzeit verwendet require_once("Date/Date.php"); $date=new Date("$row[jahr]-$row[monat]-$row[tag] 06:00:00"); ## Uhrzeit egal. Zu den Zeiten wo GDs stattfinden ist die Zeitumstellung schon rum // UTC hat keine Sommerzeit $date->setTZbyID("Europe/Berlin"); if (true==$date->inDaylightTime()) { $faktor = "0"; }else{ $faktor = "1"; } switch($wochentag) { case 'Sunday': $stunde_beg = 7+$faktor; # Sommerzeitbedingt $stunde_end = 8+$faktor; # Sommerzeitbedingt $vCalStart = "$datum"."T0".$stunde_beg."3000Z"; $vCalEnd ="$datum"."T0".$stunde_end."3000Z"; break; case 'Wednesday': $stunde_beg = 18+$faktor; # Sommerzeitbedingt $stunde_end = 19+$faktor; # Sommerzeitbedingt $vCalStart = "$datum"."T".$stunde_beg."0000Z"; $vCalEnd ="$datum"."T".$stunde_end."0000Z"; break; case 'Thursday': $stunde_beg = 18+$faktor; # Sommerzeitbedingt $stunde_end = 19+$faktor; # Sommerzeitbedingt $vCalStart = "$datum"."T".$stunde_beg."0000Z"; $vCalEnd ="$datum"."T".$stunde_end."0000Z"; break; default: $stunde_beg = 7+$faktor; # Sommerzeitbedingt $stunde_end = 8+$faktor; # Sommerzeitbedingt $vCalStart = "$datum"."T0".$stunde_beg."3000Z"; $vCalEnd ="$datum"."T0".$stunde_end."3000Z"; break; } $description = "$lieder$textstelle: \"$textwort\" $botschaft_header$botschaft $text_header$text $zusammenfassung_header$zusammenfassung $kontext_header$kontext $notiz_header$notiz"; echo" BEGIN:VEVENT SUMMARY;ENCODING=QUOTED-PRINTABLE:Gottesdienst: $ueberschrift \n CATEGORIES:NAK DESCRIPTION;ENCODING=QUOTED-PRINTABLE: $description \n DTSTART:$vCalStart \n DTEND: $vCalEnd \n ATTACH;VALUE=URL:http://www.lg-on.de END:VEVENT "; } echo" END:VCALENDAR "; exit; } ?>