#!/usr/bin/perl # THINGS TO MAKE THE PROGRAM WORK ######################################## use lib "./lib"; use strict; use CGI; use CGI::Carp qw(fatalsToBrowser); use Digest::MD5 qw(md5_hex); use common; use sitevariables; use functions; use lang; package default; # PREPARATIONS ########################################################### our $cur = CGI->new; our $mode = $cur->param('mode'); our $viewcategory = $cur->param('viewcategory'); $viewcategory =~ s/_/ /ig; our $adindex = $cur->param('adindex'); our $emailcookie = $cur->cookie('email'); our $passcookie = $cur->cookie('pass'); our $randlimit = 1000000000000; srand(time); our $content; # log in/out stuff must be done before the page is printed ############### if ($mode eq "newlogin" or $mode eq $lang::register){ firststuff(); }elsif($mode eq "logout"){ dologout(); } if ($svb::runautodelete eq "yes" && $svb::autodelete != 0){ `./autodelete.pl`; } ### MAIN PROGRAM ######################################################### print "Content-type:text/html\n\n"; ## if they just came to index.cgi print the front page ################### if (!$mode){ $content .= frontpage(); # if the mode needs a password check ##################################### }elsif($mode eq "place" or $mode eq "edit" or $mode eq "deletead" or $mode eq $lang::submit_ad or $mode eq $lang::update_ad or $mode eq "confirm"){ # do password check and send them on to the right page if its correct #### if (fcn::checkcookie($emailcookie,$passcookie) eq "yes"){ if ($mode eq "place"){ $content .= place(); }elsif($mode eq "edit" && $adindex){ $content .= editad(); }elsif($mode eq $lang::update_ad){ $content .= updatead(); }elsif($mode eq "edit"){ $content .= edit(); }elsif($mode eq "deletead" && $adindex){ $content .= confirmdelete(); }elsif($mode eq "deletead"){ $content .= deletead(); }elsif($mode eq $lang::submit_ad){ $content .= savead(); }elsif($mode eq "confirm"){ $content .= dodelete(); $content .= deletead(); } # if its wrong, go back to login page #################################### }else{ $content .= login(); } # for pages that dont require password checks, send them straight there ## }elsif($mode eq "login"){ $content .= login(); }elsif($mode eq "view" && $adindex){ $content .= viewsinglead(); }elsif($mode eq "view" && $viewcategory){ $content .= viewcategory(); }elsif($mode eq "view"){ $content .= frontpage(); }elsif($mode eq $lang::register){ $content .= redirect("registerpage"); }elsif($mode eq "registerpage"){ $content .= newregister(); }elsif($mode eq "newlogin"){ $content .= redirect("loginpage"); }elsif($mode eq "loginpage"){ $content .= newlogin(); }elsif($mode eq "search"){ $content .= searchpage(); }elsif($mode eq $lang::search){ $content .= searchresults(); }elsif($mode eq "email"){ $content .= email(); }elsif($mode eq "logout"){ $content .= logout(); }else{ $content .= frontpage(); } # make the page and print it out ######################################### print printpage($content); sub printpage { my $content = $_[0]; $content .= $cmn::fuzzymonkey; my $page; open (TEMPLATE, "./$svb::templatefile") || cmn::dienice("$lang::read_file_error ./$svb::templatefile\: $!"); while (