#!/usr/bin/perl # ### PRIMARY UBB SCRIPT ## # # Ultimate Bulletin Board is copyright Infopop Corporation, 1998-2000. # # ------------ Ultimate.cgi ------------- # # This file contains intro functionality for the UBB. # # Infopop Corporation offers no # warranties on this script. The owner/licensee of the script is # solely responsible for any problems caused by installation of # the script or use of the script, including messages that may be # posted on the BB. # # All copyright notices regarding the Ultimate Bulletin Board # must remain intact on the scripts and in the HTML # for the scripts. # # For more info on the Ultimate BB, # see http://www.UltimateBB.com # ############################################################### # #If you are running UBB on IIS, #you may need to add the following line #if so, just remove the "#" sign before the print line below #print "HTTP/1.0 200 OK\n"; eval { ($0 =~ m,(.*)/[^/]+,) && unshift (@INC, "$1"); # Get the script location: UNIX / or Windows / ($0 =~ m,(.*)\\[^\\]+,) && unshift (@INC, "$1"); # Get the script location: Windows \ #substitute all require files here for the file require "UltBB.setup"; require "Date.pl"; require "mods.file"; require "Styles.file"; require "ubb_library.pl"; }; &ReadParse; if ($in{'action'} eq "Redirect") { print "Location: $in{'GoTo'}\n\n"; exit; } #end Redirect check print ("Content-type: text/html\n\n"); #adjust bgcolor variables if ($BGColor ne ""){ $BGColor = qq(bgcolor="$BGColor"); } if ($AltColumnColor1 ne ""){ $AltColumnColor1 = qq(bgcolor="$AltColumnColor1"); } if ($AltColumnColor2 ne ""){ $AltColumnColor2 = qq(bgcolor="$AltColumnColor2"); } if ($CategoryStripColor ne ""){ $CategoryStripColor = qq(bgcolor="$CategoryStripColor"); } if ($TableColorStrip ne ""){ $TableColorStrip = qq(bgcolor="$TableColorStrip"); } if ($PageBackground ne ""){ $PageBackground = qq(background="$NonCGIURL/$PageBackground"); } if ($TableBorderColor ne ""){ $TableWidth2 = "100%"; $BorderTop = qq(
); $BorderBottom = qq(
); } else { $TableWidth2 = $TableWidth; $BorderTop = ""; $BorderBottom = ""; } if ($BBStatus eq "OFF") { &StandardHTML($BBClosedMessage); exit; } foreach $row(@in) { ($Name, $Value) = split ("=", $row); $Name = &decodeURL($Name); $Value = &decodeURL($Value); if ($Name eq "BypassCookie") { $BypassCookie = $Value; } if ($Name eq "category") { $category = $Value; $CategoryName = &GetCatName($category); } if ($Name eq "number") { $number = $Value; $number =~ s/\D//; } if ($Name eq "DaysPrune") { $DaysPrune = $Value; } } # end FOREACH $row if ($VariablesPath eq "") { $VariablesPath = $CGIPath; } #set Random Number- for use in Banner Ads, etc. if ( ($Header ne "") || ($Footer ne "") ) { $RandomNumber = &MakeRandomNumber; $RandomNumber2 = $RandomNumber + 100074; if ($Header ne "") { $Header =~ s/UBBrandomX/$RandomNumber/isg; $Header =~ s/UBBrandomY/$RandomNumber2/isg; } if ($Footer ne "") { $Footer =~ s/UBBrandomX/$RandomNumber/isg; $Footer =~ s/UBBrandomY/$RandomNumber2/isg; } } # end if header or footer if (@in == 0) { &Intro; exit; } if ($in{'action'} eq "intro") { &Intro; exit; } if ($in{'action'} eq "email") { &DoEmail($in{'ToWhom'}); } else { # all else requires the UBB Registration Library eval (require "register_lib.pl"); if ($@){ &StandardHTML("Fehler! Die notwendigen Dateien für die Registrations-Datenbank sind nicht verfügbar. Bitte kontaktieren Sie die Administration."); exit; } } if ($in{'action'} eq "agree") { &Agree; } if ($in{'action'} eq "COPPAgree") { &ShowCOPPAAgree; } if ($in{'action'} eq "useCOPPAform") { &ShowCOPPAForm; } if ($in{'action'} eq "register") { &Register; } if ($in{'action'} eq "lostpw") { if ($UseEmail eq "ON") { &LostPW; } else { &StandardHTML("Diese Funktion ist durch die Administration deaktiviert worden - bitte benutzen Sie die ZURÜCK-Funktion Ihres Browsers und versuchen Sie es erneut!"); } } # INTRO PAGE SUBROUTINES # sub Intro { &get_cookie; #retrieves all current cookies &AssembleCats; #retrieve cats @CATEGORIES = &OpenFile("$NonCGIPath/categories.file"); #check for archives if (-e "$NonCGIPath/Archives/archives.pl") { @archives = &OpenFile("$NonCGIPath/Archives/archives.pl"); if ($archives[0] ne "") { @ArchiveLine = qq(