Content added Content deleted
m (ChaoticShadow moved page MediaWiki:Gadget-database-core.js to MediaWiki:Gadget-database-util.js without leaving a redirect) |
No edit summary |
||
Line 54: | Line 54: | ||
Object.preventExtensions(QueryOptions); |
Object.preventExtensions(QueryOptions); |
||
var dbUtil = { |
|||
QueryOptions: QueryOptions, |
|||
}; |
|||
window.dbUtil = dbUtil; |
|||
} ); |
} ); |
Revision as of 06:33, 21 December 2021
mw.loader.using( ['oojs-ui-core', 'oojs-ui-widgets'] ).done( function() {
function QueryOptions() {
this.queryParams = {};
this.fieldset = new OO.ui.FieldsetLayout( {
label: 'Query options',
items: []
} );
}
QueryOptions.prototype.addMultioption = function(param, options, fieldOptions) {
this.queryParams[param] = new PrimitiveSet();
var toggleButtons = Object.keys( options ).map( function( optionName ) {
var btn = new OO.ui.ToggleButtonWidget( {
label: optionName,
value: options[optionName]
} );
btn.on( 'change', function( selected ) {
if ( selected ) {
this.queryParams.add(param);
} else {
this.queryParams.delete(param);
}
} );
return btn;
} );
this.fieldset.addItems( [
new OO.ui.FieldLayout( toggleButtons, {
label: fieldOptions.label,
align: fieldOptions.align
} ),
] );
};
QueryOptions.prototype.getFieldset = function() {
return this.fieldset;
};
QueryOptions.prototype.getOptions = function() {
};
function DisplayOptions() {
this.displayOptions = {};
}
DisplayOptions.prototype.getOptions = function() {
};
Object.preventExtensions(QueryOptions);
var dbUtil = {
QueryOptions: QueryOptions,
};
window.dbUtil = dbUtil;
} );