more Lintadas work, etc.

This commit is contained in:
david 2002-04-14 15:19:27 +00:00
parent ab7d15d7c5
commit 1d51e7b5e1
4 changed files with 45 additions and 42 deletions

View File

@ -35,6 +35,7 @@ use Exporter;
AddDoc,
SaveDoc,
Lintadas,
LintadasDoc,
DocFiles,
DocErrors,
@ -824,7 +825,7 @@ sub ReviewStatusCombo {
my $selected = shift;
my %reviewstatuses = ReviewStatuses();
my $reviewstatuscombo = "<select name='review_status'>\n";
$reviewstatuscombo .= "<option></option\n";
$reviewstatuscombo .= "<option></option>\n";
foreach $reviewstatus (sort { $reviewstatuses{$a}{name} cmp $reviewstatuses{$b}{name} } keys %reviewstatuses) {
if ($selected eq $reviewstatus) {
$reviewstatuscombo .= "<option value='$reviewstatus' selected>$reviewstatuses{$reviewstatus}{name}</option>\n";
@ -841,7 +842,7 @@ sub TechReviewStatusCombo {
my $selected = shift;
my %reviewstatuses = ReviewStatuses();
my $reviewstatuscombo = "<select name='tech_review_status'>\n";
$reviewstatuscombo .= "<option></option\n";
$reviewstatuscombo .= "<option></option>\n";
foreach $reviewstatus (sort { $reviewstatuses{$a}{name} cmp $reviewstatuses{$b}{name} } keys %reviewstatuses) {
if ($selected eq $reviewstatus) {
$reviewstatuscombo .= "<option value='$reviewstatus' selected>$reviewstatuses{$reviewstatus}{name}</option>\n";
@ -1401,6 +1402,7 @@ sub DocTable {
my ($self, $doc_id) = @_;
if ($doc_id) {
my %doc = Doc($foo, $doc_id);
LintadasDoc($foo, $doc_id);
} else {
my %doc = ();
$doc{dtd} = "DocBook";
@ -1421,9 +1423,21 @@ sub DocTable {
$doctable .= "<th align=right>Title</th><td colspan=5><input type=text name=title size=60 style='width:100%' value='$doc{title}'></td>\n";
$doctable .= "</tr>\n";
$doctable .= "<tr>\n";
$doctable .= "<th align=right><a href='$doc{url}'>URL</a></th><td colspan=5><input type=text name=url size=60 style='width:100%' value='$doc{url}'></td>";
$doctable .= "<th align=right>";
if ($doc{url}) {
$doctable .= "<a href='$doc{url}'>URL</a>";
} else {
$doctable .= "URL";
}
$doctable .= "</th><td colspan=5><input type=text name=url size=60 style='width:100%' value='$doc{url}'></td>";
$doctable .= "</tr>\n<tr>\n";
$doctable .= "<th align=right><a href='$ref_url'>Home URL</a></th><td colspan=5><input type=text name=ref_url size=60 style='width:100%' value='$doc{ref_url}'></td>";
$doctable .= "<th align=right>";
if ($ref_url) {
$doctable .= "<a href='$ref_url'>Home URL</a>";
} else {
$doctable .= "Home URL";
}
$doctable .= "</th><td colspan=5><input type=text name=ref_url size=60 style='width:100%' value='$doc{ref_url}'></td>";
$doctable .= "</tr>\n<tr>\n";
$doctable .= "<th align=right>Status</th><td>";
$doctable .= PubStatusCombo($foo, $doc{pub_status});
@ -2284,17 +2298,15 @@ sub Logout {
sub AddUser {
use String::Random;
my ($self, $username, $first_name, $middle_name, $surname, $email, $admin, $password, $notes) = @_;
my $message = '';
if ($username and $email) {
$count = $DB->Value("SELECT COUNT(*) FROM username WHERE username='$username'");
if ($count) {
StartPage($foo, 'Duplicate Account');
print "<p>The username you requested, '$username', is already taken.\n";
$message = "The username you requested, '$username', is already taken.\n";
} else {
$count = $DB->Value("SELECT COUNT(*) FROM username WHERE email='$email'");
if ($count) {
StartPage($foo, 'Duplicate Account');
print "<p>There is already an account using your email address.\n";
$message = "There is already an account using your email address.\n";
} else {
unless ($password) {
my $pwgen = new String::Random;
@ -2308,25 +2320,21 @@ sub AddUser {
if ($newuser{username} eq $username) {
StartPage($foo, 'Account Created');
Mail($foo, $email, 'Lampadas Password', "Your Lampadas password is $password");
print "<p>Your account has been created.\n";
print "<p>Your password has been mailed to your email address,\n";
print "and you can use it to log in.\n";
print "Once you log in for the first time,\n";
print "you can change your password.\n";
$message = "Your account has been created.\n";
$message .= "<p>Your password has been mailed to your email address,\n";
$message .= "and you can use it to log in.\n";
$message .= "Once you log in for the first time,\n";
$message .= "you can change your password.\n";
} else {
StartPage($foo, 'Error Creating Account');
print "<p>There was an error creating your account.\n";
print "Please try again, and if the problem persists, notify the webmaster.\n";
$message = "There was an error creating your account.\n";
$message .= "Please try again, and if the problem persists, notify the webmaster.\n";
}
}
}
} else {
StartPage($foo, 'Missing Information');
print "<p>You didn't fill out all of the fields in the form.\n";
$message = "You didn't fill out all of the fields in the form.\n";
}
EndPage();
return $message;
}
sub SaveUser {

View File

@ -5,7 +5,6 @@
#
use Lampadas;
$L = new Lampadas;
use Lampadas::Database;
$DB = new Lampadas::Database;
@ -19,21 +18,21 @@ $DB = new Lampadas::Database;
#Roles();
#Classes();
#PubStatuses();
#ReviewStatuses();
ReviewStatuses();
#Licenses();
#Topics();
##Topics();
#Subtopics();
#Formats();
#DTDs();
#Users();
#Docs();
#Config();
#NewUser();
#AddUser();
#NavBar();
#RoleCombo();
#ClassCombo();
#PubStatusCombo();
#ReviewStatusCombo();
ReviewStatusCombo();
#TechReviewStatusCombo();
#LicenseCombo();
#TopicCombo();
@ -44,7 +43,7 @@ $DB = new Lampadas::Database;
#UserTable(11);
#UserDocsTable(11);
#DocTable(471);
#NewDocTable();
#DocTable();
#DocVersionsTable(471);
#DocUsersTable(471);
#DocTopicsTable(471);
@ -56,7 +55,9 @@ $DB = new Lampadas::Database;
#MiscStatsTable();
#TopicDocsTable();
#Lintadas();
DocErrorsTable(1);
#DocErrorsTable(1);
print "All tests run.\n\n";
sub Topic {
my $topic_num = shift;
@ -258,8 +259,9 @@ sub Config {
print "\n";
}
sub NewUser {
%newuser = $L->NewUser('test user', 'test', 'x.', 'user', 'test@example.com', 't', 'password');
sub AddUser {
$DB->Exec("DELETE FROM username WHERE username='test user'");
%newuser = $L->AddUser('test user', 'test', 'x.', 'user', 'test@example.com', 't', 'password', 'notes!');
print "New User: " . $newuser{username} . "\n";
print "\n";
$DB->Exec("DELETE FROM username WHERE username='test user'");
@ -358,12 +360,6 @@ sub DocTable {
print "\n";
}
sub NewDocTable {
print "NewDocTable:\n";
print $L->NewDocTable();
print "\n";
}
sub DocVersionsTable {
my $doc_id = shift;
print "DocVersionsTable:\n";

View File

@ -10,5 +10,7 @@ $surname = $L->Param('surname');
$email = $L->Param('email');
$admin = $L->Param('admin');
%newuser = $L->AddUser($username, $first_name, $middle_name, $surname, $email, $admin, '');
$L->Redirect("user_edit.pl?user_id" . $newuser{id});
$message = $L->AddUser($username, $first_name, $middle_name, $surname, $email, $admin, '');
$L->StartPage("Creating New Account");
print $message;
$L->EndPage();

View File

@ -1,10 +1,7 @@
#! /usr/bin/perl
use Lampadas;
use Lampadas::Database;
$L = new Lampadas;
$DB = new Lampadas::Database;
# Read parameters
$user_id = $L->Param('user_id');