#!/usr/bin/perl use vars qw(%config %category %form); use strict; #-########################################################################### # # In accordance with the GPL, this copyright notice MUST remain intact: # # EveryAuction Release Version 1.51 (5/13/00) # Copyright (C) 2000 EverySoft # Registered with the United States Copyright Office, TX5-186-526 # http://www.everysoft.com/ # #-########################################################################### # # This program is free software; you can redistribute it and/or # modify it under the terms of the GNU General Public License # as published by the Free Software Foundation; either version 2 # of the License, or (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. # #-########################################################################### # # Modification Log (please add new entries to bottom): # # * 02/2000 # Matt Hahnfeld (matth@everysoft.com) - Original Concept and Design # Version available from http://www.everysoft.com/ # # * MM/YYYY # Name (email) - Modification # Availability # #-########################################################################### #-############################################# # Configuration Section # Edit these variables! local %config; # The Base Directory. We need an # absolute path for the base directory. # Include the trailing slash. THIS SHOULD # NOT BE WEB-ACCESSIBLE! $config{'basepath'} = '/www/htdocs/auctiondata/'; # Closed Auction Directory # This is where closed auction items are stored. # Leave this blank if you don't want to store # closed auctions. It can potentially take # up quite a bit of disk space. $config{'closedir'} = 'closed'; # User Registration Directory # This is where user registrations are stored. # Leave this blank if you don't want to # require registration. It can potentially # take up quite a bit of disk space. $config{'regdir'} = 'reg'; # List each directory and its associated # category name. These directories should # be subdirectories of the base directory. %category = ( art => 'Art', jewelry => 'Jewelry', collectible => 'Labrador Collectibles', decor1 => 'House & Home', services => 'Professional Services', clothing => 'Clothing - Accessories', vintage => 'From The Attic - Vintage', audiovideo => 'Electronics - Audio - Video' ); # This is the password for deleting auction # items. $config{'adminpass'} = 'auction'; # You need to assign either a mail program or # a mail host so confirmation e-mails can # be sent out. # Leave one commented and one uncommented. # # YOU NEED EITHER A MAIL PROGRAM $config{'mailprog'} = '/usr/sbin/sendmail -t'; # # OR YOU NEED A MAIL HOST (SMTP) # $config{'mailhost'} = 'localhost'; # This line should be your e-mail address $config{'admin_address'} = 'LabRescueAuction@aol.com'; # This line should point to the URL of # your server. It will be used for sending # "you have been outbid" e-mail. The script # name and auction will be appended to the # end automatically, so DO NOT use a trailing # slash. If you do not want to send outbid # e-mail, leave this blank. $config{'scripturl'} = 'www.lilrr.org'; # This will let you define colors for the # tables that are generated and the # other page colors. The default colors # create a nice "professional" look. Must # be in hex format. $config{'colortablehead'} = '#000000'; $config{'colortablebody'} = '#000000'; # Site Name (will appear at the top of each page) $config{'sitename'} = 'Long Island Labrador Retriever Rescue'; # You can configure your own header which will # be appended to the top of each page. $config{'header'} =<<"EOF";
$config{'sitename'}Ongoing Online Auction |
|
EOF # You can configure your own footer which will # be appended to the bottom of each page. # Although not required, a link back to # everysoft.com will help to support future # development. $config{'footer'} =<<"EOF";
[Auction Rules]"; print " [Category List]"; print " [New Registration] [Change Registration]" if ($config{'regdir'}); print " [Closed Auctions]" if ($config{'regdir'}) and ($config{'closedir'}); print " [Post New Item]" if ($config{'newokay'}); print "
\n"; print $config{'footer'}; # #-############################################# #-############################################# # Sub: Display List Of Categories # This creates a "nice" list of categories. sub dispcat { print "| Auction Categories | Items |
| $category{$key} | $numfiles |
| Item | Num Bids | High Bid |
| $title"; print " (PIC)" if ($image); print " | $#bids | \$$bid |
|
Go back to the item\n";
my $flag=0;
my $userbid;
foreach $userbid (@userbids) {
$flag=1 if ("$form{'CATEGORY'}$form{'ITEM'}" eq $userbid);
}
if ($flag==0 && $config{'regdir'} ne "") {
&oops('We could not open the registration file. This could be a server write issue.') unless (open(REGFILE, ">>$config{'basepath'}$config{'regdir'}/$form{'ALIAS'}.dat"));
print REGFILE "\n$form{'CATEGORY'}$form{'ITEM'}";
close REGFILE;
}
&sendemail($email, $config{'admin_address'}, 'You\'ve been outbid!', "You have been outbid on $title\! If you want to place a higher bid, please visit\:\r\n\r\n\thttp://$config{'scripturl'}$ENV{'SCRIPT_NAME'}\?category=$form{'CATEGORY'}\&item=$form{'ITEM'}\r\n\r\nThe current high bid is \$$form{'BID'}.") if ($config{'scripturl'} and $#bids);
}
else {
print "Item number $form{'ITEM'} in category $form{'CATEGORY'} is now closed!
Sorry...\n";
}
}
#-#############################################
# Sub: Process Search
# This displays search results
sub procsearch {
print "
| Item | Closes | Num Bids | High Bid |
| $title"; print " [PIC]" if ($image); print " | $closetime[4]/$closetime[3] | $#bids | \$$bid |
| $title"; print " [PIC]" if ($image); print " | $closetime[4]/$closetime[3] | $#bids | \$$bid |
| This form will allow you to change your street address and/or password. | |
| Your Handle/Alias: Required for verification | |
| Your Current Password: Required for verification | |
| Your New Password: Leave blank if unchanged | |
| Your New Password Again: Leave blank if unchanged | |
| Contact Information: Leave blank if unchanged |
Full Name: Street Address: City, State, ZIP: |
| This form will allow you to register to buy or sell auction items. You must enter accurate data, and your new password will be e-mailed to you. Please be patient after hitting the submit button. Registration may take a few seconds. | |
| Your Handle/Alias: Used to track your post | |
| Your E-Mail Address: Must be valid | |
| Contact Information: Will be given out only to the buyer or seller |
Full Name: Street Address: City, State, ZIP: |
| This form will allow you to view the status and contact information for closed auction items you bid on or listed for auction. | |
| Your Username: Required for verification | |
| Your Password: Required for verification | |
Reserve was: \$$reserve
\n";
print "
\n";
if ($#bids) {
my ($alias, $email, $bid, $time, $add1, $add2, $add3) = &read_bid($bids[$#bids]);
print "Buyer Information:
Alias: $alias
E-Mail: $email
Address: $add1
$add2
$add3
High Bid: \$$bid\n"; print "
Bidder Contact Info:
\n";
for (my $i=1; $i
\n";
my ($alias, $email, $bid, $time, $add1, $add2, $add3) = &read_bid($bids[0]);
print "Seller Information:
Alias: $alias
E-Mail: $email
Address: $add1
$add2
$add3
"; my ($alias, $email, $bid, $time, $add1, $add2, $add3) = &read_bid($bids[$#bids]); print "Your High Bid: \$$bid
\n"; print "Remember, the seller is not required to sell unless your bid price was above the reserve price..."; } else { print "You were not a winner... No further contact information is available.\n"; } } #-############################################# # Sub: Admin # Allows the administrator to delete items. sub admin { print <<"EOF";
| This form will allow you to delete an item. You will need the administrator password that should be configured in the script. | |
| Category: Select One | |
| Item Number: | |
| Administrator Password: Required for verification | |
Please hit the back browser on your browser to try again or contact the auction administrator if you belive this to be a server problem.