diff --git a/class2.php b/class2.php index 872fcd85f..cb52df327 100644 --- a/class2.php +++ b/class2.php @@ -845,15 +845,17 @@ if (($_SERVER['QUERY_STRING'] == 'logout')/* || (($pref['user_tracking'] == 'ses // earlier event trigger with user data still available e107::getEvent()->trigger('logout'); - + + // first model logout and session destroy.. + e107::getUser()->logout(); + + // it might be removed soon if ($pref['user_tracking'] == 'session') { session_destroy(); $_SESSION[e_COOKIE]=''; } - cookie(e_COOKIE, '', (time() - 2592000)); - e107::getUser()->logout(); e107::getRedirect()->redirect(SITEURL); // header('location:'.e_BASE.'index.php'); diff --git a/e107_handlers/user_model.php b/e107_handlers/user_model.php index 80325f7fc..ced4e2abe 100644 --- a/e107_handlers/user_model.php +++ b/e107_handlers/user_model.php @@ -1105,7 +1105,8 @@ class e_user extends e_user_model $this->_extended_model = $this->_parent_extmodel; $this->_extended_structure = $this->_parent_extstruct; $this->_user_config = $this->_parent_config; - $this->setData($this->_parent_model->getData()); + if($this->_parent_model) + $this->setData($this->_parent_model->getData()); // cleanup $this->_parent_id = false;