X-Git-Url: http://git.vanrenterghem.biz/git.ikiwiki.info.git/blobdiff_plain/c3a530ab93c01f449554d3cee472594d895e4126..ad01bcd8b49deed11f602c43d1da8235280d5d6b:/IkiWiki/CGI.pm?ds=inline diff --git a/IkiWiki/CGI.pm b/IkiWiki/CGI.pm index 3ba6cf7f8..ce4b6ada1 100644 --- a/IkiWiki/CGI.pm +++ b/IkiWiki/CGI.pm @@ -74,10 +74,13 @@ sub cgi_recentchanges ($) { #{{{ # during page builds as the return values may change, but they # won't here.) eval q{use Memoize}; + error($@) if $@; memoize("htmllink"); eval q{use Time::Duration}; + error($@) if $@; eval q{use CGI 'escapeHTML'}; + error($@) if $@; my $changelog=[rcs_recentchanges(100)]; foreach my $change (@$changelog) { @@ -114,6 +117,7 @@ sub cgi_signin ($$) { #{{{ my $session=shift; eval q{use CGI::FormBuilder}; + error($@) if $@; my $form = CGI::FormBuilder->new( title => "signin", fields => [qw(do title page subpage from name password)], @@ -148,7 +152,6 @@ sub cgi_signin ($$) { #{{{ if ($form->submitted eq "Register" || $form->submitted eq "Create Account") { $form->title("register"); $form->text(""); - $form->field(name => "name", comment => "use FirstnameLastName"); $form->fields(qw(do title page subpage from name password confirm_password email)); $form->field(name => "confirm_password", type => "password"); $form->field(name => "email", type => "text"); @@ -186,7 +189,8 @@ sub cgi_signin ($$) { #{{{ } # And make sure the entered name exists when logging # in or sending email, and does not when registering. - if ($form->submitted eq 'Create Account') { + if ($form->submitted eq 'Create Account' || + $form->submitted eq 'Register') { $form->field( name => "name", validate => sub { @@ -262,6 +266,7 @@ sub cgi_signin ($$) { #{{{ ); eval q{use Mail::Sendmail}; + error($@) if $@; sendmail( To => userinfo_get($user_name, "email"), From => "$config{wikiname} admin <$config{adminemail}>", @@ -294,6 +299,7 @@ sub cgi_prefs ($$) { #{{{ my $session=shift; eval q{use CGI::FormBuilder}; + error($@) if $@; my $form = CGI::FormBuilder->new( title => "preferences", fields => [qw(do name password confirm_password email @@ -388,6 +394,7 @@ sub cgi_editpage ($$) { #{{{ my @buttons=("Save Page", "Preview", "Cancel"); eval q{use CGI::FormBuilder; use CGI::FormBuilder::Template::HTML}; + error($@) if $@; my $renderer=CGI::FormBuilder::Template::HTML->new( fields => \@fields, template_params("editpage.tmpl"), @@ -639,8 +646,8 @@ sub cgi_editpage ($$) { #{{{ } #}}} sub cgi () { #{{{ - eval q{use CGI}; - eval q{use CGI::Session}; + eval q{use CGI; use CGI::Session}; + error($@) if $@; my $q=CGI->new; @@ -704,7 +711,7 @@ sub cgi () { #{{{ } } - if (userinfo_get($session->param("name"), "banned")) { + if (defined $session->param("name") && userinfo_get($session->param("name"), "banned")) { print $q->header(-status => "403 Forbidden"); $session->delete(); print "You are banned.";