diff --git a/src/browser/components/NewTeamModal.jsx b/src/browser/components/NewTeamModal.jsx index a871d1a3..87ef00a1 100644 --- a/src/browser/components/NewTeamModal.jsx +++ b/src/browser/components/NewTeamModal.jsx @@ -85,6 +85,20 @@ class NewTeamModal extends React.Component { }); } + getSaveButtonLabel() { + if (this.props.editMode) { + return 'Save'; + } + return 'Add'; + } + + getModalTitle() { + if (this.props.editMode) { + return 'Edit Server'; + } + return 'Add Server'; + } + render() { return ( - {'Add Server'} + {this.getModalTitle()} @@ -159,7 +173,7 @@ class NewTeamModal extends React.Component { onClick={this.save.bind(this)} disabled={!this.validateForm()} bsStyle='primary' - >{'Add'} + >{this.getSaveButtonLabel()} @@ -170,7 +184,8 @@ class NewTeamModal extends React.Component { NewTeamModal.propTypes = { onClose: React.PropTypes.func, onSave: React.PropTypes.func, - team: React.PropTypes.object + team: React.PropTypes.object, + editMode: React.PropTypes.boolean }; module.exports = NewTeamModal; diff --git a/src/browser/components/SettingsPage.jsx b/src/browser/components/SettingsPage.jsx index 18beb8cf..4b8cc368 100644 --- a/src/browser/components/SettingsPage.jsx +++ b/src/browser/components/SettingsPage.jsx @@ -145,6 +145,11 @@ const SettingsPage = React.createClass({ showAddTeamForm: !this.state.showAddTeamForm }); }, + setShowTeamFormVisibility(val) { + this.setState({ + showAddTeamForm: val + }); + }, handleFlashWindow() { this.setState({ notifications: { @@ -182,6 +187,7 @@ const SettingsPage = React.createClass({ teams={this.state.teams} showAddTeamForm={this.state.showAddTeamForm} toggleAddTeamForm={this.toggleShowTeamForm} + setAddTeamFormVisibility={this.setShowTeamFormVisibility} onTeamsChange={this.handleTeamsChange} updateTeam={this.updateTeam} addServer={this.addServer} diff --git a/src/browser/components/TeamList.jsx b/src/browser/components/TeamList.jsx index cbf2e039..864d0964 100644 --- a/src/browser/components/TeamList.jsx +++ b/src/browser/components/TeamList.jsx @@ -11,7 +11,8 @@ const TeamList = React.createClass({ teams: React.PropTypes.array, addServer: React.PropTypes.func, updateTeam: React.PropTypes.func, - toggleAddTeamForm: React.PropTypes.func + toggleAddTeamForm: React.PropTypes.func, + setAddTeamFormVisibility: React.PropTypes.func }, getInitialState() { @@ -99,16 +100,17 @@ const TeamList = React.createClass({ if (this.props.showAddTeamForm || this.state.showEditTeamForm) { addServerForm = ( { this.setState({ - showNewTeamModal: false, + showEditTeamForm: false, team: { name: '', url: '', index: false } }); - this.props.toggleAddTeamForm(); + this.props.setAddTeamFormVisibility(false); }} onSave={(newTeam) => { var teamData = { @@ -130,8 +132,7 @@ const TeamList = React.createClass({ } }); this.render(); - - this.props.onTeamsChange(this.props.teams); + this.props.setAddTeamFormVisibility(false); }} team={this.state.team} />);