mirror of
https://github.com/Lastorder-DC/rhymix.git
synced 2026-01-14 00:39:57 +09:00
Integrate session class with Context class and Member module
This commit is contained in:
parent
12ee156374
commit
d07bd15b80
4 changed files with 66 additions and 64 deletions
|
|
@ -101,7 +101,8 @@ class memberController extends member
|
|||
if(!$trigger_output->toBool()) return $trigger_output;
|
||||
|
||||
// Destroy session information
|
||||
$this->destroySessionInfo();
|
||||
Rhymix\Framework\Session::logout();
|
||||
$this->_clearMemberCache($logged_info->member_srl);
|
||||
|
||||
// Call a trigger after log-out (after)
|
||||
ModuleHandler::triggerCall('member.doLogout', 'after', $logged_info);
|
||||
|
|
@ -111,9 +112,9 @@ class memberController extends member
|
|||
$oModuleModel = getModel('module');
|
||||
$config = $oModuleModel->getModuleConfig('member');
|
||||
if($config->after_logout_url)
|
||||
{
|
||||
$output->redirect_url = $config->after_logout_url;
|
||||
|
||||
$this->_clearMemberCache($logged_info->member_srl);
|
||||
}
|
||||
|
||||
return $output;
|
||||
}
|
||||
|
|
@ -700,7 +701,7 @@ class memberController extends member
|
|||
$output = $this->deleteMember($member_srl);
|
||||
if(!$output->toBool()) return $output;
|
||||
// Destroy all session information
|
||||
$this->destroySessionInfo();
|
||||
Rhymix\Framework\Session::logout();
|
||||
// Return success message
|
||||
$this->setMessage('success_leaved');
|
||||
|
||||
|
|
@ -1844,6 +1845,7 @@ class memberController extends member
|
|||
}
|
||||
|
||||
$this->setSessionInfo();
|
||||
Rhymix\Framework\Session::login($this->memberInfo->member_srl);
|
||||
return $output;
|
||||
}
|
||||
|
||||
|
|
@ -1855,11 +1857,11 @@ class memberController extends member
|
|||
$oMemberModel = getModel('member');
|
||||
$config = $oMemberModel->getMemberConfig();
|
||||
// If your information came through the current session information to extract information from the users
|
||||
if(!$this->memberInfo && $_SESSION['member_srl'] && $oMemberModel->isLogged() )
|
||||
if(!$this->memberInfo && $member_srl = Rhymix\Framework\Session::getMemberSrl())
|
||||
{
|
||||
$this->memberInfo = $oMemberModel->getMemberInfoByMemberSrl($_SESSION['member_srl']);
|
||||
$this->memberInfo = $oMemberModel->getMemberInfoByMemberSrl($member_srl);
|
||||
// If you do not destroy the session Profile
|
||||
if($this->memberInfo->member_srl != $_SESSION['member_srl'])
|
||||
if($this->memberInfo->member_srl != $member_srl)
|
||||
{
|
||||
$this->destroySessionInfo();
|
||||
return;
|
||||
|
|
@ -1872,11 +1874,11 @@ class memberController extends member
|
|||
return;
|
||||
}
|
||||
// Log in for treatment sessions set
|
||||
/*
|
||||
$_SESSION['is_logged'] = true;
|
||||
$_SESSION['ipaddress'] = $_SERVER['REMOTE_ADDR'];
|
||||
$_SESSION['member_srl'] = $this->memberInfo->member_srl;
|
||||
$_SESSION['member_srl'] = $_SESSION['RHYMIX']['login'] = $this->memberInfo->member_srl;
|
||||
$_SESSION['is_admin'] = '';
|
||||
setcookie('xe_logged', 'true', 0, '/');
|
||||
*/
|
||||
// Do not save your password in the session jiwojum;;
|
||||
//unset($this->memberInfo->password);
|
||||
// User Group Settings
|
||||
|
|
@ -2582,7 +2584,7 @@ class memberController extends member
|
|||
$_SESSION[$key] = '';
|
||||
}
|
||||
|
||||
session_destroy();
|
||||
Rhymix\Framework\Session::destroy();
|
||||
setcookie(session_name(), '', $_SERVER['REQUEST_TIME']-42000, '/');
|
||||
setcookie('sso','',$_SERVER['REQUEST_TIME']-42000, '/');
|
||||
setcookie('xeak','',$_SERVER['REQUEST_TIME']-42000, '/');
|
||||
|
|
|
|||
|
|
@ -200,36 +200,9 @@ class memberModel extends member
|
|||
/**
|
||||
* @brief Check if logged-in
|
||||
*/
|
||||
function isLogged() {
|
||||
if($_SESSION['is_logged'])
|
||||
{
|
||||
if(Mobile::isFromMobilePhone())
|
||||
{
|
||||
return true;
|
||||
}
|
||||
elseif(filter_var($_SESSION['ipaddress'], FILTER_VALIDATE_IP, FILTER_FLAG_IPV6))
|
||||
{
|
||||
// IPv6: require same /48
|
||||
if(strncmp(inet_pton($_SESSION['ipaddress']), inet_pton($_SERVER['REMOTE_ADDR']), 6) == 0)
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
// IPv4: require same /24
|
||||
if(ip2long($_SESSION['ipaddress']) >> 8 == ip2long($_SERVER['REMOTE_ADDR']) >> 8)
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if(Context::getSessionStatus())
|
||||
{
|
||||
$_SESSION['is_logged'] = false;
|
||||
}
|
||||
return false;
|
||||
function isLogged()
|
||||
{
|
||||
return Rhymix\Framework\Session::getMemberSrl() ? true : false;
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
@ -238,7 +211,7 @@ class memberModel extends member
|
|||
function getLoggedInfo()
|
||||
{
|
||||
// Return session info if session info is requested and the user is logged-in
|
||||
if($this->isLogged())
|
||||
if(Rhymix\Framework\Session::getMemberSrl())
|
||||
{
|
||||
$logged_info = Context::get('logged_info');
|
||||
// Admin/Group list defined depending on site_module_info
|
||||
|
|
@ -462,8 +435,7 @@ class memberModel extends member
|
|||
*/
|
||||
function getLoggedMemberSrl()
|
||||
{
|
||||
if(!$this->isLogged()) return;
|
||||
return $_SESSION['member_srl'];
|
||||
return Rhymix\Framework\Session::getMemberSrl();
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue