ui: kv load from url
This commit is contained in:
parent
75589782ef
commit
8d4290868e
|
@ -63,8 +63,11 @@
|
|||
</script>
|
||||
|
||||
<script type="text/x-handlebars" data-template-name="kv/show">
|
||||
<a {{action 'linkToKey' parent }}>{{parent}}</a>
|
||||
<div class="row">
|
||||
<a {{action 'linkToKey' parent }} class="btn btn-default">{{parent}}</a>
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
<div class="col-md-5">
|
||||
<div class="row">
|
||||
|
||||
|
@ -84,11 +87,15 @@
|
|||
|
||||
<div class="col-md-5 col-md-offset-1">
|
||||
</div>
|
||||
</div>
|
||||
</script>
|
||||
|
||||
<script type="text/x-handlebars" data-template-name="kv/edit">
|
||||
<a {{action 'linkToKey' parent }}>{{parent}}</a>
|
||||
<div class="row">
|
||||
<a {{action 'linkToKey' parent }} class="btn btn-default">{{parent}}</a>
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
<div class="col-md-5">
|
||||
<div class="row">
|
||||
{{#each item in siblings }}
|
||||
|
@ -109,6 +116,7 @@
|
|||
<div class="col-md-5 col-md-offset-1">
|
||||
{{ input value=model.value class="form-control"}}
|
||||
</div>
|
||||
</div>
|
||||
</script>
|
||||
|
||||
<script type="text/x-handlebars" id="services">
|
||||
|
|
|
@ -85,14 +85,29 @@ App.Key = Ember.Object.extend({
|
|||
return (this.get('key').slice(-1) == "/")
|
||||
}.property('isFolder'),
|
||||
|
||||
parentKeys: function() {
|
||||
var parts = this.get('key').split('/')
|
||||
keyParts: function() {
|
||||
var key = this.get('key');
|
||||
|
||||
console.log(parts)
|
||||
part = parts.slice(2)
|
||||
if (key.slice(-1) == "/") {
|
||||
key = key.substring(0, key.length - 1);
|
||||
}
|
||||
return key.split('/');
|
||||
}.property('keyParts'),
|
||||
|
||||
console.log(part)
|
||||
parentKey: function() {
|
||||
var parts = this.get('keyParts');
|
||||
|
||||
return '/'
|
||||
}.property('parentKey')
|
||||
parts.pop();
|
||||
|
||||
return parts.join("/") + "/";
|
||||
}.property('parentKey'),
|
||||
|
||||
grandParentKey: function() {
|
||||
var parts = this.get('keyParts');
|
||||
|
||||
parts.pop();
|
||||
parts.pop();
|
||||
|
||||
return parts.join("/") + "/";
|
||||
}.property('grandParentKey')
|
||||
});
|
||||
|
|
|
@ -13,6 +13,7 @@ App.Router.map(function() {
|
|||
this.route("show", { path: "/:name" });
|
||||
});
|
||||
this.resource("kv", { path: "/kv" }, function(){
|
||||
this.route("index", { path: "/" });
|
||||
this.route("show", { path: "/:key" });
|
||||
this.route("edit", { path: "/:key/edit" });
|
||||
})
|
||||
|
|
|
@ -62,7 +62,7 @@ App.DcRoute = App.BaseRoute.extend({
|
|||
});
|
||||
|
||||
|
||||
App.KvRoute = App.BaseRoute.extend({
|
||||
App.KvIndexRoute = App.BaseRoute.extend({
|
||||
beforeModel: function() {
|
||||
this.transitionTo('kv.show', '-')
|
||||
}
|
||||
|
@ -82,7 +82,7 @@ App.KvShowRoute = App.BaseRoute.extend({
|
|||
|
||||
setupController: function(controller, model) {
|
||||
controller.set('content', model);
|
||||
controller.set('parent', model[0].get('parentKeys'));
|
||||
controller.set('parent', model[0].get('grandParentKey'));
|
||||
}
|
||||
});
|
||||
|
||||
|
@ -94,9 +94,19 @@ App.KvEditRoute = App.BaseRoute.extend({
|
|||
|
||||
setupController: function(controller, model) {
|
||||
controller.set('content', model);
|
||||
controller.set('siblings', this.modelFor('kv.show'));
|
||||
console.log(this.modelFor('kv.show'))
|
||||
controller.set('parent', model.get('parentKeys'));
|
||||
|
||||
if (this.modelFor('kv.show') == undefined ) {
|
||||
var key = model.get('parentKey')
|
||||
objs = [];
|
||||
window.fixtures.keys_full[key].map(function(obj){
|
||||
objs.push(App.Key.create({key: obj}));
|
||||
});
|
||||
controller.set('siblings', objs);
|
||||
} else {
|
||||
controller.set('siblings', this.modelFor('kv.show'));
|
||||
}
|
||||
|
||||
controller.set('parent', controller.get('siblings')[0].get('grandParentKey'));
|
||||
}
|
||||
});
|
||||
|
||||
|
|
Loading…
Reference in New Issue