Revision 69c64a4c snf-cyclades-app/synnefo/ui/new_ui/ui/javascripts/ember/models/volume.js
b/snf-cyclades-app/synnefo/ui/new_ui/ui/javascripts/ember/models/volume.js | ||
---|---|---|
1 |
/*TODO: |
|
2 |
Add tags to Volume model*/ |
|
3 |
|
|
4 |
|
|
5 |
var statesActionsVolume = { |
|
6 |
'off' : { |
|
7 |
enabledActions : ['start', 'destroy'], |
|
8 |
}, |
|
9 |
'error' : { |
|
10 |
enabledActions : ['destroy'], |
|
11 |
}, |
|
12 |
'building' : { |
|
13 |
enabledActions : [], |
|
14 |
}, |
|
15 |
'running' : { |
|
16 |
enabledActions : ['reboot', 'shutdown', 'destroy'], |
|
17 |
}, |
|
18 |
'rebooting' : { |
|
19 |
enabledActions : ['destroy'], |
|
20 |
}, |
|
21 |
'starting' : { |
|
22 |
enabledActions : ['destroy'], |
|
23 |
}, |
|
24 |
'shutting' : { |
|
25 |
enabledActions : ['destroy'], |
|
26 |
}, |
|
27 |
}; |
|
28 |
|
|
29 |
|
|
30 |
// the model for a Volume |
|
31 | 1 |
App.Volume = DS.Model.extend({ |
32 |
name : DS.attr(), |
|
33 |
state : DS.attr(), |
|
2 |
|
|
3 |
name : DS.attr(), |
|
4 |
status : DS.attr(), |
|
5 |
size : DS.attr('number'), |
|
6 |
storageType : DS.attr('string', {defaultValue: 'Archipelago'}), |
|
7 |
vm : DS.belongsTo('vm', { async:true }), |
|
34 | 8 |
|
35 | 9 |
enabledActions: function() { |
36 |
return statesActionsVolume[this.get('state')].enabledActions;
|
|
10 |
return statusActionsVolume[this.get('status')].enabledActions;
|
|
37 | 11 |
}.property('state'), |
12 |
|
|
38 | 13 |
}); |
39 | 14 |
|
40 | 15 |
|
... | ... | |
42 | 17 |
{ |
43 | 18 |
id: 1, |
44 | 19 |
name: 'Disk 1', |
45 |
state: 'off', |
|
20 |
status: 'running', |
|
21 |
size: 10737418240, |
|
22 |
vms: [1], |
|
23 |
}, |
|
24 |
{ |
|
25 |
id: 2, |
|
26 |
name: 'Disk 2', |
|
27 |
status: 'running', |
|
28 |
size: 2048, |
|
29 |
vms: [1], |
|
30 |
}, |
|
31 |
{ |
|
32 |
id: 3, |
|
33 |
name: 'Disk 3', |
|
34 |
status: 'running', |
|
35 |
size: 4096, |
|
36 |
storageType: 'drpd', |
|
37 |
vms: [2], |
|
46 | 38 |
}, |
47 | 39 |
]; |
Also available in: Unified diff