aboutsummaryrefslogtreecommitdiffstats
path: root/lib/FPanel/Login.pm
diff options
context:
space:
mode:
Diffstat (limited to 'lib/FPanel/Login.pm')
-rw-r--r--lib/FPanel/Login.pm24
1 files changed, 15 insertions, 9 deletions
diff --git a/lib/FPanel/Login.pm b/lib/FPanel/Login.pm
index 506a7b8..173a34f 100644
--- a/lib/FPanel/Login.pm
+++ b/lib/FPanel/Login.pm
@@ -59,6 +59,7 @@ sub cgiapp_init {
my $ldap = Net::LDAP->new( $CFG{ldap_uri} );
my $mesg = $ldap->bind ( $bind_dn, password => $p );
+ $ldap->unbind;
$mesg->code ? 0 : $u;
} ],
STORE => 'Session',
@@ -87,23 +88,22 @@ sub setup {
print STDERR $ENV{PATH_INFO} . '?' . $q->query_string, "\n";
# The user just logged in
- return 'okay' if (defined $q->param('authen_username')) and
- (defined $q->param('authen_password'));
+ return 'okay' if defined $q->param('login');
my $a = $q->param('a');
return 'login' if defined $a and $a eq 'login';
return 'logout' if defined $a and $a eq 'logout';
- # /domain/{user,alias,list}/?requests
+ # /domain/{user,alias,list}/?query_url
my ($null,$domain,$local,$crap) = split /\//, $ENV{PATH_INFO};
- return 'DomainList' unless (defined $null) and $null eq '';
+ return 'ListDomains' unless (defined $null) and $null eq '';
unless (defined $domain and $domain ne '') {
if (defined $a) {
return 'AddDomain' if $a eq 'AddDomain';
}
- return 'DomainList';
+ return 'ListDomains';
}
unless (defined $local and $local ne '') {
@@ -111,15 +111,16 @@ sub setup {
return 'EditDomain' if $a eq 'edit';
return 'AddAccount' if $a eq 'AddAccount';
return 'AddAlias' if $a eq 'AddAlias';
+ return 'AddList' if $a eq 'AddList';
}
- return 'LocalList';
+ return 'ListLocals';
}
unless (defined $crap and $crap ne '') {
- return 'LocalEdit';
+ return 'EditLocal';
}
- return 'DomainList';
+ return 'error_404';
});
}
@@ -193,11 +194,16 @@ sub error_rm : ErrorRunmode {
my $template = $self->load_tmpl( 'error.html', cache => 1, utf8 => 1 );
$template->param( EMAIL => $self->cfg('report_email') );
$template->param( MESSAGE => $error );
- $template->param( URL => $self->query->url );
+ $template->param( URL => $self->query->url . '/');
return $template->output;
}
+sub error_404 : Runmode {
+ my $self = shift;
+ $self->header_props ( -status => '404 Not found' );
+ return '';
+}
1;