79 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			79 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
Ext.define('PBS.window.RemoteEdit', {
 | 
						|
    extend: 'Proxmox.window.Edit',
 | 
						|
    alias: 'widget.pbsRemoteEdit',
 | 
						|
    mixins: ['Proxmox.Mixin.CBind'],
 | 
						|
 | 
						|
    userid: undefined,
 | 
						|
 | 
						|
    isAdd: true,
 | 
						|
 | 
						|
    subject: gettext('Remote'),
 | 
						|
 | 
						|
    fieldDefaults: { labelWidth: 120 },
 | 
						|
 | 
						|
    cbindData: function(initialConfig) {
 | 
						|
	let me = this;
 | 
						|
 | 
						|
	let baseurl = '/api2/extjs/config/remote';
 | 
						|
	let name = initialConfig.name;
 | 
						|
 | 
						|
	me.isCreate = !name;
 | 
						|
	me.url = name ? `${baseurl}/${name}` : baseurl;
 | 
						|
	me.method = name ? 'PUT' : 'POST';
 | 
						|
	me.autoLoad = !!name;
 | 
						|
	return {
 | 
						|
	    passwordEmptyText: me.isCreate ? '' : gettext('Unchanged'),
 | 
						|
	};
 | 
						|
    },
 | 
						|
 | 
						|
    items: {
 | 
						|
	xtype: 'inputpanel',
 | 
						|
	column1: [
 | 
						|
	    {
 | 
						|
		xtype: 'pmxDisplayEditField',
 | 
						|
		name: 'name',
 | 
						|
		fieldLabel: gettext('Remote'),
 | 
						|
		renderer: Ext.htmlEncode,
 | 
						|
		allowBlank: false,
 | 
						|
		minLength: 4,
 | 
						|
		cbind: {
 | 
						|
		    editable: '{isCreate}',
 | 
						|
		},
 | 
						|
	    },
 | 
						|
	    {
 | 
						|
		xtype: 'proxmoxtextfield',
 | 
						|
		allowBlank: false,
 | 
						|
		name: 'host',
 | 
						|
		fieldLabel: gettext('Host'),
 | 
						|
	    },
 | 
						|
	],
 | 
						|
 | 
						|
	column2: [
 | 
						|
	    {
 | 
						|
		xtype: 'proxmoxtextfield',
 | 
						|
		allowBlank: false,
 | 
						|
		name: 'userid',
 | 
						|
		fieldLabel: gettext('Userid'),
 | 
						|
	    },
 | 
						|
	    {
 | 
						|
		xtype: 'textfield',
 | 
						|
		inputType: 'password',
 | 
						|
		fieldLabel: gettext('Password'),
 | 
						|
		name: 'password',
 | 
						|
		cbind: {
 | 
						|
		    emptyText: '{passwordEmptyText}',
 | 
						|
		    allowBlank: '{!isCreate}',
 | 
						|
		},
 | 
						|
	    },
 | 
						|
	],
 | 
						|
 | 
						|
	columnB: [
 | 
						|
	    {
 | 
						|
		xtype: 'proxmoxtextfield',
 | 
						|
		name: 'fingerprint',
 | 
						|
		fieldLabel: gettext('Fingerprint'),
 | 
						|
	    },
 | 
						|
	],
 | 
						|
    },
 | 
						|
});
 |