#!/usr/bin/perl
my $r = Apache->request;
print "HTTP/1.1 200 OK
Server: Apache/1.3b3 mod_perl/1.08
";
use DBI;
use strict 'vars';
require 'ctime.pl';
use slashmod;
my ($imagedir,$rootdir,$datadir)=slashmod::config();
my $dbh;
sub main
{
$dbh ||= slashmod::dbconnect();
my %FORM = slashmod::getform();
my %COOKIES = slashmod::getcookies();
my ($aid, $thisuser, $error, $email, $url, $seclev)=("", "","","","",0);
if ($COOKIES{session} ne "") {
($aid,$seclev)=slashmod::getadmininfo($COOKIES{session});
}
if (defined $FORM{aid} and defined $FORM{pwd}) {
($aid,$seclev)=slashmod::setadmininfo($FORM{aid},$FORM{pwd});
}
($thisuser,$email,$url)=slashmod::getuserinfo($COOKIES{userinfo});
$thisuser=$aid;
print "Content-Type: text/html\n\n";
slashmod::header("Slashdot Admin","nohead");
print "
";
$cursor->finish;
}
sub topiced
{
my (%FORM)=@_;
if($FORM{tid} ne "") {
$dbh->do("DELETE from topics WHERE tid='$FORM{tid}'");
$dbh->do("INSERT into topics VALUES('$FORM{tid}','$FORM{image}',
'$FORM{alttext}','$FORM{width}',
'$FORM{height}')");
}
print "
";
}
sub blockadmin
{
my (%FORM)=@_;
slashmod::titlebar("98%","Block:$FORM{bid}");
print "";
}
sub listvars
{
my $c=$dbh->prepare("SELECT name,value,description FROM vars");
$c->execute();
print "
";
}
sub savevars
{
my (%FORM)=@_;
# Update Each Var
foreach (keys %FORM) {
if(not /new_/ and $_ ne "op" and $_ ne "submit") {
slashmod::setvar($_,$FORM{$_});
print "$_ = $FORM{$_} ";
}
}
$dbh->do("DELETE from vars where value=''");
if($FORM{new_name} ne "") {
print "Inserting $FORM{new_name} ";
slashmod::newvar($FORM{new_name}, $FORM{new_value}, $FORM{new_desc});
}
}
sub listauthors
{
my $c=$dbh->prepare("SELECT aid,name,url,email,pwd,seclev, copy,quote FROM authors");
$c->execute();
print "";
}
sub saveauthors
{
my (%FORM)=@_;
my @authors;
# Get the list of all
my $c=$dbh->prepare("SELECT aid FROM authors");
$c->execute();
while(my ($aid)=$c->fetchrow) {
push @authors, $aid;
}
$c->finish();
foreach my $key (@authors) {
print "Updating $key ".$FORM{$key."_email"}." ";
my $c=$dbh->prepare("UPDATE authors SET
pwd='".$FORM{$key."_pwd"}."',
email='".$FORM{$key."_email"}."',
seclev='".$FORM{$key."_seclev"}."',
name='".$FORM{$key."_name"}."',
url='".$FORM{$key."_url"}."',
copy='".$FORM{$key."_copy"}."',
quote='".$FORM{$key."_quote"}."'
WHERE aid='$key'");
$c->execute();
$c->finish();
}
$dbh->do("DELETE from authors where seclev=0");
# Insert Newbie
if($FORM{new_aid} ne "") {
$dbh->do("INSERT into authors
VALUES('$FORM{new_aid}', '$FORM{new_name}',
'$FORM{new_url}', '$FORM{new_email}',
'','',
'$FORM{new_pwd}', $FORM{new_seclev})");
print "Inserted $FORM{new_aid}\n ";
}
}
sub blocklist()
{
my $c=$dbh->prepare("SELECT block,bid FROM blocks");
$c->execute();
print "