]>
git.proxmox.com Git - pve-manager.git/blob - www/manager6/storage/GlusterFsEdit.js
fe7e2a00180a111aedbca819fd572f4526808183
1 Ext
.define('PVE.storage.GlusterFsScan', {
2 extend
: 'Ext.form.field.ComboBox',
3 alias
: 'widget.pveGlusterFsScan',
8 displayField
: 'volname',
9 matchFieldWidth
: false,
11 loadingText
: 'Scanning...',
14 doRawQuery: function() {
17 onTriggerClick: function() {
20 if (!me
.queryCaching
|| me
.lastQuery
!== me
.glusterServer
) {
24 me
.allQuery
= me
.glusterServer
;
29 setServer: function(server
) {
32 me
.glusterServer
= server
;
35 initComponent : function() {
39 me
.nodename
= 'localhost';
42 var store
= Ext
.create('Ext.data.Store', {
43 fields
: [ 'volname' ],
46 url
: '/api2/json/nodes/' + me
.nodename
+ '/scan/glusterfs'
50 store
.sort('volname', 'ASC');
60 Ext
.define('PVE.storage.GlusterFsInputPanel', {
61 extend
: 'PVE.panel.InputPanel',
62 controller
: 'storageEdit',
64 onGetValues: function(values
) {
68 values
.type
= 'glusterfs';
70 delete values
.storage
;
73 values
.disable
= values
.enable
? 0 : 1;
79 initComponent : function() {
85 xtype
: me
.isCreate
? 'textfield' : 'displayfield',
87 value
: me
.storageId
|| '',
93 xtype
: me
.isCreate
? 'textfield' : 'displayfield',
96 fieldLabel
: gettext('Server'),
99 change: function(f
, value
) {
101 var volumeField
= me
.down('field[name=volume]');
102 volumeField
.setServer(value
);
103 volumeField
.setValue('');
109 xtype
: me
.isCreate
? 'proxmoxtextfield' : 'displayfield',
112 fieldLabel
: gettext('Second Server'),
116 xtype
: me
.isCreate
? 'pveGlusterFsScan' : 'displayfield',
119 fieldLabel
: 'Volume name',
123 xtype
: 'pveContentTypeSelector',
124 cts
: ['images', 'iso', 'backup', 'vztmpl'],
128 fieldLabel
: gettext('Content'),
135 xtype
: 'pveNodeSelector',
137 fieldLabel
: gettext('Nodes'),
138 emptyText
: gettext('All') + ' (' +
139 gettext('No restrictions') +')',
144 xtype
: 'proxmoxcheckbox',
148 fieldLabel
: gettext('Enable')
151 xtype
: 'proxmoxintegerfield',
152 fieldLabel
: gettext('Max Backups'),
155 reference
: 'maxfiles',
158 value
: me
.isCreate
? '1' : undefined,
167 Ext
.define('PVE.storage.GlusterFsEdit', {
168 extend
: 'PVE.window.Edit',
170 initComponent : function() {
173 me
.isCreate
= !me
.storageId
;
176 me
.url
= '/api2/extjs/storage';
179 me
.url
= '/api2/extjs/storage/' + me
.storageId
;
183 var ipanel
= Ext
.create('PVE.storage.GlusterFsInputPanel', {
184 isCreate
: me
.isCreate
,
185 storageId
: me
.storageId
189 subject
: PVE
.Utils
.format_storage_type('glusterfs'),
198 success: function(response
, options
) {
199 var values
= response
.result
.data
;
200 var ctypes
= values
.content
|| '';
202 values
.content
= ctypes
.split(',');
205 values
.nodes
= values
.nodes
.split(',');
207 values
.enable
= values
.disable
? 0 : 1;
208 ipanel
.setValues(values
);