From 86a7743205c7c8ce839a042bb7bc7c4132bcfcc6 Mon Sep 17 00:00:00 2001
From: =Corey Hulen <corey@hulen.com>
Date: Thu, 27 Aug 2015 11:43:46 -0700
Subject: MM-1032 auto-login after tream creation

---
 web/react/components/team_signup_password_page.jsx | 38 ++++++++++++----------
 1 file changed, 21 insertions(+), 17 deletions(-)

(limited to 'web/react/components/team_signup_password_page.jsx')

diff --git a/web/react/components/team_signup_password_page.jsx b/web/react/components/team_signup_password_page.jsx
index e4f35f100..bbe82a5c2 100644
--- a/web/react/components/team_signup_password_page.jsx
+++ b/web/react/components/team_signup_password_page.jsx
@@ -31,31 +31,35 @@ module.exports = React.createClass({
         teamSignup.user.allow_marketing = true;
         delete teamSignup.wizard;
 
-        // var ctl = this;
-
         client.createTeamFromSignup(teamSignup,
             function success() {
                 client.track('signup', 'signup_team_08_complete');
 
                 var props = this.props;
 
-                $('#sign-up-button').button('reset');
-                props.state.wizard = 'finished';
-                props.updateParent(props.state, true);
+                
+                client.loginByEmail(teamSignup.team.name, teamSignup.team.email, teamSignup.user.password,
+                    function(data) {
+                        UserStore.setLastEmail(teamSignup.team.email);
+                        UserStore.setCurrentUser(teamSignup.user);
+                        if (this.props.hash > 0) {
+                            BrowserStore.setGlobalItem(this.props.hash, JSON.stringify({wizard: 'finished'}));
+                        }
 
-                window.location.href = utils.getWindowLocationOrigin() + '/' + props.state.team.name + '/login?email=' + encodeURIComponent(teamSignup.team.email);
+                        $('#sign-up-button').button('reset');
+                        props.state.wizard = 'finished';
+                        props.updateParent(props.state, true);
 
-                // client.loginByEmail(teamSignup.team.domain, teamSignup.team.email, teamSignup.user.password,
-                //     function(data) {
-                //         TeamStore.setLastName(teamSignup.team.domain);
-                //         UserStore.setLastEmail(teamSignup.team.email);
-                //         UserStore.setCurrentUser(data);
-                //         window.location.href = '/channels/town-square';
-                //     }.bind(ctl),
-                //     function(err) {
-                //         this.setState({nameError: err.message});
-                //     }.bind(ctl)
-                // );
+                        window.location.href = '/';
+                    }.bind(this),
+                    function(err) {
+                        if (err.message === 'Login failed because email address has not been verified') {
+                            window.location.href = '/verify_email?email=' + encodeURIComponent(teamSignup.team.email) + '&teamname=' + encodeURIComponent(teamSignup.team.name);
+                        } else {
+                            this.setState({serverError: err.message});
+                        }
+                    }.bind(this)
+                );
             }.bind(this),
             function error(err) {
                 this.setState({serverError: err.message});
-- 
cgit v1.2.3-1-g7c22

