Пример #1
0
    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());
    }
Пример #2
0
                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');
Пример #3
0
<?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);