Toggle menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

MediaWiki:Gadget-database-songs-core.js: Difference between revisions

MediaWiki interface page
Content added Content deleted
(add game duration gt and lt comparisons)
(updated master diffs)
 
(16 intermediate revisions by the same user not shown)
Line 10: Line 10:
{
{
multiselect: true,
multiselect: true,
delimiter: ';',
items: [
items: [
{ label: 'VIRTUAL SINGER' },
{ label: 'VIRTUAL SINGER' },
Line 32: Line 33:
{
{
items: [
items: [
{ label: 'Any', data: '+' },
{ label: 'Any', data: ' ' },
{ label: 'Yes', data: '1' },
{ label: 'Yes', data: '1' },
{ label: 'No', data: '0' }
{ label: 'No', data: '0' }
Line 42: Line 43:
qOptions.addButtonMultiInput(
qOptions.addButtonMultiInput(
'type',
'types',
{ label: 'Type(s)' },
{ label: 'Type(s)' },
{
{
Line 55: Line 56:
qOptions.addNumberInput(
qOptions.addNumberInput(
'game duration greater than',
'min game duration',
{ label: 'Game duration greater than' },
{ label: 'Minimum game-size duration (seconds)' },
{ min: 1 }
{ min: 1, showButtons: false }
);
);
qOptions.addNumberInput(
qOptions.addNumberInput(
'game duration less than',
'max game duration',
{ label: 'Game duration less than' },
{ label: 'Maximum game-size duration (seconds)' },
{ min: 1 }
{ min: 1, showButtons: false }
);
);
Line 76: Line 77:
[
[
{ param: 'easy diff', label: 'Easy difficulties', min: 5, max: 9 },
{ param: 'easy difficulties', label: 'Easy difficulties', min: 5, max: 9 },
{ param: 'normal diff', label: 'Normal difficulties', min: 10, max: 15 },
{ param: 'normal difficulties', label: 'Normal difficulties', min: 10, max: 15 },
{ param: 'hard diff', label: 'Hard difficulties', min: 15, max: 23 },
{ param: 'hard difficulties', label: 'Hard difficulties', min: 15, max: 24 },
{ param: 'expert diff', label: 'Expert difficulties', min: 21, max: 31 },
{ param: 'expert difficulties', label: 'Expert difficulties', min: 21, max: 31 },
{ param: 'master diff', label: 'Master difficulties', min: 26, max: 36 }
{ param: 'master difficulties', label: 'Master difficulties', min: 25, max: 37 },
].forEach( function( diff ) {
].forEach( function( diff ) {
var diffItems = [];
var diffItems = [];
Line 99: Line 100:
dOptions.addColumnSelector(
dOptions.addColumnSelector(
[
[
{ name: 'Producer', selected: true, label: 'Producer' },
{ name: 'producers', selected: true, label: 'Producer' },
{ name: 'Unit category', selected: true, label: 'Unit category' },
{ name: 'units', selected: true, label: 'Unit category' },
{ name: 'BPM', selected: true, label: 'BPM' },
{ name: 'bpm', selected: true, label: 'BPM' },
{ name: 'Game duration', selected: true, label: 'Duration' },
{ name: 'game duration', selected: true, label: 'Duration (game-size)' },
{ name: 'Release date#-F[Y/m/d]', selected: true, label: 'Release date' },
{ name: 'release date', selected: true, label: 'Release date' },
{ name: 'Song type', selected: true, label: 'Type' },
{ name: 'type', selected: true, label: 'Type' },
{ name: 'Has 3D MV', selected: true, label: '3D MV' },
{ name: '3d mv', selected: true, label: '3D MV' },
{ name: 'Has 2D MV', selected: true, label: '2D MV' },
{ name: '2d mv', selected: true, label: '2D MV' },
{ name: 'Has original MV', selected: true, label: 'Original MV' },
{ name: 'original mv', selected: true, label: 'Original MV' },
{ name: 'Easy difficulty', selected: false, label: 'Easy difficulty' },
{ name: 'easy difficulty', selected: false, label: 'Easy difficulty' },
{ name: 'Normal difficulty', selected: false, label: 'Normal difficulty' },
{ name: 'normal difficulty', selected: false, label: 'Normal difficulty' },
{ name: 'Hard difficulty', selected: false, label: 'Hard difficulty' },
{ name: 'hard difficulty', selected: false, label: 'Hard difficulty' },
{ name: 'Expert difficulty', selected: false, label: 'Expert difficulty' },
{ name: 'expert difficulty', selected: false, label: 'Expert difficulty' },
{ name: 'Master difficulty', selected: false, label: 'Master difficulty' },
{ name: 'master difficulty', selected: false, label: 'Master difficulty' },
{ name: 'Easy notes', selected: false, label: 'Easy notes' },
{ name: 'easy notes', selected: false, label: 'Easy notes' },
{ name: 'Normal notes', selected: false, label: 'Normal notes' },
{ name: 'normal notes', selected: false, label: 'Normal notes' },
{ name: 'Hard notes', selected: false, label: 'Hard notes' },
{ name: 'hard notes', selected: false, label: 'Hard notes' },
{ name: 'Expert notes', selected: false, label: 'Expert notes' },
{ name: 'expert notes', selected: false, label: 'Expert notes' },
{ name: 'Master notes', selected: false, label: 'Master notes' },
{ name: 'master notes', selected: false, label: 'Master notes' },
],
],
{ }
{ }

Latest revision as of 05:56, 1 May 2024

( function ( $, mw, psw ) {
	'use strict';

	var qOptions = new psw.db.QueryOptions();
	var dOptions = new psw.db.DisplayOptions();
	
	qOptions.addButtonMultiInput(
		'units',
		{ label: 'Unit categories' },
		{
			multiselect: true,
			delimiter: ';',
			items: [
				{ label: 'VIRTUAL SINGER' },
				{ label: 'Leo/need' },
				{ label: 'MORE MORE JUMP!' },
				{ label: 'Vivid BAD SQUAD' },
				{ label: 'Wonderlands×Showtime' },
				{ label: '25-ji, Nightcord de.' },
				{ label: 'Other' }
			]
		}
	);
	
	[
		{ param: '3d mv', label: '3D MV?' },
		{ param: '2d mv', label: '2D MV?' },
		{ param: 'original mv', label: 'Original MV?' }
	].forEach( function( paramLabel ) {
		qOptions.addButtonMultiInput(
			paramLabel.param,
			{ label: paramLabel.label },
			{
				items: [
					{ label: 'Any', data: ' ' },
					{ label: 'Yes', data: '1' },
					{ label: 'No',  data: '0' }
				],
				selected: 'Any'
			}
		);
	} );
	
	qOptions.addButtonMultiInput(
		'types',
		{ label: 'Type(s)' },
		{
			multiselect: true,
			items: [
				{ label: 'Pre-existing', data: 'Pre-existing' },
				{ label: 'Commissioned', data: 'Commissioned' },
				{ label: 'Contest winner',  data: 'Contest winner' }
			]
		}
	);
	
	qOptions.addNumberInput(
		'min game duration',
		{ label: 'Minimum game-size duration (seconds)'  },
		{ min: 1, showButtons: false }
	);
	
	qOptions.addNumberInput(
		'max game duration',
		{ label: 'Maximum game-size duration (seconds)' },
		{ min: 1, showButtons: false }
	);
	
	qOptions.addDateInput(
		'released after',
		{ label: 'Released after' }
	);
	qOptions.addDateInput(
		'released before',
		{ label: 'Released before' }
	);
	
	[
		{ param: 'easy difficulties',   label: 'Easy difficulties',   min: 5,  max: 9 },
		{ param: 'normal difficulties', label: 'Normal difficulties', min: 10, max: 15 },
		{ param: 'hard difficulties',   label: 'Hard difficulties',   min: 15, max: 24 },
		{ param: 'expert difficulties', label: 'Expert difficulties', min: 21, max: 31 },
		{ param: 'master difficulties', label: 'Master difficulties', min: 25, max: 37 },
	].forEach( function( diff ) {
		var diffItems = [];
		for ( var i = diff.min; i <= diff.max; i++ ) {
			diffItems.push( { label: i.toString() } );
		}
		
		qOptions.addButtonMultiInput(
			diff.param,
			{ label: diff.label },
			{
				multiselect: true,
				items: diffItems
			}
		);
	} );
	
	dOptions.addColumnSelector(
		[
			{ name: 'producers', selected: true, label: 'Producer' },
			{ name: 'units', selected: true, label: 'Unit category' },
			{ name: 'bpm', selected: true, label: 'BPM' },
			{ name: 'game duration', selected: true, label: 'Duration (game-size)' },
			{ name: 'release date', selected: true, label: 'Release date' },
			{ name: 'type', selected: true, label: 'Type' },
			{ name: '3d mv', selected: true, label: '3D MV' },
			{ name: '2d mv', selected: true, label: '2D MV' },
			{ name: 'original mv', selected: true, label: 'Original MV' },
			{ name: 'easy difficulty', selected: false, label: 'Easy difficulty' },
			{ name: 'normal difficulty', selected: false, label: 'Normal difficulty' },
			{ name: 'hard difficulty', selected: false, label: 'Hard difficulty' },
			{ name: 'expert difficulty', selected: false, label: 'Expert difficulty' },
			{ name: 'master difficulty', selected: false, label: 'Master difficulty' },
			{ name: 'easy notes', selected: false, label: 'Easy notes' },
			{ name: 'normal notes', selected: false, label: 'Normal notes' },
			{ name: 'hard notes', selected: false, label: 'Hard notes' },
			{ name: 'expert notes', selected: false, label: 'Expert notes' },
			{ name: 'master notes', selected: false, label: 'Master notes' },
		],
		{ }
	);
	
	$( function () {
		var search = new psw.db.SearchWidget(
			{ queryOptions: qOptions, displayOptions: dOptions },
			{ selector: '#song-results', template: 'Song datatable'	}
		);
		
		$( '#song-query' ).append( search.fieldset.$element );
	});
	
} )( jQuery, mediaWiki, pswiki );
Cookies help us deliver our services. By using our services, you agree to our use of cookies.