]>
git.proxmox.com Git - pve-manager.git/blob - www/manager6/node/LVM.js
1 Ext
.define('PVE.node.CreateLVM', {
2 extend
: 'Proxmox.window.Edit',
5 subject
: 'LVM Volume Group',
9 onlineHelp
: 'chapter_lvm',
11 initComponent: function() {
15 throw "no node name specified";
21 url
: "/nodes/" + me
.nodename
+ "/disks/lvm",
25 xtype
: 'pmxDiskSelector',
27 nodename
: me
.nodename
,
29 fieldLabel
: gettext('Disk'),
33 xtype
: 'proxmoxtextfield',
35 fieldLabel
: gettext('Name'),
39 xtype
: 'proxmoxcheckbox',
41 fieldLabel
: gettext('Add Storage'),
51 Ext
.define('PVE.node.LVMList', {
52 extend
: 'Ext.tree.Panel',
54 emptyText
: gettext('No Volume Groups found'),
56 stateId
: 'grid-node-lvm',
60 text
: gettext('Name'),
65 text
: gettext('Number of LVs'),
71 header
: gettext('Usage'),
74 tdCls
: 'x-progressbar-default-cell',
75 xtype
: 'widgetcolumn',
77 xtype
: 'pveProgressBar',
81 header
: gettext('Size'),
85 renderer
: Proxmox
.Utils
.format_size
,
89 header
: gettext('Free'),
93 renderer
: Proxmox
.Utils
.format_size
,
103 text
: gettext('Reload'),
104 iconCls
: 'fa fa-refresh',
105 handler: function() {
106 var me
= this.up('panel');
111 text
: gettext('Create') + ': Volume Group',
112 handler: function() {
113 var me
= this.up('panel');
114 var win
= Ext
.create('PVE.node.CreateLVM', {
115 nodename
: me
.nodename
,
116 taskDone: function() {
126 var sm
= me
.getSelectionModel();
127 Proxmox
.Utils
.API2Request({
128 url
: "/nodes/" + me
.nodename
+ "/disks/lvm",
131 failure: function(response
, opts
) {
132 Proxmox
.Utils
.setErrorMask(me
, response
.htmlStatus
);
134 success: function(response
, opts
) {
136 me
.setRootNode(response
.result
.data
);
143 activate: function() {
149 initComponent: function() {
152 me
.nodename
= me
.pveSelNode
.data
.node
;
154 throw "no node name specified";
157 var sm
= Ext
.create('Ext.selection.TreeModel', {});
161 fields
: ['name', 'size', 'free',
165 calculate: function(data
) {
166 var txt
= 'fa x-fa-tree fa-';
167 txt
+= data
.leaf
? 'hdd-o' : 'object-group';
174 calculate: function(data
) {
175 return (data
.size
-data
.free
)/data
.size
;