Content added Content deleted
mNo edit summary |
(updated master diffs) |
||
(23 intermediate revisions by the same user not shown) | |||
Line 3: | Line 3: | ||
var qOptions = new psw.db.QueryOptions(); |
var qOptions = new psw.db.QueryOptions(); |
||
var dOptions = new psw.db.DisplayOptions(); |
|||
qOptions. |
qOptions.addButtonMultiInput( |
||
'units', |
'units', |
||
{ label: 'Unit |
{ label: 'Unit categories' }, |
||
{ |
{ |
||
multiselect: true, |
multiselect: true, |
||
delimiter: ';', |
|||
items: [ |
items: [ |
||
{ label: 'VIRTUAL SINGER' }, |
{ label: 'VIRTUAL SINGER' }, |
||
Line 26: | Line 28: | ||
{ param: 'original mv', label: 'Original MV?' } |
{ param: 'original mv', label: 'Original MV?' } |
||
].forEach( function( paramLabel ) { |
].forEach( function( paramLabel ) { |
||
qOptions. |
qOptions.addButtonMultiInput( |
||
paramLabel.param, |
paramLabel.param, |
||
{ label: paramLabel.label }, |
{ label: paramLabel.label }, |
||
Line 40: | Line 42: | ||
} ); |
} ); |
||
qOptions. |
qOptions.addButtonMultiInput( |
||
' |
'types', |
||
{ label: ' |
{ label: 'Type(s)' }, |
||
{ |
{ |
||
multiselect: true, |
|||
items: [ |
items: [ |
||
{ label: ' |
{ label: 'Pre-existing', data: 'Pre-existing' }, |
||
{ label: ' |
{ label: 'Commissioned', data: 'Commissioned' }, |
||
{ label: ' |
{ label: 'Contest winner', data: 'Contest winner' } |
||
] |
] |
||
selected: 'Any' |
|||
} |
} |
||
); |
); |
||
qOptions. |
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', |
'released after', |
||
{ label: 'Released after' } |
{ label: 'Released after' } |
||
); |
); |
||
qOptions. |
qOptions.addDateInput( |
||
'released before', |
'released before', |
||
{ label: 'Released before' } |
{ label: 'Released before' } |
||
Line 63: | Line 77: | ||
[ |
[ |
||
{ param: 'easy |
{ param: 'easy difficulties', label: 'Easy difficulties', min: 5, max: 9 }, |
||
{ param: 'normal |
{ param: 'normal difficulties', label: 'Normal difficulties', min: 10, max: 15 }, |
||
{ param: 'hard |
{ param: 'hard difficulties', label: 'Hard difficulties', min: 15, max: 24 }, |
||
{ param: 'expert |
{ param: 'expert difficulties', label: 'Expert difficulties', min: 21, max: 31 }, |
||
{ param: 'master |
{ param: 'master difficulties', label: 'Master difficulties', min: 25, max: 37 }, |
||
].forEach( function( diff ) { |
].forEach( function( diff ) { |
||
var diffItems = []; |
var diffItems = []; |
||
Line 74: | Line 88: | ||
} |
} |
||
qOptions. |
qOptions.addButtonMultiInput( |
||
diff.param, |
diff.param, |
||
{ label: diff.label }, |
{ label: diff.label }, |
||
Line 83: | Line 97: | ||
); |
); |
||
} ); |
} ); |
||
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 () { |
$( function () { |
||
var search = new psw.db.SearchWidget( |
var search = new psw.db.SearchWidget( |
||
{ queryOptions: qOptions }, |
{ queryOptions: qOptions, displayOptions: dOptions }, |
||
{ selector: '#song-results', template: 'Song datatable' } |
{ selector: '#song-results', template: 'Song datatable' } |
||
); |
); |
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 );