#!/usr/bin/perl # Relativer Pfad zur Setup Datei # In der Regel können Sie die Angabe so stehen lassen. $path = "/kunden/doebeln-regional.net/webseiten/firmen"; #----Das war's schon, keine weiteren Änderungen notwendig #----Wenn Sie die Standardinstallation beibehalten haben. require "$path/links.setup"; require "$cgidir/cgi-lib.pl"; # Formdaten einlesen... &ReadParse; # HTTP Header zum Server senden print "Content-type: text/html\n\n"; # Format Comment input so that it will fit nicely in the database if ($in{'Beschreibung'}) { $in{'Beschreibung'} =~ s//>/g; $in{'Beschreibung'} =~ s/\cM//g; $in{'Beschreibung'} =~ s/\n\n/ /g; $in{'Beschreibung'} =~ s/\n/ /g; } # Depending on Form input: # 1) Display add to links form # 2) Add Link information to the database # 3) Display Links if ($in{'action'} eq "add_form") { $header = $add_links_header; $sub_header = $add_links_sub_header; &add_form; } elsif ($in{'action'} eq "ad_links") { $header = $thank_you_header; $sub_header = $thank_you_sub_header; &ad_links; &display_main; } elsif ($in{'action'} eq "view_Rubrik") { $header = $display_view_header; $sub_header = $display_view_sub_header; &view_Rubrik; } else { $header = $display_main_header; $sub_header = $display_main_sub_header; &display_main; } &display_output; exit(0); ####################### END OF THE MAIN PROGRAM #################### sub display_main { open(LINKSDATA,"$datafile") || die $!; flock(LINKSDATA,2); @linksdata = ; flock(LINKSDATA,8); close(LINKSDATA); foreach $line (@linksdata){ (@linedata) = split(/\|/,$line); $Rubrik_num{$linedata[$cat_id]}++; } $html_output .= qq~ \n"; } sub view_Rubrik { $Rubrik = $in{"Rubrik"}; $Rubrik =~ tr/+/ /; open(LINKSDATA,"$datafile") || die $!; flock(LINKSDATA,2); @linksdata = ; flock(LINKSDATA,8); close(LINKSDATA); $html_output .= qq~

Links in der Rubrik: $Rubrik

~; } sub list_record { local(@rowdata) = @_; local($output); $rowdata{"Homepage"} =~ s/http:\/\///g; $output .= qq~ $rowdata{"Name"} $rowdata{"Beschreibung"} ~; $output; } sub ad_links { open(LINKSDATA,"$datafile") || die $!; flock(LINKSDATA,2); @linksdata = ; flock(LINKSDATA,8); close(LINKSDATA); # Following code checks duplicate links foreach (@linksdata) { if ($_ =~ /$in{'Homepage'}/) { $header = "FEHLER!!! Dieser Link ist schon eingetragen!"; $sub_header = "Haben Sie die richtige URL eingetragen?"; $html_output .= qq~ Dieser Link ist bereits in der Datenbank eingetragen... ~; &display_output; exit(0); } } $id = &get_number(); ($date,$localtime) = &get_date(); $date = $localtime." ".$date; $in{'ID'} = $id; $in{'Date'} = $date; foreach $field (@link_fields) { $in{$field} =~ s/\|/\s/g; $newline .= $in{$field}."|"; } chop($newline); $newline .= "\n"; open(LINKSDATA,">$datafile") || die $!; flock(LINKSDATA,2); print LINKSDATA $newline; print LINKSDATA @linksdata; flock(LINKSDATA,8); close(LINKSDATA); } sub add_form { $html_output .= qq~
Zur Zeit nicht moeglich ~; } sub table_row { my ($field,$type) = @_; ($field,$type) = @_; my ($table_row); if ($type eq "text") { $table_row .= qq~ ~; } elsif ($type eq "textarea") { $table_row .= qq~ ~; } elsif ($type eq "select") { @option_list = eval("@".$field."_list"); $table_row .= qq~ ~; } $table_row; } sub get_number { local($num); open(NUMBER,"$counter") || die $!; $num = ; close(NUMBER); $num++; open(NUMBER,">$counter") || die $!; print NUMBER $num; close(NUMBER); $num; } sub display_output { open(TEMPLATE,"$booktemplate") || die $!; { local $/ = undef; $template =
$field
$field
$field