From cf7a05f80f68b5b1c8bcc0089679dd497cec2506 Mon Sep 17 00:00:00 2001 From: =Corey Hulen Date: Sun, 14 Jun 2015 23:53:32 -0800 Subject: first commit --- web/react/components/rename_team_modal.jsx | 92 ++++++++++++++++++++++++++++++ 1 file changed, 92 insertions(+) create mode 100644 web/react/components/rename_team_modal.jsx (limited to 'web/react/components/rename_team_modal.jsx') diff --git a/web/react/components/rename_team_modal.jsx b/web/react/components/rename_team_modal.jsx new file mode 100644 index 000000000..67a150b9d --- /dev/null +++ b/web/react/components/rename_team_modal.jsx @@ -0,0 +1,92 @@ +// Copyright (c) 2015 Spinpunch, Inc. All Rights Reserved. +// See License.txt for license information. + +var Client = require('../utils/client.jsx'); +var utils = require('../utils/utils.jsx'); + +module.exports = React.createClass({ + handleSubmit: function(e) { + e.preventDefault(); + + var state = { server_error: "" }; + var valid = true; + + var name = this.state.name.trim(); + if (!name) { + state.name_error = "This field is required"; + valid = false; + } else { + state.name_error = ""; + } + + this.setState(state); + + if (!valid) + return; + + if (this.props.teamName === name) + return; + + var data = {}; + data["new_name"] = name; + + Client.updateTeamName(data, + function(data) { + $('#rename_team_link').modal('hide'); + window.location.reload(); + }.bind(this), + function(err) { + state.server_error = err.message; + this.setState(state); + }.bind(this) + ); + }, + onNameChange: function() { + this.setState({ name: this.refs.name.getDOMNode().value }) + }, + componentDidMount: function() { + var self = this; + $(this.refs.modal.getDOMNode()).on('hidden.bs.modal', function(e) { + self.setState({ name: self.props.teamName }); + }); + }, + getInitialState: function() { + return { name: this.props.teamName }; + }, + render: function() { + + var name_error = this.state.name_error ? : null; + var server_error = this.state.server_error ?
: null; + + return ( + + ); + } +}); + -- cgit v1.2.3-1-g7c22