;
close(GUESTLOG);
print GUESTLOG "Content-Type: text/plain\n\n";
open(GUESTLOG, ">$guest_log");
if ($FORM{'url'}){
print GUESTLOG "";
print GUESTLOG "$FORM{'name'}
";
}else{
print GUESTLOG "$FORM{'name'}
";
}
print GUESTLOG "$FORM{'comments'}
";
if ($hyper_link eq '1'){
print GUESTLOG "$FORM{'emailadd'}";
}else{
print GUESTLOG "$FORM{'emailadd'}";
}
if ($seperate eq '1'){
print GUESTLOG "\n";
}else{
print GUESTLOG "
\n";
}
print GUESTLOG "
\n";
print GUESTLOG @FILE;
close(GUESTLOG);
###################### Dankeschön-Seite für den User ##########################
print "\n";
print "$meta\n";
print "$title\n";
print "$body\n";
print "Thank you $FORM{'name'} , for participating!
\n";
print "
\n";
print "these answers have been published
$FORM{'comments'}
\n";
print "results
answers to the questionary\n";
}else{ # Sehen wir uns das Gästebuch an
########### In dieser Sektion wird die Gästebuchdatei geöffnet und angezeigt ###########
print "\n";
print "
$meta\n";
print "$title\n";
print "$body\n";
print "$top_of_page
\n";
open(GUESTLOG, "$guest_log");
@filein = ;
close(GUESTLOG);
print @filein;
################### Hier ist der Seitenzähler #####################
{
open LOG,"$count_log";
@log_lines = ;
close LOG;
chop($last_line = $log_lines[$#log_lines]);
undef @log_lines; #release storage for log lines
if ($last_line =~ /(\d+)/)
{
$next_number = $1 + 1;
}
open LOG,">$count_log";
print LOG "H$next_number\n";
close LOG;
}
if ($center eq '1'){
print "";
}
else{
print "";
}
print "
$font_color\n";
print "$font_size $before $next_number $after\n";
print "\n";
if ($center eq '1'){
print "";
}
print "
$bottom_of_page";
}
########################
sub no_comments {
print "Content-type: text/html\n\n";
print "No answer(s)r\n";
print "Please fill in your answer(s).
\n";
print " Please use the back-button to return to the questionary.\n";
print "\n\n";
exit;
}
sub no_name {
print "Content-type: text/html\n\n";
print "No name or any nickname\n";
print "Please fill in your name or any nickname, then you can send your answers on-line!
\n";
print " Please use the back-button to return to the questionary.\n";
print "\n\n";
exit;
}
sub no_email {
print "Content-type: text/html\n\n";
print "No e-mail address\n";
print "please fill in your e-mail address, or if you don't want to publish
your
address make up a combination of signs that ressembles an e-mail
address.
\n";
print " Please use the back-button to return to the questionary.\n";
print "\n\n";
exit;
}
# Subroutine für Fehler in der eMail-Adresse
sub no_valid_email
{
print "Content-type: text/html\n\n";
print "Wrong e-mail address\n";
print "\n";
print "Falsche eMail-Adresse
\n";
print "please fill in your e-mail address, or if you don't want to publish
your
address make up a combination of signs that ressembles an e-mail
address.\n";
print " Please use the back-button to return to the questionary.\n";
print "\n\n";
exit;
}
if ($FORM{'new'} && $mail eq '1') {
open (MAIL, "|$mailprog $recipient") || die "Can't open $mailprog!\n";
print MAIL "Reply-to: $FORM{'emailadd'} ($FORM{'name'})\n";
print MAIL "From: $FORM{'emailadd'} ($FORM{'name'})\n";
print MAIL "Subject: $subject\n";
print MAIL "$FORM{'comments'}\n";
close (MAIL);
}
if ($FORM{'new'} && $reciept eq '1') {
$emailadd = $FORM{'emailadd'};
open (MAIL, "|$mailprog $emailadd") || die "Can't open $mailprog!\n";
#print MAIL "Reply-to: $recipient\n";
print MAIL "From: $recipient ($title)\n";
print MAIL "Subject: $reply_subject\n";
print MAIL "$mail_body\n";
close (MAIL);
}
&ReleaseFileLock;
#######################################################################
# FileLock #
#######################################################################
sub GetFileLock {
local ($lock_file) = 'file.lock';
local ($endtime);
$endtime = 10;
$endtime = time + $endtime;
# Wir setzen die Endzeit auf 10 Sekunden wartezeit
while (-e $lock_file && time < $endtime) {
# Do Nothing
}
open(LOCK_FILE, ">$lock_file");
# flock(LOCK_FILE, 2); # 2 exclusively locks the file
} # ende von FileLock
#######################################################################
# ReleaseFileLock #
#######################################################################
sub ReleaseFileLock {
local ($lock_file) = 'file.lock';
# 8 unlocks the file
# flock(LOCK_FILE, 8);
close(LOCK_FILE);
unlink($lock_file);
} # end of ReleaseFileLock
exit;