From 58ae9530067c572e7e49ddc28d7b72ca92b60439 Mon Sep 17 00:00:00 2001 From: Jari Bakken Date: Sat, 25 Oct 2014 16:09:11 +0200 Subject: [PATCH] Add the ability to cancel the new feature form. --- unleash-server/public/js/unleash.jsx | 27 +++++++++++++++++++++++++-- 1 file changed, 25 insertions(+), 2 deletions(-) diff --git a/unleash-server/public/js/unleash.jsx b/unleash-server/public/js/unleash.jsx index b747de3f76..6f085b4706 100644 --- a/unleash-server/public/js/unleash.jsx +++ b/unleash-server/public/js/unleash.jsx @@ -78,9 +78,13 @@ var UnsavedFeature = React.createClass({
- + +
@@ -97,6 +101,11 @@ var UnsavedFeature = React.createClass({ this.props.feature.enabled = this.refs.enabled.getDOMNode().checked; 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({ + onSubmit={this.props.onFeatureSubmit} + onCancel={this.props.onFeatureCancel} /> ); }.bind(this)); @@ -281,6 +291,18 @@ var Unleash = React.createClass({ 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() { return (
@@ -291,6 +313,7 @@ var Unleash = React.createClass({ savedFeatures={this.state.savedFeatures} onFeatureChanged={this.updateFeature} onFeatureSubmit={this.createFeature} + onFeatureCancel={this.cancelNewFeature} onNewFeature={this.newFeature} />