From ec88e02ad4f533f026f99a15fe1483ea38142b28 Mon Sep 17 00:00:00 2001
From: Maxi Redigonda <maxiredigonda@gmail.com>
Date: Mon, 18 Nov 2019 16:34:33 -0300
Subject: [PATCH] Removes duplicated code in wrapper component, and redirects
 users after signup.

---
 .../panel/users/admin-panel-list-users.js     |  1 -
 .../app/main/main-signup/main-signup-page.js  | 64 +------------------
 .../main/main-signup/main-signup-widget.js    |  5 +-
 3 files changed, 4 insertions(+), 66 deletions(-)

diff --git a/client/src/app/admin/panel/users/admin-panel-list-users.js b/client/src/app/admin/panel/users/admin-panel-list-users.js
index e32e23ca..17872138 100644
--- a/client/src/app/admin/panel/users/admin-panel-list-users.js
+++ b/client/src/app/admin/panel/users/admin-panel-list-users.js
@@ -13,7 +13,6 @@ import Button from 'core-components/button';
 import Message from 'core-components/message';
 import Icon from 'core-components/icon';
 import ModalContainer from 'app-components/modal-container';
-import MainSignUpWidget from 'app/main/main-signup/main-signup-widget';
 import InviteUserWidget from 'app/admin/panel/users/invite-user-widget';
 
 class AdminPanelListUsers extends React.Component {
diff --git a/client/src/app/main/main-signup/main-signup-page.js b/client/src/app/main/main-signup/main-signup-page.js
index b0634ea8..793090ca 100644
--- a/client/src/app/main/main-signup/main-signup-page.js
+++ b/client/src/app/main/main-signup/main-signup-page.js
@@ -1,7 +1,5 @@
 import React              from 'react';
-import ReactDOM           from 'react-dom';
 
-import Widget             from 'core-components/widget';
 import MainSignUpWidget   from 'app/main/main-signup/main-signup-widget';
 
 class MainSignUpPage extends React.Component {
@@ -9,70 +7,10 @@ class MainSignUpPage extends React.Component {
     render() {
         return (
             <div className="main-signup-page">
-                <MainSignUpWidget {...this.props} className="col-md-6 col-md-offset-3" />
+                <MainSignUpWidget className="col-md-6 col-md-offset-3" />
             </div>
         );
     }
-
-    renderMessage() {
-        switch (this.state.message) {
-            case 'success':
-                return <Message type="success">{i18n('SIGNUP_SUCCESS')}</Message>;
-            case 'fail':
-                return <Message type="error">{i18n('EMAIL_EXISTS')}</Message>;
-            default:
-                return null;
-        }
-    }
-
-    getFormProps() {
-        return {
-            loading: this.state.loading,
-            className: 'signup-widget__form',
-            onSubmit: this.onSignupFormSubmit.bind(this)
-        };
-    }
-
-    getInputProps(password) {
-        return {
-            className: 'signup-widget__input',
-            fieldProps: {
-                size: 'medium',
-                password: password
-            }
-        };
-    }
-
-    onSignupFormSubmit(formState) {
-        const captcha = this.refs.captcha.getWrappedInstance();
-
-        if (!captcha.getValue()) {
-            captcha.focus();
-        } else {
-            this.setState({
-                loading: true
-            });
-
-            API.call({
-                path: '/user/signup',
-                data: _.extend({captcha: captcha.getValue()}, formState)
-            }).then(this.onSignupSuccess.bind(this)).catch(this.onSignupFail.bind(this));
-        }
-    }
-
-    onSignupSuccess() {
-        this.setState({
-            loading: false,
-            message: 'success'
-        });
-    }
-
-    onSignupFail() {
-        this.setState({
-            loading: false,
-            message: 'fail'
-        });
-    }
 }
 
 export default MainSignUpPage;
diff --git a/client/src/app/main/main-signup/main-signup-widget.js b/client/src/app/main/main-signup/main-signup-widget.js
index ce99dc3d..b0a77964 100644
--- a/client/src/app/main/main-signup/main-signup-widget.js
+++ b/client/src/app/main/main-signup/main-signup-widget.js
@@ -1,10 +1,10 @@
 import React              from 'react';
-import ReactDOM           from 'react-dom';
 import _                  from 'lodash';
 import classNames         from 'classnames';
 
 import i18n               from 'lib-app/i18n';
 import API                from 'lib-app/api-call';
+import history            from 'lib-app/history';
 
 import Captcha            from 'app/main/captcha';
 import SubmitButton       from 'core-components/submit-button';
@@ -17,7 +17,6 @@ import Header             from 'core-components/header';
 class MainSignUpWidget extends React.Component {
 
     static propTypes = {
-        onSuccess: React.PropTypes.func,
         className: React.PropTypes.string
     };
 
@@ -153,6 +152,8 @@ class MainSignUpWidget extends React.Component {
         this.setState({
             loading: false,
             message: 'success'
+        }, () => {
+            setTimeout(() => {history.push('/check-ticket')}, 2000);
         });
     }