summaryrefslogtreecommitdiffstats
path: root/webapp
diff options
context:
space:
mode:
authorJoram Wilander <jwawilander@gmail.com>2017-08-02 08:44:25 -0400
committerGitHub <noreply@github.com>2017-08-02 08:44:25 -0400
commit6ff7e4ea4b23a50a65d295aae163fb96f21cdcff (patch)
tree6a6577b47bd8766bafee2e4ecb9e663138a388f0 /webapp
parent65817e13c7900ea81947e40e177459cfea8acee4 (diff)
downloadchat-6ff7e4ea4b23a50a65d295aae163fb96f21cdcff.tar.gz
chat-6ff7e4ea4b23a50a65d295aae163fb96f21cdcff.tar.bz2
chat-6ff7e4ea4b23a50a65d295aae163fb96f21cdcff.zip
Change refresh on version change to be after explicit click (#7090)
Diffstat (limited to 'webapp')
-rw-r--r--webapp/actions/global_actions.jsx13
-rw-r--r--webapp/components/admin_console/admin_console.jsx3
-rw-r--r--webapp/components/admin_console/system_users/system_users.jsx3
-rw-r--r--webapp/root.jsx20
-rw-r--r--webapp/yarn.lock2
5 files changed, 20 insertions, 21 deletions
diff --git a/webapp/actions/global_actions.jsx b/webapp/actions/global_actions.jsx
index ce14661f6..f464483cf 100644
--- a/webapp/actions/global_actions.jsx
+++ b/webapp/actions/global_actions.jsx
@@ -67,6 +67,7 @@ export function emitChannelClickEvent(channel) {
// Mark previous and next channel as read
ChannelStore.resetCounts([chan.id, oldChannelId]);
+ reloadIfServerVersionChanged();
});
// Subtract mentions for the team
@@ -593,3 +594,15 @@ export function emitPopoverMentionKeyClick(isRHS, mentionKey) {
mentionKey
});
}
+
+let serverVersion = '';
+
+export function reloadIfServerVersionChanged() {
+ const newServerVersion = Client4.getServerVersion();
+ if (serverVersion && serverVersion !== newServerVersion) {
+ console.log('Detected version update refreshing the page'); //eslint-disable-line no-console
+ window.location.reload(true);
+ }
+
+ serverVersion = newServerVersion;
+}
diff --git a/webapp/components/admin_console/admin_console.jsx b/webapp/components/admin_console/admin_console.jsx
index 99256d7d4..17670d6ab 100644
--- a/webapp/components/admin_console/admin_console.jsx
+++ b/webapp/components/admin_console/admin_console.jsx
@@ -8,6 +8,8 @@ import 'bootstrap';
import AnnouncementBar from 'components/announcement_bar';
import AdminSidebar from './admin_sidebar.jsx';
+import {reloadIfServerVersionChanged} from 'actions/global_actions.jsx';
+
export default class AdminConsole extends React.Component {
static propTypes = {
@@ -32,6 +34,7 @@ export default class AdminConsole extends React.Component {
componentWillMount() {
this.props.actions.getConfig();
+ reloadIfServerVersionChanged();
}
render() {
diff --git a/webapp/components/admin_console/system_users/system_users.jsx b/webapp/components/admin_console/system_users/system_users.jsx
index 4fbdc26d8..db8400217 100644
--- a/webapp/components/admin_console/system_users/system_users.jsx
+++ b/webapp/components/admin_console/system_users/system_users.jsx
@@ -16,6 +16,7 @@ import AnalyticsStore from 'stores/analytics_store.jsx';
import TeamStore from 'stores/team_store.jsx';
import UserStore from 'stores/user_store.jsx';
+import {reloadIfServerVersionChanged} from 'actions/global_actions.jsx';
import {getStandardAnalytics} from 'actions/admin_actions.jsx';
import {Constants, StatTypes, UserSearchOptions} from 'utils/constants.jsx';
import * as Utils from 'utils/utils.jsx';
@@ -102,7 +103,7 @@ export default class SystemUsers extends React.Component {
UserStore.addWithoutTeamChangeListener(this.updateUsersFromStore);
this.loadDataForTeam(this.state.teamId);
- this.props.actions.getTeams(0, 1000);
+ this.props.actions.getTeams(0, 1000).then(reloadIfServerVersionChanged);
}
componentWillUpdate(nextProps, nextState) {
diff --git a/webapp/root.jsx b/webapp/root.jsx
index b41654286..635c8e93b 100644
--- a/webapp/root.jsx
+++ b/webapp/root.jsx
@@ -24,11 +24,9 @@ import 'katex/dist/katex.min.css';
import store from 'stores/redux_store.jsx';
const dispatch = store.dispatch;
const getState = store.getState;
-import EventEmitter from 'mattermost-redux/utils/event_emitter';
import {viewChannel} from 'mattermost-redux/actions/channels';
-import {getClientConfig, getLicenseConfig, setUrl, setServerVersion as setServerVersionRedux} from 'mattermost-redux/actions/general';
-import {General} from 'mattermost-redux/constants';
+import {getClientConfig, getLicenseConfig, setUrl} from 'mattermost-redux/actions/general';
// Import the root of our routing tree
import rRoot from 'routes/route_root.jsx';
@@ -127,22 +125,6 @@ function renderRootComponent() {
document.getElementById('root'));
}
-let serverVersion = '';
-
-EventEmitter.on(General.CONFIG_CHANGED, setServerVersion);
-
-function setServerVersion(newServerVersion) {
- if (serverVersion && serverVersion !== newServerVersion) {
- console.log('Detected version update refreshing the page'); //eslint-disable-line no-console
- window.location.reload(true);
- }
-
- if (serverVersion !== newServerVersion) {
- serverVersion = newServerVersion;
- setServerVersionRedux(newServerVersion)(dispatch, getState);
- }
-}
-
global.window.setup_root = () => {
// Do the pre-render setup and call renderRootComponent when done
preRenderSetup(renderRootComponent);
diff --git a/webapp/yarn.lock b/webapp/yarn.lock
index 13d9c630c..6458814e3 100644
--- a/webapp/yarn.lock
+++ b/webapp/yarn.lock
@@ -5004,7 +5004,7 @@ math-expression-evaluator@^1.2.14:
mattermost-redux@mattermost/mattermost-redux#master:
version "0.0.1"
- resolved "https://codeload.github.com/mattermost/mattermost-redux/tar.gz/d3a8c94d59a687a957ca8808fbe1b9cb76077bce"
+ resolved "https://codeload.github.com/mattermost/mattermost-redux/tar.gz/b70727e1add55a9b173afc74cada1a32bf7db122"
dependencies:
deep-equal "1.0.1"
harmony-reflect "1.5.1"