Content added Content deleted
No edit summary |
No edit summary |
||
Line 1: | Line 1: | ||
( function ( $, mw ) { |
|||
mw.loader.using( ['oojs-ui-core', 'oojs-ui-widgets'] ).done( function() { |
|||
'use strict'; |
|||
function QueryOptions() { |
|||
this.queryParams = {}; |
|||
this.fieldset = new OO.ui.FieldsetLayout( { |
|||
label: 'Query options', |
|||
items: [] |
|||
} ); |
|||
} |
|||
mw.loader.using( ['oojs-ui-core', 'oojs-ui-widgets'] ).done( function() { |
|||
QueryOptions.prototype.addMultioption = function(param, options, fieldOptions) { |
|||
this.queryParams[param] = new PrimitiveSet(); |
|||
/* |
|||
* QueryOptions |
|||
*/ |
|||
function QueryOptions() { |
|||
this.queryParams = {}; |
|||
this.fieldset = new OO.ui.FieldsetLayout( { |
|||
label: 'Query options', |
|||
items: [] |
|||
} ); |
|||
} |
|||
QueryOptions.prototype.addMultioption = function(param, options, fieldOptions) { |
|||
var toggleButtons = Object.keys( options ).map( function( optionName ) { |
|||
this.queryParams[param] = new PrimitiveSet(); |
|||
var btn = new OO.ui.ToggleButtonWidget( { |
|||
label: optionName, |
|||
var toggleButtons = Object.keys( options ).map( function( optionName ) { |
|||
var btn = new OO.ui.ToggleButtonWidget( { |
|||
} ); |
|||
label: optionName, |
|||
btn.on( 'change', function( selected ) { |
|||
value: options[optionName] |
|||
if ( selected ) { |
|||
} ); |
|||
this.queryParams.add(param); |
|||
btn.on( 'change', function( selected ) { |
|||
} else { |
|||
if ( selected ) { |
|||
this.queryParams.delete(param); |
|||
this.queryParams.add(param); |
|||
} |
|||
} else { |
|||
this.queryParams.delete(param); |
|||
} |
|||
} ); |
|||
return btn; |
|||
} ); |
} ); |
||
this.fieldset.addItems( [ |
|||
return btn; |
|||
new OO.ui.FieldLayout( toggleButtons, { |
|||
} ); |
|||
label: fieldOptions.label, |
|||
align: fieldOptions.align |
|||
} ), |
|||
] ); |
|||
}; |
|||
QueryOptions.prototype.getFieldset = function() { |
|||
this.fieldset.addItems( [ |
|||
return this.fieldset; |
|||
new OO.ui.FieldLayout( toggleButtons, { |
|||
}; |
|||
label: fieldOptions.label, |
|||
align: fieldOptions.align |
|||
} ), |
|||
] ); |
|||
}; |
|||
QueryOptions.prototype.getFieldset = function() { |
|||
return this.fieldset; |
|||
}; |
|||
QueryOptions.prototype.getOptions = function() { |
|||
QueryOptions.prototype.getOptions = function() { |
|||
}; |
|||
}; |
|||
function DisplayOptions() { |
|||
this.displayOptions = {}; |
|||
} |
|||
DisplayOptions.prototype.getOptions = function() { |
|||
/* |
|||
}; |
|||
* DisplayOptions |
|||
*/ |
|||
Object.preventExtensions(QueryOptions); |
|||
function DisplayOptions() { |
|||
this.displayOptions = {}; |
|||
var dbUtil = { |
|||
} |
|||
QueryOptions: QueryOptions, |
|||
}; |
|||
DisplayOptions.prototype.getOptions = function() { |
|||
window.dbUtil = dbUtil; |
|||
} ); |
|||
}; |
|||
Object.preventExtensions(QueryOptions); |
|||
Object.preventExtensions(DisplayOptions); |
|||
var dbUtil = { |
|||
QueryOptions: QueryOptions, |
|||
DisplayOptions: DisplayOptions |
|||
}; |
|||
$.extend(window.pswiki, dbUtil); |
|||
} ); |
|||
} )( jQuery, mediaWiki ); |
Revision as of 06:41, 21 December 2021
( function ( $, mw ) {
'use strict';
mw.loader.using( ['oojs-ui-core', 'oojs-ui-widgets'] ).done( function() {
/*
* QueryOptions
*/
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() {
};
/*
* DisplayOptions
*/
function DisplayOptions() {
this.displayOptions = {};
}
DisplayOptions.prototype.getOptions = function() {
};
Object.preventExtensions(QueryOptions);
Object.preventExtensions(DisplayOptions);
var dbUtil = {
QueryOptions: QueryOptions,
DisplayOptions: DisplayOptions
};
$.extend(window.pswiki, dbUtil);
} );
} )( jQuery, mediaWiki );