# Seminartermin für Outlook-Kalender ausgeben sub SendeOutlookTermin { my $self = shift; $self->{ICALENDAR_TMPL} = HTML::Template::Compiled->new ( filename => 'htc_icalendar.ics', path => '/usr/local/httpd/htdocs/cgi-bin/seminare_v2/tmpl/', ); $self->ICalendar::HoleIcalTerminDaten(); $self->{DOWNLOAD} = 'files/'.$self->session->id().'.ics'; open (ICAL, ">$self->{DOWNLOAD}") || die 'Fehler bei open \n'; print ICAL $self->{ICALENDAR_TMPL}->output(); close(ICAL) || die 'Fehler bei close \n'; $self->{DateiDownloadTyp} = 'ics'; } # Seminartermin für Outlook-Kalender aus DB auslesen sub HoleIcalTerminDaten { my $self = shift; $self->SqlStatements::HoleIcalTerminDatenSQL() unless defined $self->{HoleIcalTerminDatenSQL}; $self->{HoleIcalTerminDatenSQL}->execute( $self->{TerminID} ); my ( $seminar_nr, $seminar_titel, $start_datum, $start_uhrzeit, $ende_datum, $ende_uhrzeit, $start_datum_ical, $start_uhrzeit_ical, $ende_datum_ical, $ende_uhrzeit_ical ); $self->{HoleIcalTerminDatenSQL}->bind_columns(undef, \( $seminar_nr, $seminar_titel, $start_datum, $start_uhrzeit, $ende_datum, $ende_uhrzeit, $start_datum_ical, $start_uhrzeit_ical, $ende_datum_ical, $ende_uhrzeit_ical )); $self->{HoleIcalTerminDatenSQL}->fetch(); $self->{ICALENDAR_TMPL}->param( CGISESSID => $self->session->id(), SEMINAR_NR => "$seminar_nr", SEMINAR_TITEL => "$seminar_titel", SEMINAR_VON => "$start_datum $start_uhrzeit", SEMINAR_BIS => "$ende_datum $ende_uhrzeit", SEMINAR_VON_DATETIME => "$start_datum_ical"."T$start_uhrzeit_ical", SEMINAR_BIS_DATETIME => "$ende_datum_ical"."T$ende_uhrzeit_ical", JETZT_DATETIME => "20081006T080000", ); }