root / snf-cyclades-app / synnefo / ui / new_ui / ui / javascripts / ember / routes / items.js @ 6bf34226
History | View | Annotate | Download (1.2 kB)
1 |
App.ItemsListRoute = Ember.Route.extend({ |
---|---|
2 |
|
3 |
modelName: '', |
4 |
|
5 |
model: function(params){ |
6 |
this.set( 'viewCls', params.view_cls ); |
7 |
var controller = this.get("controller"); |
8 |
|
9 |
// Ember checks if controller is already set, and if so, does not set it
|
10 |
// up again. Hence, the following hack:
|
11 |
if (controller) {
|
12 |
controller.set("viewCls", params.view_cls);
|
13 |
} |
14 |
|
15 |
// end of hack
|
16 |
return this.store.find(this.modelName); |
17 |
}, |
18 |
|
19 |
renderTemplate: function() { |
20 |
this.render('items'); |
21 |
}, |
22 |
|
23 |
setupController: function(controller, model) { |
24 |
controller.set('model', model);
|
25 |
controller.set("viewCls", this.get("viewCls")); |
26 |
controller.set('modelName', this.modelName); |
27 |
}, |
28 |
|
29 |
afterModel: function(model, transition ) { |
30 |
if (this.viewCls == 'first') { |
31 |
this.transitionTo(this.modelName, model.get('firstObject').id); |
32 |
} |
33 |
}, |
34 |
|
35 |
}); |
36 |
|
37 |
App.VmsRoute = App.ItemsListRoute.extend({ |
38 |
modelName: 'vm', |
39 |
}); |
40 |
|
41 |
App.NetworksRoute = App.ItemsListRoute.extend({ |
42 |
modelName: 'network', |
43 |
}); |
44 |
|
45 |
App.VolumesRoute = App.ItemsListRoute.extend({ |
46 |
modelName: 'volume', |
47 |
}); |