Fixed a bug where 404 and 403 errors under mod perl would cause duplicate output.
This commit is contained in:
parent
d6705a0bb6
commit
a465864449
2 changed files with 45 additions and 5 deletions
|
|
@ -20,7 +20,15 @@ use WebGUI::URL;
|
|||
|
||||
#-------------------------------------------------------------------
|
||||
sub adminOnly {
|
||||
$session{header}{status} = 403;
|
||||
if($session{env}{MOD_PERL}) {
|
||||
my $r = Apache->request;
|
||||
if(defined($r)) {
|
||||
$r->custom_response(403, $session{page}{url} );
|
||||
$r->status(403);
|
||||
}
|
||||
} else {
|
||||
$session{header}{status} = 403;
|
||||
}
|
||||
my ($output, $sth, @data);
|
||||
$output = '<h1>'.WebGUI::International::get(35).'</h1>';
|
||||
$output .= WebGUI::International::get(36);
|
||||
|
|
@ -81,7 +89,15 @@ sub canViewPage {
|
|||
|
||||
#-------------------------------------------------------------------
|
||||
sub insufficient {
|
||||
$session{header}{status} = 403;
|
||||
if($session{env}{MOD_PERL}) {
|
||||
my $r = Apache->request;
|
||||
if(defined($r)) {
|
||||
$r->custom_response(403, $session{page}{url} );
|
||||
$r->status(403);
|
||||
}
|
||||
} else {
|
||||
$session{header}{status} = 403;
|
||||
}
|
||||
my ($output);
|
||||
$output = '<h1>'.WebGUI::International::get(37).'</h1>';
|
||||
$output .= WebGUI::International::get(38);
|
||||
|
|
@ -109,7 +125,15 @@ sub isInGroup {
|
|||
|
||||
#-------------------------------------------------------------------
|
||||
sub noAccess {
|
||||
$session{header}{status} = 403;
|
||||
if($session{env}{MOD_PERL}) {
|
||||
my $r = Apache->request;
|
||||
if(defined($r)) {
|
||||
$r->custom_response(403, $session{page}{url} );
|
||||
$r->status(403);
|
||||
}
|
||||
} else {
|
||||
$session{header}{status} = 403;
|
||||
}
|
||||
my ($output);
|
||||
if ($session{user}{userId} <= 1) {
|
||||
$output = WebGUI::Operation::Account::www_displayAccount();
|
||||
|
|
@ -123,7 +147,15 @@ sub noAccess {
|
|||
|
||||
#-------------------------------------------------------------------
|
||||
sub notMember {
|
||||
$session{header}{status} = 403;
|
||||
if($session{env}{MOD_PERL}) {
|
||||
my $r = Apache->request;
|
||||
if(defined($r)) {
|
||||
$r->custom_response(403, $session{page}{url} );
|
||||
$r->status(403);
|
||||
}
|
||||
} else {
|
||||
$session{header}{status} = 403;
|
||||
}
|
||||
my ($output);
|
||||
$output = '<h1>'.WebGUI::International::get(345).'</h1>';
|
||||
$output .= WebGUI::International::get(346);
|
||||
|
|
|
|||
|
|
@ -44,7 +44,15 @@ sub _getPageInfo {
|
|||
($pageId) = WebGUI::SQL->quickArray("select pageId from page where urlizedTitle='".$pageName."'",$_[1]);
|
||||
if ($pageId eq "") {
|
||||
$pageId = $_[2];
|
||||
$session{header}{status} = '404';
|
||||
if($ENV{"MOD_PERL"}) {
|
||||
my $r = Apache->request;
|
||||
if(defined($r)) {
|
||||
$r->custom_response(404, $session{page}{url} );
|
||||
$r->status(404);
|
||||
}
|
||||
} else {
|
||||
$session{header}{status} = '404';
|
||||
}
|
||||
}
|
||||
} else {
|
||||
$pageId = $session{setting}{defaultPage};
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue