]>
git.proxmox.com Git - pve-manager.git/blob - www/manager6/storage/CIFSEdit.js
1 Ext
.define('PVE.storage.CIFSScan', {
2 extend
: 'Ext.form.field.ComboBox',
3 alias
: 'widget.pveCIFSScan',
9 matchFieldWidth
: false,
11 loadingText
: gettext('Scanning...'),
14 doRawQuery: function() {
17 onTriggerClick: function() {
20 if (!me
.queryCaching
|| me
.lastQuery
!== me
.cifsServer
) {
25 if (me
.cifsUsername
&& me
.cifsPassword
) {
26 params
.username
= me
.cifsUsername
;
27 params
.password
= me
.cifsPassword
;
31 params
.domain
= me
.cifsDomain
;
34 me
.store
.getProxy().setExtraParams(params
);
35 me
.allQuery
= me
.cifsServer
;
40 setServer: function(server
) {
43 me
.cifsServer
= server
;
46 setUsername: function(username
) {
49 me
.cifsUsername
= username
;
52 setPassword: function(password
) {
55 me
.cifsPassword
= password
;
58 setDomain: function(domain
) {
61 me
.cifsDomain
= domain
;
64 initComponent : function() {
68 me
.nodename
= 'localhost';
71 var store
= Ext
.create('Ext.data.Store', {
72 fields
: ['description', 'share'],
75 url
: '/api2/json/nodes/' + me
.nodename
+ '/scan/cifs'
78 store
.sort('share', 'ASC');
88 Ext
.define('PVE.storage.CIFSInputPanel', {
89 extend
: 'Proxmox.panel.InputPanel',
90 controller
: 'storageEdit',
92 onGetValues: function(values
) {
98 delete values
.storage
;
101 values
.disable
= values
.enable
? 0 : 1;
102 delete values
.enable
;
107 initComponent : function() {
110 var passwordfield
= Ext
.createWidget(me
.isCreate
? 'textfield' : 'displayfield', {
111 inputType
: 'password',
113 value
: me
.isCreate
? '' : '********',
114 fieldLabel
: gettext('Password'),
118 change: function(f
, value
) {
121 var exportField
= me
.down('field[name=share]');
122 exportField
.setPassword(value
);
130 xtype
: me
.isCreate
? 'textfield' : 'displayfield',
132 value
: me
.storageId
|| '',
138 xtype
: me
.isCreate
? 'textfield' : 'displayfield',
141 fieldLabel
: gettext('Server'),
144 change: function(f
, value
) {
146 var exportField
= me
.down('field[name=share]');
147 exportField
.setServer(value
);
153 xtype
: me
.isCreate
? 'textfield' : 'displayfield',
156 fieldLabel
: gettext('Username'),
157 emptyText
: gettext('Guest user'),
160 change: function(f
, value
) {
162 var exportField
= me
.down('field[name=share]');
163 exportField
.setUsername(value
);
166 passwordfield
.allowBlank
= true;
168 passwordfield
.allowBlank
= false;
170 passwordfield
.validate();
175 xtype
: me
.isCreate
? 'pveCIFSScan' : 'displayfield',
182 xtype
: 'pveContentTypeSelector',
186 fieldLabel
: gettext('Content'),
193 xtype
: 'pveNodeSelector',
195 fieldLabel
: gettext('Nodes'),
196 emptyText
: gettext('All') + ' (' +
197 gettext('No restrictions') +')',
202 xtype
: 'proxmoxcheckbox',
206 fieldLabel
: gettext('Enable')
209 xtype
: 'proxmoxintegerfield',
210 fieldLabel
: gettext('Max Backups'),
212 reference
: 'maxfiles',
215 value
: me
.isCreate
? '1' : undefined,
220 xtype
: me
.isCreate
? 'textfield' : 'displayfield',
222 value
: me
.isCreate
? '' : undefined,
223 fieldLabel
: gettext('Domain'),
226 change: function(f
, value
) {
229 var exportField
= me
.down('field[name=share]');
230 exportField
.setDomain(value
);
241 Ext
.define('PVE.storage.CIFSEdit', {
242 extend
: 'Proxmox.window.Edit',
244 initComponent : function() {
247 me
.isCreate
= !me
.storageId
;
250 me
.url
= '/api2/extjs/storage';
253 me
.url
= '/api2/extjs/storage/' + me
.storageId
;
257 var ipanel
= Ext
.create('PVE.storage.CIFSInputPanel', {
258 isCreate
: me
.isCreate
,
259 storageId
: me
.storageId
272 success: function(response
, options
) {
273 var values
= response
.result
.data
;
274 var ctypes
= values
.content
|| '';
276 values
.content
= ctypes
.split(',');
279 values
.nodes
= values
.nodes
.split(',');
281 values
.enable
= values
.disable
? 0 : 1;
282 ipanel
.setValues(values
);