mirror of https://github.com/hashicorp/consul
Fix parentKey transitions to root
Previously, deleting a key in `/dc1/kv/` would transition to `/dc1/kv//` on success. A refresh at this stage would lead to `404`, this commit will fix this and generate the correct route key in a helper function.pull/127/head
parent
7fd4b1798b
commit
25d092e592
|
@ -66,6 +66,13 @@ App.DcController = Ember.Controller.extend({
|
||||||
})
|
})
|
||||||
|
|
||||||
KvBaseController = Ember.ObjectController.extend({
|
KvBaseController = Ember.ObjectController.extend({
|
||||||
|
getParentKeyRoute: function() {
|
||||||
|
if (this.get('isRoot')) {
|
||||||
|
return this.get('rootKey');
|
||||||
|
}
|
||||||
|
return this.get("parentKey");
|
||||||
|
},
|
||||||
|
|
||||||
transitionToNearestParent: function(parent) {
|
transitionToNearestParent: function(parent) {
|
||||||
var controller = this;
|
var controller = this;
|
||||||
var rootKey = controller.get('rootKey');
|
var rootKey = controller.get('rootKey');
|
||||||
|
@ -136,12 +143,11 @@ App.KvShowController.reopen({
|
||||||
this.set('isLoading', true);
|
this.set('isLoading', true);
|
||||||
|
|
||||||
var controller = this;
|
var controller = this;
|
||||||
var key = controller.get("model");
|
var grandParent = controller.get('grandParentKey');
|
||||||
var grandParent = key.get('grandParentKey');
|
|
||||||
|
|
||||||
// Delete the folder
|
// Delete the folder
|
||||||
Ember.$.ajax({
|
Ember.$.ajax({
|
||||||
url: ("/v1/kv/" + key.get('parentKey') + '?recurse'),
|
url: ("/v1/kv/" + controller.get('parentKey') + '?recurse'),
|
||||||
type: 'DELETE'
|
type: 'DELETE'
|
||||||
}).then(function(response) {
|
}).then(function(response) {
|
||||||
controller.transitionToNearestParent(grandParent);
|
controller.transitionToNearestParent(grandParent);
|
||||||
|
@ -184,7 +190,7 @@ App.KvEditController = KvBaseController.extend({
|
||||||
|
|
||||||
cancelEdit: function() {
|
cancelEdit: function() {
|
||||||
this.set('isLoading', true);
|
this.set('isLoading', true);
|
||||||
this.transitionToRoute('kv.show', this.get("model").get('parentKey'));
|
this.transitionToRoute('kv.show', this.getParentKeyRoute());
|
||||||
this.set('isLoading', false);
|
this.set('isLoading', false);
|
||||||
},
|
},
|
||||||
|
|
||||||
|
@ -194,8 +200,7 @@ App.KvEditController = KvBaseController.extend({
|
||||||
var controller = this;
|
var controller = this;
|
||||||
var dc = controller.get('dc').get('datacenter');
|
var dc = controller.get('dc').get('datacenter');
|
||||||
var key = controller.get("model");
|
var key = controller.get("model");
|
||||||
var isRoot = controller.get('isRoot');
|
var parent = controller.getParentKeyRoute();
|
||||||
var parent = isRoot ? controller.get('rootKey') : key.get('parentKey');
|
|
||||||
|
|
||||||
// Delete the key
|
// Delete the key
|
||||||
Ember.$.ajax({
|
Ember.$.ajax({
|
||||||
|
|
Loading…
Reference in New Issue