#!/usr/bin/perl
require 'config.pl';
print "Content-type: text/plain\n\n";

# Full path on server to events.html
$eventsfile="$rootpath/diary.html";

print "\"StartDate\",\"Location\",\"Summary\",\"FullDetails\"\n";

$flag=0;
$date='';
$location='';
$details='';
open (INFILE,$eventsfile);
while ($line=<INFILE>)
{
  if ( $flag && $line=~/<!--- END EVENT --->/i )
  {
    plaintext($details)=~/^(\S+)/;
    $summary=$1;
    if ( plaintext($details)=~/^\S+\s+(\S+)/ )
    {
      $summary="$summary $1";
			if ( plaintext($details)=~/^\S+\s+\S+\s+(\S+)/ )
			{
			  $summary="$summary $1";
				if ( plaintext($details)=~/^\S+\s+\S+\s+\S+\s+(\S+)/ )
				{
					$summary="$summary $1";
					if ( plaintext($details)=~/^\S+\s+\S+\s+\S+\s+\S+\s+(\S+)/ )
					{
						$summary="$summary $1";
						if ( plaintext($details)=~/^\S+\s+\S+\s+\S+\s+\S+\s+\S+\s+(\S+)/ )
						{
							$summary="$summary $1";
						}
					}
				}
			}
    }
    print "\"".plaintext($date)."\",\"".plaintext($location)."\",\"".plaintext($summary)."\",\"".plaintext($details)."\"\n";
    $flag=0;
		$date='';
		$location='';
		$details='';
  }
  if ( $flag==1 && $line!~/^</ )
  {
    $flag=2;
  }
  if ( $flag==2 )
  {
    $details=$details.$line;
  }
  if ( $flag==0 && $line=~/<!--- BEGIN EVENT [0-9]+ ([0-9][0-9][0-9][0-9])([0-9][0-9])([0-9][0-9]) ([^\-]+) --->/i )
  {
    $flag=1;
    $date="$1-$2-$3";
    $location=$4;
		$details='';
  }
}
close INFILE;

sub plaintext
{
  local ($string) = @_;
	$string =~ s/<[^>]*>//g;
	$string =~ s/\&amp\;/\&/ig;
	$string =~ s/\&pound\;/UKP/ig;
	$string =~ s/&lt;/</ig;
	$string =~ s/&gt;/>/ig;
	$string =~ s/http:\/\///ig;
	$string =~ s/mailto://ig;
	$string =~ s/"/'/ig;
	$string =~ s/\n/ /ig;
	$string =~ s/\r//ig;
	$string =~ s/^\s+//ig;
	$string =~ s/\s+$//ig;
	$string =~ s/\s+/ /ig;
	return ( $string );
}
