#!/usr/bin/perl use JDB; use strict; no strict 'vars'; use POSIX; use CGI::Pretty qw(:standard -any -no_xhtml -oldstyle_urls); use CGI::Carp qw(fatalsToBrowser set_message); # supposed to echo STDERR to browser, too # ************************************************************************* # GLOBAL PARAMETERS: local $DEFAULT_TITLE = "Forums"; local $DB_FILENAME = "forums.db"; local @VISIBLE_FIELDS = ('Name', 'Topics'); local $ALWAYS_SORT = "Name"; local $ADMIN = 'hypert'; set_message("Please contact $ADMIN with this error message and the date and time (" . localtime(time()). ")."); # Part of CGI::Carp our $SCRIPT_REV = do{ q$Revision: 1.1 $ =~ /(\d+)\.(\d+)([^ ]*)/; sprintf "%d.%02d%s", $1, $2, $3; }; # Optional variables for adding items to the database: local @ADD_FIELDS = ('Name', 'Name URL', 'Topics'); local @REQUIRED_FIELDS = @ADD_FIELDS; # all fields are required for now local %ADD_COMMENTS; $ADD_COMMENTS{'Name'} = "Enter the name of this forum."; $ADD_COMMENTS{'Name URL'} = "Enter the URL for this listing (i.e., http://www...)."; $ADD_COMMENTS{'Topics'} = "Enter the main topic(s) for this forum."; my $TOP_LEVEL_INTERNAL = "../"; my $TOP_LEVEL_EXTERNAL = "/"; local $IMAGES_DIR = $TOP_LEVEL_EXTERNAL . "pics/"; local $ALLOW_EDITS = 0; local $SHOW_ALL_BY_DEFAULT = 1; if ($ENV{"HTTP_HOST"} eq "hypert") { $ALLOW_EDITS = 1 } local $DB_FILE_INTERNAL = $TOP_LEVEL_INTERNAL . "databases/" . $DB_FILENAME; my $TIMESTAMP = ((localtime)[5]+1900) . "_" . ((localtime)[4]+1) . "_" . (localtime)[3] . "_" . (localtime)[2] . "_" . (localtime)[1] . "_" . (localtime)[0]; local $BACKUP_DIR = $TOP_LEVEL_INTERNAL . "databases/backup/"; local $RECORD_DELIMETER = "######################################################################\n"; local $FIELD_DELIMETER = "\n"; local $KEY_VALUE_DELIMETER = ": "; # Do NOT touch any of the variables defined from the $QUERY! # Also, many of these variables (like $SORT_KEY) can have spaces, etc., # in them, so remember to use uri_escape($SORT_KEY) when using the variables # in links. local $QUERY = new CGI ; local $SCRIPT_NAME = $QUERY->script_name; # automatically drops arguments after "?" local $ACTION = $QUERY->param ('action'); local $RECORD_ORIG = $QUERY->param ('record_orig'); local $RECORD_EDIT = $QUERY->param ('record_edit'); local $SORT_KEY = $QUERY->param('sortKey') || "Topics"; local $GROUPING = $QUERY->param('grouping'); local $FILTER_KEY = $QUERY->param('filterKey'); local $FILTER_VALUE = $QUERY->param('filterValue') if ($FILTER_KEY); local $CUSTOM_INTRO = ""; if ($ALLOW_EDITS) { $CUSTOM_INTRO = "

\n"; } # ************************************************************************* JDB_Main(); exit ;