mirror of
https://git.proxmox.com/git/proxmox-widget-toolkit
synced 2025-05-26 00:56:06 +00:00

findRecord does not match exactly, but only at the beginning and case insensitive, by default. Change all calls to be case sensiti and an exactmatch (we never want the default behaviour afaics). Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
58 lines
1.3 KiB
JavaScript
58 lines
1.3 KiB
JavaScript
Ext.define('Proxmox.form.RealmComboBox', {
|
|
extend: 'Ext.form.field.ComboBox',
|
|
alias: 'widget.pmxRealmComboBox',
|
|
|
|
controller: {
|
|
xclass: 'Ext.app.ViewController',
|
|
|
|
init: function(view) {
|
|
view.store.on('load', this.onLoad, view);
|
|
},
|
|
|
|
onLoad: function(store, records, success) {
|
|
if (!success) {
|
|
return;
|
|
}
|
|
let me = this;
|
|
let val = me.getValue();
|
|
if (!val || !me.store.findRecord('realm', val, 0, false, true, true)) {
|
|
let def = 'pam';
|
|
Ext.each(records, function(rec) {
|
|
if (rec.data && rec.data.default) {
|
|
def = rec.data.realm;
|
|
}
|
|
});
|
|
me.setValue(def);
|
|
}
|
|
},
|
|
},
|
|
|
|
fieldLabel: gettext('Realm'),
|
|
name: 'realm',
|
|
queryMode: 'local',
|
|
allowBlank: false,
|
|
editable: false,
|
|
forceSelection: true,
|
|
autoSelect: false,
|
|
triggerAction: 'all',
|
|
valueField: 'realm',
|
|
displayField: 'descr',
|
|
getState: function() {
|
|
return { value: this.getValue() };
|
|
},
|
|
applyState: function(state) {
|
|
if (state && state.value) {
|
|
this.setValue(state.value);
|
|
}
|
|
},
|
|
stateEvents: ['select'],
|
|
stateful: true, // last chosen auth realm is saved between page reloads
|
|
id: 'pveloginrealm', // We need stable ids when using stateful, not autogenerated
|
|
stateID: 'pveloginrealm',
|
|
|
|
store: {
|
|
model: 'pmx-domains',
|
|
autoLoad: true,
|
|
},
|
|
});
|