From 463fd8c20b6e20d1cc669810c339770b9b1ede41 Mon Sep 17 00:00:00 2001
From: JoramWilander <jwawilander@gmail.com>
Date: Thu, 17 Mar 2016 15:46:16 -0400
Subject: Add the ability to switch from email to ldap and back

---
 webapp/components/claim/claim.jsx | 88 +++++++++++++++++++++++++++++++++++++++
 1 file changed, 88 insertions(+)
 create mode 100644 webapp/components/claim/claim.jsx

(limited to 'webapp/components/claim/claim.jsx')

diff --git a/webapp/components/claim/claim.jsx b/webapp/components/claim/claim.jsx
new file mode 100644
index 000000000..0254897f9
--- /dev/null
+++ b/webapp/components/claim/claim.jsx
@@ -0,0 +1,88 @@
+// Copyright (c) 2015 Mattermost, Inc. All Rights Reserved.
+// See License.txt for license information.
+
+import TeamStore from '../../stores/team_store.jsx';
+
+import React from 'react';
+import {FormattedMessage} from 'react-intl';
+
+import logoImage from 'images/logo.png';
+
+export default class Claim extends React.Component {
+    constructor(props) {
+        super(props);
+
+        this.onTeamChange = this.onTeamChange.bind(this);
+        this.updateStateFromStores = this.updateStateFromStores.bind(this);
+
+        this.state = {};
+    }
+    componentWillMount() {
+        this.setState({
+            email: this.props.location.query.email,
+            newType: this.props.location.query.new_type,
+            oldType: this.props.location.query.old_type,
+            teamName: this.props.params.team,
+            teamDisplayName: ''
+        });
+        this.updateStateFromStores();
+    }
+    componentDidMount() {
+        TeamStore.addChangeListener(this.onTeamChange);
+    }
+    componentWillUnmount() {
+        TeamStore.removeChangeListener(this.onTeamChange);
+    }
+    updateStateFromStores() {
+        const team = TeamStore.getByName(this.state.teamName);
+        let displayName = '';
+        if (team) {
+            displayName = team.display_name;
+        }
+        this.setState({
+            teamDisplayName: displayName
+        });
+    }
+    onTeamChange() {
+        this.updateStateFromStores();
+    }
+    render() {
+        return (
+            <div>
+                <div className='signup-header'>
+                    <a href='/'>
+                        <span className='fa fa-chevron-left'/>
+                        <FormattedMessage
+                            id='web.header.back'
+                        />
+                    </a>
+                </div>
+                <div className='col-sm-12'>
+                    <div className='signup-team__container'>
+                        <img
+                            className='signup-team-logo'
+                            src={logoImage}
+                        />
+                        <div id='claim'>
+                            {React.cloneElement(this.props.children, {
+                                teamName: this.state.teamName,
+                                teamDisplayName: this.state.teamDisplayName,
+                                currentType: this.state.oldType,
+                                newType: this.state.newType,
+                                email: this.state.email
+                            })}
+                        </div>
+                    </div>
+                </div>
+            </div>
+        );
+    }
+}
+
+Claim.defaultProps = {
+};
+Claim.propTypes = {
+    params: React.PropTypes.object.isRequired,
+    location: React.PropTypes.object.isRequired,
+    children: React.PropTypes.node
+};
-- 
cgit v1.2.3-1-g7c22


From 934c7c7a7c8423d71fdc7d1586b9c03aedcc5129 Mon Sep 17 00:00:00 2001
From: JoramWilander <jwawilander@gmail.com>
Date: Wed, 23 Mar 2016 15:59:43 -0400
Subject: Fix imports and change ldap function name

---
 webapp/components/claim/claim.jsx | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

(limited to 'webapp/components/claim/claim.jsx')

diff --git a/webapp/components/claim/claim.jsx b/webapp/components/claim/claim.jsx
index 0254897f9..464187c37 100644
--- a/webapp/components/claim/claim.jsx
+++ b/webapp/components/claim/claim.jsx
@@ -1,7 +1,7 @@
 // Copyright (c) 2015 Mattermost, Inc. All Rights Reserved.
 // See License.txt for license information.
 
-import TeamStore from '../../stores/team_store.jsx';
+import TeamStore from 'stores/team_store.jsx';
 
 import React from 'react';
 import {FormattedMessage} from 'react-intl';
-- 
cgit v1.2.3-1-g7c22

