From 91e55e2829761cb504d2f349a79bc3e1481ab039 Mon Sep 17 00:00:00 2001
From: Christopher Speller <crspeller@gmail.com>
Date: Tue, 6 Oct 2015 08:41:49 -0400
Subject: Fixing broken signup page

---
 web/react/components/signup_user_complete.jsx | 27 ++++++++++++++-------------
 1 file changed, 14 insertions(+), 13 deletions(-)

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

diff --git a/web/react/components/signup_user_complete.jsx b/web/react/components/signup_user_complete.jsx
index ae3075495..4e17c6d06 100644
--- a/web/react/components/signup_user_complete.jsx
+++ b/web/react/components/signup_user_complete.jsx
@@ -20,8 +20,6 @@ export default class SignupUserComplete extends React.Component {
             initialState.user = {};
             initialState.user.team_id = this.props.teamId;
             initialState.user.email = this.props.email;
-            initialState.hash = this.props.hash;
-            initialState.data = this.props.data;
             initialState.original_email = this.props.email;
         }
 
@@ -47,7 +45,7 @@ export default class SignupUserComplete extends React.Component {
             return;
         }
 
-        const usernameError = Utils.isValidUsername(this.state.user.username);
+        const usernameError = Utils.isValidUsername(providedUsername);
         if (usernameError === 'Cannot use a reserved word as a username.') {
             this.setState({nameError: 'This username is reserved, please choose a new one.', emailError: '', passwordError: '', serverError: ''});
             return;
@@ -67,26 +65,29 @@ export default class SignupUserComplete extends React.Component {
             return;
         }
 
+        const user = {
+            team_id: this.props.teamId,
+            email: providedEmail,
+            username: providedUsername,
+            password: providedPassword,
+            allow_marketing: true
+        };
+
         this.setState({
-            user: {
-                email: providedEmail,
-                username: providedUsername,
-                password: providedPassword,
-                allow_marketing: true
-            },
+            user,
             nameError: '',
             emailError: '',
             passwordError: '',
             serverError: ''
         });
 
-        client.createUser(this.state.user, this.state.data, this.state.hash,
+        client.createUser(user, this.props.data, this.props.hash,
             function createUserSuccess() {
                 client.track('signup', 'signup_user_02_complete');
 
-                client.loginByEmail(this.props.teamName, this.state.user.email, this.state.user.password,
+                client.loginByEmail(this.props.teamName, user.email, user.password,
                     function emailLoginSuccess(data) {
-                        UserStore.setLastEmail(this.state.user.email);
+                        UserStore.setLastEmail(user.email);
                         UserStore.setCurrentUser(data);
                         if (this.props.hash > 0) {
                             BrowserStore.setGlobalItem(this.props.hash, JSON.stringify({wizard: 'finished'}));
@@ -95,7 +96,7 @@ export default class SignupUserComplete extends React.Component {
                     }.bind(this),
                     function emailLoginFailure(err) {
                         if (err.message === 'Login failed because email address has not been verified') {
-                            window.location.href = '/verify_email?email=' + encodeURIComponent(this.state.user.email) + '&teamname=' + encodeURIComponent(this.props.teamName);
+                            window.location.href = '/verify_email?email=' + encodeURIComponent(user.email) + '&teamname=' + encodeURIComponent(this.props.teamName);
                         } else {
                             this.setState({serverError: err.message});
                         }
-- 
cgit v1.2.3-1-g7c22

