Difference between revisions of "MediaWiki:Common.js"
Jump to navigation
Jump to search
Line 1: | Line 1: | ||
/* Any JavaScript here will be loaded for all users on every page load. */ | /* Any JavaScript here will be loaded for all users on every page load. */ | ||
− | $('#listProjects thead tr') | + | |
+ | |||
+ | $(function() { | ||
+ | cDependent(); | ||
+ | $('#listProjects thead tr') | ||
.clone(true) | .clone(true) | ||
.addClass('filters') | .addClass('filters') | ||
.appendTo('#listProjects thead'); | .appendTo('#listProjects thead'); | ||
− | |||
− | |||
− | |||
listProjects(); | listProjects(); | ||
}); | }); |
Revision as of 22:38, September 13, 2021
/* Any JavaScript here will be loaded for all users on every page load. */
$(function() {
cDependent();
$('#listProjects thead tr')
.clone(true)
.addClass('filters')
.appendTo('#listProjects thead');
listProjects();
});
function cDependent(){
if($('.mw-references-wrap').length === 0){
} else {
$('.cdependent').show();
}
}
function listProjects(){
var table = $('#listProjects').DataTable({
// dom: '<"top"lif>t<"bottom"p><"clear">',
searchPanes: {
layout: 'columns-2'
},
dom: 'Pfrtip',
responsive: true,
colReorder: true,
order: [[ 0, 'asc' ]],
columns: [
{ "title": "Film" },
{ "title": "Year" },
{ "title": "Studio" },
{ "title": "Agency" },
{ "title": "Functions, Assets and Awards" },
{ "title": "Audience" },
{ "title": "Media Partner" }
],
columnDefs: [{
searchPanes: {
show: true
},
targets: [0, 1, 2, 3]
}],
aoColumns: [],
lengthMenu: [
[10, 25, 50, -1], [10, 25, 50, "All"]
],
pageLength: 25,
orderCellsTop: true,
fixedHeader: true,
initComplete: function () {
var api = this.api();
// For each column
api
.columns()
.eq(0)
.each(function (colIdx) {
// Set the header cell to contain the input element
var cell = $('.filters th').eq(
$(api.column(colIdx).header()).index()
);
var title = $(cell).text();
$(cell).html('<input type="text" placeholder="' + title + '" />');
// On every keypress in this input
$(
'input',
$('.filters th').eq($(api.column(colIdx).header()).index())
)
.off('keyup change')
.on('keyup change', function (e) {
e.stopPropagation();
// Get the search value
$(this).attr('title', $(this).val());
var regexr = '({search})'; //$(this).parents('th').find('select').val();
var cursorPosition = this.selectionStart;
// Search the column for that value
api
.column(colIdx)
.search(
this.value != ''
? regexr.replace('{search}', '(((' + this.value + ')))')
: '',
this.value != '',
this.value == ''
)
.draw();
$(this)
.focus()[0]
.setSelectionRange(cursorPosition, cursorPosition);
});
});
},
});
}