<? 

$db 
"db";                        // Name der Datenbank
$db_host "localhost";            // DAtenbank-Server (im allgmeienem localhost9
$db_user"user";                // Datenbank-Benutzername
$db_pass "password";            // Datebamnk-Passwort
$table_prefix "wp_";            // Prefix der Wordpress-Tabellen

$defaultDuration 60 60;    // Wie lange dauet ein ereignis, wenn kein Ende angegeben ist? (Sekunden)
$timezone "Europe/Berlin";    // Welche Zeitzone verwenden wir?

$domain "dom.ain";            // Domain für generierung von UIDs.

//----- ab hier gibts keine einstellungen mehr
header"Content-Type: text/calendar" );

function 
Clean_Text$text ) {
    
$result str_replace"\r\n""\\n"$text );
    
$result str_replace"\n""\\n"$result );
    
$result str_replace"\r""\\n"$result );
    return 
$result;
}


mysql_connect$db_host$db_user$db_pass );
mysql_select_db$db );

mysql_query"set character set 'UTF8'" );
mysql_query"set names 'UTF8'" );

$result mysql_query"select id,eventTitle,eventDescription,eventLocation,eventStartDate,eventStartTime,eventEndDate,eventEndTime from " $table_prefix "eventscalendar_main where accessLevel='public' order by eventStartDate" );
?>
BEGIN:VCALENDAR<? echo "\n"?>
<? 
    
while ($row mysql_fetch_object$result )) :
        
$startTime strtotime$row->eventStartTime );
        
$endTime strtotime$row->eventEndTime );
        
$startDate strtotime$row->eventStartDate );
        
$endDate strtotime$row->eventEndDate );
        
        if (
$row->eventStartTime == NULL || $row->eventStartTime == $row->eventEndTime) {
            
$allDay true;
        } else {
            
$allDay false;
            if (
$row->eventEndTime == NULL) {
                
$endTime $startTime $defaultDuration;
            }
        }    
        
        
$start date"Ymd"$startDate );
        
$end date"Ymd"$endDate );

        if (! 
$allDay) {
            
$start $start "T" date"His"$startTime );
            
$end $end "T" date"His"$endTime );
            
$timePrefix "TZID=" $timezone;
        } else {
            
$timePrefix "VALUE=DATE";
        }
        
        
$uid $row->id "@" $domain;
                
        
$location Clean_Text$row->eventLocation );
        
$description Clean_Text$row->eventDescription );
        
$title Clean_Text$row->eventTitle );
?>
BEGIN:VEVENT<? echo "\n"?>
UID:<?echo $uid "\n"?>
DESCRIPTION:<? echo $description "\n"?>
DTSTART;<? echo $timePrefix?>:<? echo $start "\n"?>
SUMMARY:<? echo $title "\n"?>
DTEND;<? echo $timePrefix?>:<? echo $end "\n"?>
LOCATION:<? echo $location "\n"?>
END:VEVENT<? echo "\n"?>
<? 
endwhile; ?>
END:VCALENDAR<? echo "\n"?>