summaryrefslogtreecommitdiffstats
path: root/web
diff options
context:
space:
mode:
authorhmhealey <harrisonmhealey@gmail.com>2015-08-11 15:47:48 -0400
committerhmhealey <harrisonmhealey@gmail.com>2015-08-11 16:53:15 -0400
commite27ba7454d0bfe9f50736edcc15d0c47bfd48089 (patch)
treee5a2dff68480b24e92b8d2d24c6fa8dbc1441a02 /web
parent3f5993eedfd52a0497f7a537601b2d7c9e4d744d (diff)
downloadchat-e27ba7454d0bfe9f50736edcc15d0c47bfd48089.tar.gz
chat-e27ba7454d0bfe9f50736edcc15d0c47bfd48089.tar.bz2
chat-e27ba7454d0bfe9f50736edcc15d0c47bfd48089.zip
Disabled the invite email portion of the team setup when email is disabled on the server
Diffstat (limited to 'web')
-rw-r--r--web/react/components/signup_team_complete.jsx70
1 files changed, 47 insertions, 23 deletions
diff --git a/web/react/components/signup_team_complete.jsx b/web/react/components/signup_team_complete.jsx
index 3f35a5912..238385a0b 100644
--- a/web/react/components/signup_team_complete.jsx
+++ b/web/react/components/signup_team_complete.jsx
@@ -428,23 +428,27 @@ SendInivtesPage = React.createClass({
e.preventDefault();
var valid = true;
- var emails = [];
- for (var i = 0; i < this.props.state.invites.length; i++) {
- if (!this.refs['email_' + i].validate(this.props.state.team.email)) {
- valid = false;
- } else {
- emails.push(this.refs['email_' + i].getValue());
+ if (this.state.emailEnabled) {
+ var emails = [];
+
+ for (var i = 0; i < this.props.state.invites.length; i++) {
+ if (!this.refs['email_' + i].validate(this.props.state.team.email)) {
+ valid = false;
+ } else {
+ emails.push(this.refs['email_' + i].getValue());
+ }
}
- }
- if (!valid) {
- return;
+ if (valid) {
+ this.props.state.invites = emails;
+ }
}
- this.props.state.wizard = "username";
- this.props.state.invites = emails;
- this.props.updateParent(this.props.state);
+ if (valid) {
+ this.props.state.wizard = "username";
+ this.props.updateParent(this.props.state);
+ }
},
submitAddInvite: function (e) {
e.preventDefault();
@@ -461,22 +465,43 @@ SendInivtesPage = React.createClass({
this.props.updateParent(this.props.state);
},
getInitialState: function() {
- return { };
+ return {
+ emailEnabled: client.isEmailEnabledSynchronous()
+ };
},
render: function() {
-
client.track('signup', 'signup_team_05_send_invites');
var name_error = this.state.name_error ? <label className="control-label">{ this.state.name_error }</label> : null;
- var emails = [];
+ var content = null;
+ var bottomContent = null;
- for (var i = 0; i < this.props.state.invites.length; i++) {
- if (i == 0) {
- emails.push(<EmailItem focus={true} key={i} ref={'email_' + i} email={this.props.state.invites[i]} />);
- } else {
- emails.push(<EmailItem focus={false} key={i} ref={'email_' + i} email={this.props.state.invites[i]} />);
+ if (this.state.emailEnabled) {
+ var emails = [];
+
+ for (var i = 0; i < this.props.state.invites.length; i++) {
+ if (i == 0) {
+ emails.push(<EmailItem focus={true} key={i} ref={'email_' + i} email={this.props.state.invites[i]} />);
+ } else {
+ emails.push(<EmailItem focus={false} key={i} ref={'email_' + i} email={this.props.state.invites[i]} />);
+ }
}
+
+ content = (
+ <div>
+ {emails}
+ <div className="form-group text-right"><a href="#" onClick={this.submitAddInvite}>Add Invitation</a></div>
+ </div>
+ );
+
+ bottomContent = (
+ <p className="color--light">{"if you prefer, you can invite " + strings.Team + " members later"}<br /> and <a href="#" onClick={this.submitSkip}>skip this step</a> for now.</p>
+ );
+ } else {
+ content = (
+ <div className='form-group color--light'>Email is currently disabled for your team, and emails cannot be sent. Contact your system administrator to enable email and email invitations.</div>
+ );
}
return (
@@ -484,11 +509,10 @@ SendInivtesPage = React.createClass({
<form>
<img className="signup-team-logo" src="/static/images/logo.png" />
<h2>{"Invite " + utils.toTitleCase(strings.Team) + " Members"}</h2>
- { emails }
- <div className="form-group text-right"><a href="#" onClick={this.submitAddInvite}>Add Invitation</a></div>
+ {content}
<div className="form-group"><button type="submit" className="btn-primary btn" onClick={this.submitNext}>Next<i className="glyphicon glyphicon-chevron-right"></i></button></div>
</form>
- <p className="color--light">{"if you prefer, you can invite " + strings.Team + " members later"}<br /> and <a href="#" onClick={this.submitSkip}>skip this step</a> for now.</p>
+ {bottomContent}
<div className="margin--extra">
<a href="#" onClick={this.submitBack}>Back to previous step</a>
</div>