1
0
mirror of https://github.com/Unleash/unleash.git synced 2025-02-04 00:18:01 +01:00

Add the ability to cancel the new feature form.

This commit is contained in:
Jari Bakken 2014-10-25 16:09:11 +02:00
parent ed1f2071bd
commit 58ae953006

View File

@ -78,9 +78,13 @@ var UnsavedFeature = React.createClass({
</div> </div>
<div className="form-group col-md-1"> <div className="form-group col-md-1">
<button type="submit" className="btn btn-primary btn-xs" onClick={this.saveFeature}> <button className="btn btn-primary btn-xs" onClick={this.saveFeature}>
Save Save
</button> </button>
<button className="btn btn-xs" onClick={this.cancelFeature}>
Cancel
</button>
</div> </div>
</form> </form>
@ -97,6 +101,11 @@ var UnsavedFeature = React.createClass({
this.props.feature.enabled = this.refs.enabled.getDOMNode().checked; this.props.feature.enabled = this.refs.enabled.getDOMNode().checked;
this.props.onSubmit(this.props.feature); this.props.onSubmit(this.props.feature);
},
cancelFeature: function(e) {
e.preventDefault();
this.props.onCancel(this.props.feature);
} }
}); });
@ -139,7 +148,8 @@ var FeatureList = React.createClass({
<UnsavedFeature <UnsavedFeature
key={key} key={key}
feature={feature} feature={feature}
onSubmit={this.props.onFeatureSubmit} /> onSubmit={this.props.onFeatureSubmit}
onCancel={this.props.onFeatureCancel} />
); );
}.bind(this)); }.bind(this));
@ -281,6 +291,18 @@ var Unleash = React.createClass({
this.forceUpdate(); this.forceUpdate();
}, },
cancelNewFeature: function (feature) {
var unsaved = [];
this.state.unsavedFeatures.forEach(function (f) {
if (f.name !== feature.name) {
unsaved.push(f);
}
});
this.setState({unsavedFeatures: unsaved});
},
render: function() { render: function() {
return ( return (
<div> <div>
@ -291,6 +313,7 @@ var Unleash = React.createClass({
savedFeatures={this.state.savedFeatures} savedFeatures={this.state.savedFeatures}
onFeatureChanged={this.updateFeature} onFeatureChanged={this.updateFeature}
onFeatureSubmit={this.createFeature} onFeatureSubmit={this.createFeature}
onFeatureCancel={this.cancelNewFeature}
onNewFeature={this.newFeature} onNewFeature={this.newFeature}
/> />
</div> </div>