diff --git a/modules/member/member.controller.php b/modules/member/member.controller.php index 90d4dfe19..b81fc626d 100644 --- a/modules/member/member.controller.php +++ b/modules/member/member.controller.php @@ -553,6 +553,9 @@ } // Log-in if ($config->enable_confirm != 'Y') $this->doLogin($args->user_id); + //get redirect url from cookie and invalidate cookie + $config->redirect_url = $_COOKIE["XE_REDIRECT_URL"]; + setcookie("XE_REDIRECT_URL", '', 1); // Results $this->add('member_srl', $args->member_srl); if($config->redirect_url) $this->add('redirect_url', $config->redirect_url); diff --git a/modules/member/member.view.php b/modules/member/member.view.php index c23bfdca9..7c2466943 100644 --- a/modules/member/member.view.php +++ b/modules/member/member.view.php @@ -83,6 +83,10 @@ * @brief Display member join form **/ function dispMemberSignUpForm() { + //setcookie for redirect url in case of going to member sign up + if (!isset($_COOKIE["XE_REDIRECT_URL"])) + setcookie("XE_REDIRECT_URL", $_SERVER['HTTP_REFERER']); + $oMemberModel = &getModel('member'); // Get the member information if logged-in if($oMemberModel->isLogged()) return $this->stop('msg_already_logged'); @@ -98,7 +102,7 @@ $member_config = $oMemberModel->getMemberConfig(); Context::set('member_config', $member_config); - + global $lang; $identifierForm->title = $lang->{$member_config->identifier}; $identifierForm->name = $member_config->identifier; diff --git a/modules/message/message.view.php b/modules/message/message.view.php index 0c3f56036..015307c49 100644 --- a/modules/message/message.view.php +++ b/modules/message/message.view.php @@ -17,6 +17,8 @@ * @brief Display messages **/ function dispMessage() { + //setcookie for redirect url in case of going to member sign up + setcookie("XE_REDIRECT_URL", $_SERVER['REQUEST_URI']); // Get configurations (using module model object) $oModuleModel = &getModel('module'); $this->module_config = $config = $oModuleModel->getModuleConfig('message', $this->module_info->site_srl);