root / snf-cyclades-app / synnefo / ui / new_ui / ui / javascripts / ember / models / vm.js @ 47eca5c5
History | View | Annotate | Download (2 kB)
1 | e4a6c3b8 | Olga Brani | /*TODO:
|
---|---|---|---|
2 | e4a6c3b8 | Olga Brani | Add tags to Vm model*/
|
3 | e4a6c3b8 | Olga Brani | |
4 | e4a6c3b8 | Olga Brani | |
5 | e4a6c3b8 | Olga Brani | var statesActionsVm = {
|
6 | e4a6c3b8 | Olga Brani | 'off' : {
|
7 | 47eca5c5 | Olga Brani | enabledActions : ['start', 'destroy'], |
8 | e4a6c3b8 | Olga Brani | }, |
9 | e4a6c3b8 | Olga Brani | 'error' : {
|
10 | 47eca5c5 | Olga Brani | enabledActions : ['destroy'], |
11 | e4a6c3b8 | Olga Brani | }, |
12 | e4a6c3b8 | Olga Brani | 'building' : {
|
13 | 47eca5c5 | Olga Brani | enabledActions : [],
|
14 | e4a6c3b8 | Olga Brani | }, |
15 | e4a6c3b8 | Olga Brani | 'running' : {
|
16 | 47eca5c5 | Olga Brani | enabledActions : ['reboot', 'shutdown', 'destroy'], |
17 | e4a6c3b8 | Olga Brani | }, |
18 | e4a6c3b8 | Olga Brani | 'rebooting' : {
|
19 | 47eca5c5 | Olga Brani | enabledActions : ['destroy'], |
20 | e4a6c3b8 | Olga Brani | }, |
21 | e4a6c3b8 | Olga Brani | 'starting' : {
|
22 | 47eca5c5 | Olga Brani | enabledActions : ['destroy'], |
23 | e4a6c3b8 | Olga Brani | }, |
24 | e4a6c3b8 | Olga Brani | 'shutting' : {
|
25 | 47eca5c5 | Olga Brani | enabledActions : ['destroy'], |
26 | e4a6c3b8 | Olga Brani | }, |
27 | e4a6c3b8 | Olga Brani | }; |
28 | e4a6c3b8 | Olga Brani | |
29 | e4a6c3b8 | Olga Brani | |
30 | e4a6c3b8 | Olga Brani | // the model for a Vm
|
31 | e4a6c3b8 | Olga Brani | App.Vm = DS.Model.extend({ |
32 | e4a6c3b8 | Olga Brani | name : DS.attr(),
|
33 | e4a6c3b8 | Olga Brani | state : DS.attr(),
|
34 | 47eca5c5 | Olga Brani | os : DS.attr(),
|
35 | e4a6c3b8 | Olga Brani | link : DS.attr(),
|
36 | 47eca5c5 | Olga Brani | flavor : DS.attr('raw'), |
37 | e4a6c3b8 | Olga Brani | networks : DS.hasMany('network', { async:true }), |
38 | e4a6c3b8 | Olga Brani | |
39 | e4a6c3b8 | Olga Brani | enabledActions: function() { |
40 | 47eca5c5 | Olga Brani | return statesActionsVm[this.get('state')].enabledActions; |
41 | 47eca5c5 | Olga Brani | }.property('state'),
|
42 | e4a6c3b8 | Olga Brani | }); |
43 | e4a6c3b8 | Olga Brani | |
44 | e4a6c3b8 | Olga Brani | |
45 | e4a6c3b8 | Olga Brani | App.Vm.FIXTURES = [ |
46 | 47eca5c5 | Olga Brani | { |
47 | 47eca5c5 | Olga Brani | id: 1, |
48 | 47eca5c5 | Olga Brani | name: 'My cool VM 1', |
49 | 47eca5c5 | Olga Brani | state: 'off', |
50 | 47eca5c5 | Olga Brani | os: 'kubuntu', |
51 | 47eca5c5 | Olga Brani | link: 'http://www.in.gr', |
52 | 47eca5c5 | Olga Brani | networks:[1,2], |
53 | 47eca5c5 | Olga Brani | flavor: {
|
54 | 47eca5c5 | Olga Brani | ram: 1, |
55 | 47eca5c5 | Olga Brani | cpu: 2, |
56 | 47eca5c5 | Olga Brani | }, |
57 | 47eca5c5 | Olga Brani | }, |
58 | 47eca5c5 | Olga Brani | { |
59 | 47eca5c5 | Olga Brani | id: 2, |
60 | 47eca5c5 | Olga Brani | name: 'My even cooler VM 2 that has a long name', |
61 | 47eca5c5 | Olga Brani | state: 'error', |
62 | 47eca5c5 | Olga Brani | os: 'unknown', |
63 | 47eca5c5 | Olga Brani | link: 'http://www.in.gr', |
64 | 47eca5c5 | Olga Brani | networks:[3], |
65 | 47eca5c5 | Olga Brani | }, |
66 | 47eca5c5 | Olga Brani | { |
67 | 47eca5c5 | Olga Brani | id: 3, |
68 | 47eca5c5 | Olga Brani | name: 'My cool VM 3', |
69 | 47eca5c5 | Olga Brani | state: 'building', |
70 | 47eca5c5 | Olga Brani | os: 'windows', |
71 | 47eca5c5 | Olga Brani | link: 'http://www.in.gr', |
72 | 47eca5c5 | Olga Brani | }, |
73 | 47eca5c5 | Olga Brani | { |
74 | 47eca5c5 | Olga Brani | id: 4, |
75 | 47eca5c5 | Olga Brani | name: 'So awesome VM 4', |
76 | 47eca5c5 | Olga Brani | state: 'running', |
77 | 47eca5c5 | Olga Brani | os: 'fedora', |
78 | 47eca5c5 | Olga Brani | link: 'www.france24.fr', |
79 | 47eca5c5 | Olga Brani | }, |
80 | 47eca5c5 | Olga Brani | { |
81 | 47eca5c5 | Olga Brani | id: 5, |
82 | 47eca5c5 | Olga Brani | name: 'olga', |
83 | 47eca5c5 | Olga Brani | state: 'rebooting', |
84 | 47eca5c5 | Olga Brani | os: 'kubuntu', |
85 | 47eca5c5 | Olga Brani | link: 'http://www.in.gr', |
86 | 47eca5c5 | Olga Brani | }, |
87 | 47eca5c5 | Olga Brani | { |
88 | 47eca5c5 | Olga Brani | id: 6, |
89 | 47eca5c5 | Olga Brani | name: 'athina', |
90 | 47eca5c5 | Olga Brani | state: 'starting', |
91 | 47eca5c5 | Olga Brani | os: 'kubuntu', |
92 | 47eca5c5 | Olga Brani | link: 'http://www.in.gr', |
93 | 47eca5c5 | Olga Brani | }, |
94 | 47eca5c5 | Olga Brani | { |
95 | 47eca5c5 | Olga Brani | id: 7, |
96 | 47eca5c5 | Olga Brani | name: 'kpap', |
97 | 47eca5c5 | Olga Brani | state: 'shutting', |
98 | 47eca5c5 | Olga Brani | os: 'kubuntu', |
99 | 47eca5c5 | Olga Brani | link: 'http://www.in.gr', |
100 | 47eca5c5 | Olga Brani | }, |
101 | 47eca5c5 | Olga Brani | ]; |