From 5ee4836034b14809536ce5843eb75b6abfc9f2a1 Mon Sep 17 00:00:00 2001 From: wangchunsheng Date: Mon, 8 Feb 2010 03:18:59 +0000 Subject: [PATCH] * fix the error of login referer. --- module/common/control.php | 9 +++++++-- module/user/control.php | 2 +- module/user/view/deny.html.php | 4 ++-- 3 files changed, 10 insertions(+), 5 deletions(-) diff --git a/module/common/control.php b/module/common/control.php index 22fb764e24..c65f1b68cd 100644 --- a/module/common/control.php +++ b/module/common/control.php @@ -58,8 +58,13 @@ class common extends control { if(!common::hasPriv($module, $method)) { - $referer = helper::safe64Encode($_SERVER['HTTP_REFERER']); - $denyLink = $this->createLink('user', 'deny', "module=$module&method=$method&referer=$referer"); + $vars = "module=$module&method=$method"; + if(isset($_SERVER['HTTP_REFERER'])) + { + $referer = helper::safe64Encode($_SERVER['HTTP_REFERER']); + $vars .= "&referer=$referer"; + } + $denyLink = $this->createLink('user', 'deny', $vars); /* Fix the bug of IE: use js locate, can't get the referer. */ if(strpos($_SERVER['HTTP_USER_AGENT'], 'MSIE') !== false) diff --git a/module/user/control.php b/module/user/control.php index 3cb28b5551..bc15d87d33 100644 --- a/module/user/control.php +++ b/module/user/control.php @@ -324,7 +324,7 @@ class user extends control } /* ·ÃÎÊÊÜÏÞÒ³Ãæ¡£*/ - public function deny($module, $method, $refererBeforeDeny) + public function deny($module, $method, $refererBeforeDeny = '') { $this->setReferer(); $header['title'] = $this->lang->user->deny; diff --git a/module/user/view/deny.html.php b/module/user/view/deny.html.php index 17bff890a5..a7c069e53f 100644 --- a/module/user/view/deny.html.php +++ b/module/user/view/deny.html.php @@ -36,7 +36,7 @@
- +
user->deny;?>user->account, ' ', $lang->user->deny;?>
user->errorDeny, $moduleName, $methodName); echo "
"; echo html::a($this->createLink($config->default->module), $lang->index->common); - echo html::a(helper::safe64Decode($refererBeforeDeny), $lang->user->goback); + if($refererBeforeDeny) echo html::a(helper::safe64Decode($refererBeforeDeny), $lang->user->goback); echo html::a($this->createLink('user', 'logout', "referer=" . helper::safe64Encode($denyPage)), $lang->user->relogin); ?>