From f5fec3a157e6c9146a0c4e28dd5f70e6c066affd Mon Sep 17 00:00:00 2001
From: JoramWilander <jwawilander@gmail.com>
Date: Fri, 28 Aug 2015 08:37:55 -0400
Subject: Added the ability to create a team with SSO services and added the
 ability to turn off email sign up.

---
 web/react/components/team_signup_choose_auth.jsx | 88 ++++++++++++++++++++++++
 1 file changed, 88 insertions(+)
 create mode 100644 web/react/components/team_signup_choose_auth.jsx

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

diff --git a/web/react/components/team_signup_choose_auth.jsx b/web/react/components/team_signup_choose_auth.jsx
new file mode 100644
index 000000000..2d35785c2
--- /dev/null
+++ b/web/react/components/team_signup_choose_auth.jsx
@@ -0,0 +1,88 @@
+// Copyright (c) 2015 Spinpunch, Inc. All Rights Reserved.
+// See License.txt for license information.
+
+var Constants = require('../utils/constants.jsx');
+
+export default class ChooseAuthPage extends React.Component {
+    constructor(props) {
+        super(props);
+        this.state = {};
+    }
+    render() {
+        var buttons = [];
+        if (this.props.services.indexOf(Constants.GITLAB_SERVICE) !== -1) {
+            buttons.push(
+                    <a
+                        className='btn btn-custom-login gitlab btn-full'
+                        href='#'
+                        onClick={
+                            function clickGit(e) {
+                                e.preventDefault();
+                                this.props.updatePage('service', Constants.GITLAB_SERVICE);
+                            }.bind(this)
+                        }
+                        >
+                        <span className='icon' />
+                        <span>Create new {strings.Team} with GitLab Account</span>
+                    </a>
+            );
+        }
+
+        if (this.props.services.indexOf(Constants.GOOGLE_SERVICE) !== -1) {
+            buttons.push(
+                    <a
+                        className='btn btn-custom-login google btn-full'
+                        href='#'
+                        onClick={
+                            function clickGoogle(e) {
+                                e.preventDefault();
+                                this.props.updatePage('service', Constants.GOOGLE_SERVICE);
+                            }.bind(this)
+                        }
+                        >
+                        <span className='icon' />
+                        <span>Create new {strings.Team} with Google Apps Account</span>
+                    </a>
+            );
+        }
+
+        if (this.props.services.indexOf(Constants.EMAIL_SERVICE) !== -1) {
+            buttons.push(
+                    <a
+                        className='btn btn-custom-login email btn-full'
+                        href='#'
+                        onClick={
+                            function clickEmail(e) {
+                                e.preventDefault();
+                                this.props.updatePage('email', '');
+                            }.bind(this)
+                        }
+                        >
+                        <span className='fa fa-envelope' />
+                        <span>Create new {strings.Team} with email address</span>
+                    </a>
+            );
+        }
+
+        if (buttons.length === 0) {
+            buttons = <span>No sign-up methods configured, please contact your system administrator.</span>;
+        }
+
+        return (
+            <div>
+                {buttons}
+                <div className='form-group margin--extra-2x'>
+                    <span><a href='/find_team'>{'Find my ' + strings.Team}</a></span>
+                </div>
+            </div>
+        );
+    }
+}
+
+ChooseAuthPage.defaultProps = {
+    services: []
+};
+ChooseAuthPage.propTypes = {
+    services: React.PropTypes.array,
+    updatePage: React.PropTypes.func
+};
-- 
cgit v1.2.3-1-g7c22

