mirror of
https://github.com/mattermost/mattermost.git
synced 2025-02-25 18:55:24 -06:00
Fixed websocket to properly logout when logged out from another tab (#4546)
This commit is contained in:
@@ -461,21 +461,23 @@ export function emitRemoteUserTypingEvent(channelId, userId, postParentId) {
|
||||
});
|
||||
}
|
||||
|
||||
export function emitUserLoggedOutEvent(redirectTo) {
|
||||
const rURL = (redirectTo && typeof redirectTo === 'string') ? redirectTo : '/';
|
||||
export function emitUserLoggedOutEvent(redirectTo = '/', shouldSignalLogout = true) {
|
||||
Client.logout(
|
||||
() => {
|
||||
BrowserStore.signalLogout();
|
||||
if (shouldSignalLogout) {
|
||||
BrowserStore.signalLogout();
|
||||
}
|
||||
|
||||
BrowserStore.clear();
|
||||
ErrorStore.clearLastError();
|
||||
PreferenceStore.clear();
|
||||
UserStore.clear();
|
||||
TeamStore.clear();
|
||||
newLocalizationSelected(global.window.mm_config.DefaultClientLocale);
|
||||
browserHistory.push(rURL);
|
||||
browserHistory.push(redirectTo);
|
||||
},
|
||||
() => {
|
||||
browserHistory.push(rURL);
|
||||
browserHistory.push(redirectTo);
|
||||
}
|
||||
);
|
||||
}
|
||||
|
||||
@@ -14,8 +14,6 @@ import {loadEmoji} from 'actions/emoji_actions.jsx';
|
||||
import * as Utils from 'utils/utils.jsx';
|
||||
import Constants from 'utils/constants.jsx';
|
||||
|
||||
import {browserHistory} from 'react-router/es6';
|
||||
|
||||
const BACKSPACE_CHAR = 8;
|
||||
|
||||
import $ from 'jquery';
|
||||
@@ -41,7 +39,7 @@ export default class LoggedIn extends React.Component {
|
||||
}
|
||||
|
||||
console.log('detected logout from a different tab'); //eslint-disable-line no-console
|
||||
browserHistory.push('/');
|
||||
GlobalActions.emitUserLoggedOutEvent('/', false);
|
||||
}
|
||||
|
||||
if (e.originalEvent.key === '__login__' && e.originalEvent.storageArea === localStorage && e.originalEvent.newValue) {
|
||||
|
||||
Reference in New Issue
Block a user