summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorCorey Hulen <corey@hulen.com>2017-06-29 12:40:13 -0700
committerGitHub <noreply@github.com>2017-06-29 12:40:13 -0700
commitf79101a279596566d6ee7076d9c8adbc259d97ed (patch)
tree8162690050436443d1a2132bc6e8c1b896795d68
parent5d239317dc71d73c63b466bc61a472e5fa39a76e (diff)
downloadchat-f79101a279596566d6ee7076d9c8adbc259d97ed.tar.gz
chat-f79101a279596566d6ee7076d9c8adbc259d97ed.tar.bz2
chat-f79101a279596566d6ee7076d9c8adbc259d97ed.zip
Fixes issues with the tutorial (#6786)
* PLT-6907 Increased hit area for tutorial * PLT-6907 Show the tutorial no matter what channel you're in * Fixing eslint issue
-rw-r--r--webapp/components/channel_view.jsx13
-rw-r--r--webapp/components/needs_team/needs_team.jsx10
-rw-r--r--webapp/components/tutorial/tutorial_tip.jsx5
-rw-r--r--webapp/routes/route_team.jsx12
4 files changed, 16 insertions, 24 deletions
diff --git a/webapp/components/channel_view.jsx b/webapp/components/channel_view.jsx
index 7e2f8069c..6c2157ffd 100644
--- a/webapp/components/channel_view.jsx
+++ b/webapp/components/channel_view.jsx
@@ -5,13 +5,19 @@ import $ from 'jquery';
import PropTypes from 'prop-types';
import React from 'react';
+import Constants from 'utils/constants.jsx';
import * as UserAgent from 'utils/user_agent.jsx';
import ChannelHeader from 'components/channel_header.jsx';
import FileUploadOverlay from 'components/file_upload_overlay.jsx';
import CreatePost from 'components/create_post.jsx';
import PostView from 'components/post_view';
+import TutorialView from 'components/tutorial/tutorial_view.jsx';
+const TutorialSteps = Constants.TutorialSteps;
+const Preferences = Constants.Preferences;
import ChannelStore from 'stores/channel_store.jsx';
+import PreferenceStore from 'stores/preference_store.jsx';
+import UserStore from 'stores/user_store.jsx';
import * as Utils from 'utils/utils.jsx';
@@ -27,7 +33,8 @@ export default class ChannelView extends React.Component {
}
getStateFromStores() {
return {
- channelId: ChannelStore.getCurrentId()
+ channelId: ChannelStore.getCurrentId(),
+ tutorialStep: PreferenceStore.getInt(Preferences.TUTORIAL_STEP, UserStore.getCurrentId(), 999)
};
}
isStateValid() {
@@ -66,6 +73,10 @@ export default class ChannelView extends React.Component {
return false;
}
render() {
+ if (this.state.tutorialStep <= TutorialSteps.INTRO_SCREENS) {
+ return (<TutorialView/>);
+ }
+
return (
<div
id='app-content'
diff --git a/webapp/components/needs_team/needs_team.jsx b/webapp/components/needs_team/needs_team.jsx
index e86e4fb11..ba3200b43 100644
--- a/webapp/components/needs_team/needs_team.jsx
+++ b/webapp/components/needs_team/needs_team.jsx
@@ -6,7 +6,6 @@ import PropTypes from 'prop-types';
import $ from 'jquery';
-import {browserHistory} from 'react-router/es6';
import * as Utils from 'utils/utils.jsx';
import TeamStore from 'stores/team_store.jsx';
import UserStore from 'stores/user_store.jsx';
@@ -18,7 +17,6 @@ import {startPeriodicSync, stopPeriodicSync} from 'actions/websocket_actions.jsx
import {loadProfilesForSidebar} from 'actions/user_actions.jsx';
import Constants from 'utils/constants.jsx';
-const TutorialSteps = Constants.TutorialSteps;
const Preferences = Constants.Preferences;
import AnnouncementBar from 'components/announcement_bar';
@@ -102,14 +100,6 @@ export default class NeedsTeam extends React.Component {
}
}
- componentWillMount() {
- // Go to tutorial if we are first arriving
- const tutorialStep = PreferenceStore.getInt(Preferences.TUTORIAL_STEP, UserStore.getCurrentId(), 999);
- if (tutorialStep <= TutorialSteps.INTRO_SCREENS) {
- browserHistory.push(TeamStore.getCurrentTeamRelativeUrl() + '/tutorial');
- }
- }
-
componentDidMount() {
TeamStore.addChangeListener(this.onTeamChanged);
PreferenceStore.addChangeListener(this.onPreferencesChanged);
diff --git a/webapp/components/tutorial/tutorial_tip.jsx b/webapp/components/tutorial/tutorial_tip.jsx
index 52b0ff296..2db8c6cea 100644
--- a/webapp/components/tutorial/tutorial_tip.jsx
+++ b/webapp/components/tutorial/tutorial_tip.jsx
@@ -138,7 +138,10 @@ export default class TutorialTip extends React.Component {
}
return (
- <div className={'tip-div ' + this.props.overlayClass}>
+ <div
+ className={'tip-div ' + this.props.overlayClass}
+ onClick={this.toggle}
+ >
<img
className='tip-button'
src={tutorialGifImage}
diff --git a/webapp/routes/route_team.jsx b/webapp/routes/route_team.jsx
index 59cf6d673..69dd517a0 100644
--- a/webapp/routes/route_team.jsx
+++ b/webapp/routes/route_team.jsx
@@ -328,18 +328,6 @@ export default {
(comarr) => callback(null, {team_sidebar: comarr[0].default, sidebar: comarr[1].default, center: comarr[2].default})
);
}
- },
- {
- path: 'tutorial',
- getComponents: (location, callback) => {
- Promise.all([
- System.import('components/team_sidebar'),
- System.import('components/sidebar.jsx'),
- System.import('components/tutorial/tutorial_view.jsx')
- ]).then(
- (comarr) => callback(null, {team_sidebar: comarr[0].default, sidebar: comarr[1].default, center: comarr[2].default})
- );
- }
}
]
}