MediaWiki:CharacterTable.js: Difference between revisions

Jump to navigation Jump to search
Content added Content deleted
No edit summary
(Fixed filtering by multiple toggles)
Line 1: Line 1:
$( document ).ready(function() {
$( document ).ready(function() {
var charactertable_filters = new Set();
$(".charactertable-controls > .controls > span").on("click", function(){characterTableToggle($(this));});
$(".charactertable-controls > .controls > span").on("click", function(){characterTableToggle($(this));});
});
});
Line 10: Line 11:
if (toggleItem.hasClass("inactive")) {
if (toggleItem.hasClass("inactive")) {
toggleItem.addClass('active').removeClass('inactive');
toggleItem.addClass('active').removeClass('inactive');
charactertable_filters.delete(toggleItem.attr('data-toggle'));
toggleState = true;
}
}
else {
else {
toggleItem.addClass('inactive').removeClass('active');
toggleItem.addClass('inactive').removeClass('active');
charactertable_filters.add(toggleItem.attr('data-toggle'));
toggleState = false;
}
}


$(".charactertable tr."+toggleItem.attr('data-toggle')).each(function (element){
$(".charactertable tr").each(function (element){
hideRow = false;
(toggleState) ? $(this).addClass('visible').removeClass('hidden') : $(this).addClass('hidden').removeClass('visible');
charactertable_filters.forEach(filter => {
if ($(this).hasClass(filter)) hideRow = true;
});
if (hideRow) $(this).addClass('hidden').removeClass('visible');
else $(this).addClass('visible').removeClass('hidden');
});
});