public static function logoutUser() { session_destroy(); if( UserLog::canStore() ) { $user = MMUsers::getCurrentUserObject(); UserLog::instance()->action('logout'); if( $user ) UserLog::instance()->uuid( $user->attribute( 'uuid' ) ); else UserLog::instance()->uuid('Unknown')->msg('Logout called for not logged in user'); UserLog::instance()->store(); } AppBarControl::instance()->store(); $user = eZUser::instance(); // Remove all temporary drafts eZContentObject::cleanupAllInternalDrafts( $user->attribute( 'contentobject_id' ) ); // destroy t3 cookies // temporary fix - we are reaching the header size limit // self::destroyApplicationCookie( 't3process' ); MMSelections::destroyCookie(); MMUsers::destroyCookieUserPreferences(); CookieTool::destroyCookie( 'catchUpSpe' ); CookieTool::destroyCookie( 'displayToUPPPopin' ); CookieTool::destroyCookie( 'displayToUPPPopin', '/', null ); CookieTool::destroyCookie( 'displayToUPPPage' ); CookieTool::destroyCookie( 'displayToUPPPage', '/', null ); CookieTool::destroyCookie( MMUsers::COOKIE_KEY ); CookieTool::destroyCookie(session_name()); }
if ($chosenGroupURI) { // if we've chose an URI from one of the user's groups. $redirectionURI = $chosenGroupURI; } } } } $userID = 0; if ($user instanceof eZUser) { $userID = $user->id(); } if ($userID > 0) { $http->removeSessionVariable('eZUserLoggedInID'); $http->setSessionVariable('eZUserLoggedInID', $userID); // Remove all temporary drafts eZContentObject::cleanupAllInternalDrafts($userID); return $Module->redirectTo($redirectionURI); } } else { // called from outside of a template (?) $requestedURI = $GLOBALS['eZRequestedURI']; if ($requestedURI instanceof eZURI) { $requestedModule = $requestedURI->element(0, false); $requestedView = $requestedURI->element(1, false); if ($requestedModule != 'user' or $requestedView != 'login') { $userRedirectURI = $requestedURI->originalURIString(false); } } } if ($http->hasPostVariable("RegisterButton")) { $Module->redirectToView('register');
<?php /** * @copyright Copyright (C) eZ Systems AS. All rights reserved. * @license For full copyright and license information view LICENSE file distributed with this source code. * @version 2014.11.1 * @package kernel */ $http = eZHTTPTool::instance(); $user = eZUser::instance(); // Remove all temporary drafts eZContentObject::cleanupAllInternalDrafts($user->attribute('contentobject_id')); $user->logoutCurrent(); $http->setSessionVariable('force_logout', 1); $ini = eZINI::instance(); if ($ini->variable('UserSettings', 'RedirectOnLogoutWithLastAccessURI') == 'enabled' && $http->hasSessionVariable('LastAccessesURI')) { $redirectURL = $http->sessionVariable("LastAccessesURI"); } else { $redirectURL = $http->postVariable('RedirectURI', $ini->variable('UserSettings', 'LogoutRedirect')); } return $Module->redirectTo($redirectURL);