MediaWiki:Common.js
From Phidgets Support
Note: After publishing, you may have to bypass your browser's cache to see the changes.
- Firefox / Safari: Hold Shift while clicking Reload, or press either Ctrl-F5 or Ctrl-R (⌘-R on a Mac)
- Google Chrome: Press Ctrl-Shift-R (⌘-Shift-R on a Mac)
- Internet Explorer / Edge: Hold Ctrl while clicking Refresh, or press Ctrl-F5
- Opera: Press Ctrl-F5.
/**
* Redirect User:Name/skin.js and skin.css to the current skin's pages
* (unless the 'skin' page really exists)
* @source: http://www.mediawiki.org/wiki/Snippets/Redirect_skin.js
* @rev: 2
*/
if ( mw.config.get( 'wgArticleId' ) == 0 && mw.config.get( 'wgNamespaceNumber' ) == 2 ) {
var titleParts = mw.config.get( 'wgPageName' ).split( '/' );
// Make sure there was a part before and after the slash
// And that the latter is 'skin.js' or 'skin.css'
if ( titleParts.length == 2 ) {
var userSkinPage = titleParts.shift() + '/' + mw.config.get( 'skin' );
if ( titleParts.slice(-1) == 'skin.js' ) {
window.location.href = mw.util.wikiGetlink( userSkinPage + '.js' );
} else if ( titleParts.slice(-1) == 'skin.css' ) {
window.location.href = mw.util.wikiGetlink( userSkinPage + '.css' );
}
}
}
// Book specific
var wgBookName = ( mw.config.get( 'wgPageName' ).split( '/', 1)[0] || '' ).split( ':', 2 ).join( ':' );
importStylesheet('MediaWiki:Common.css/' + wgBookName);
// Imported scripts
importScript('MediaWiki:Common.js/Relics.js');
importScript('MediaWiki:Common.js/ExtraTools.js');
importScript('MediaWiki:Common.js/CollapseElements.js');
importScript('MediaWiki:Common.js/NavigationTabs.js');
importScript('MediaWiki:Common.js/Displaytitle.js');
importScript('MediaWiki:Common.js/RandomBook.js');
importScript('MediaWiki:Common.js/Perbook.js');
importScript('MediaWiki:Common.js/tabs.js');
importScript('MediaWiki:Common.js/top.js');
importScript('MediaWiki:Common.js/review.js');
importScript('MediaWiki:Common.js/Categories.js');
importScript('MediaWiki:Common.js/use.js');
if ( mw.config.get( 'wgCanonicalSpecialPageName' ) == 'Watchlist' ) {
importScript('MediaWiki:Common.js/WatchlistNotice.js');
} else if ( $.inArray( mw.config.get( 'wgAction' ), ['edit', 'submit', 'upload'] ) != -1 ) {
importScript('MediaWiki:Common.js/Special_characters.js');
importScript('MediaWiki:Common.js/Toolbox.js');
}
// Load sysop-specific JavaScript/CSS from [[MediaWiki:Common.js/Sysop.js]] and [[MediaWiki:Common.css/Sysop.css]]
if ( $.inArray( 'sysop', wgUserGroups) > -1 ) {
importStylesheet('MediaWiki:Common.css/Sysop.css');
if ( !window.disableSysopJS ) {
$(function(){
importScript('MediaWiki:Common.js/Sysop.js');
});
}
}
// Custom script for Mobile Navigation
var menuCtn = $('#ph-dropDownMenu');
var searchCtn = $('#ph-dropDownSearch');
var menuBtn = $('#mb-menu');
var searchBtn = $('#mb-search');
var tables = $('table');
var admintoolbox = $('#p-admin-toolbox');
searchBtn.click(function() {
if(menuCtn.css('display') !== 'none') {
menuCtn.css('display','none');
if(menuBtn.hasClass('mb-menu-close'))
menuBtn.removeClass('mb-menu-close')
}
if(searchCtn.css('display') === 'none') {
searchCtn.fadeIn(200);
return;
} else {
searchCtn.fadeOut(200);
return;
}
});
menuBtn.click(function() {
if(searchCtn.css('display') !== 'none') {
searchCtn.css('display','none');
}
if(menuCtn.css('display') === 'none') {
menuCtn.fadeIn(200);
$(this).addClass('mb-menu-close');
return;
} else {
menuCtn.fadeOut(200);
$(this).removeClass('mb-menu-close');
return;
}
});
if($('#p-views').css('display') === 'block' && $('#p-cactions').css('display') === 'block') {
$('.ph-search-group').addClass('hasAdminGroup');
$('.ph-admin-group').addClass('group-visible');
}
tables.each(function() {
$(this).addClass('table').attr('border','0');
$(this).wrap("<div class='table-responsive'></div>");
});
admintoolbox.each(function() {
var toolbox = $(this);
toolbox.removeClass('portal').addClass('vectorMenu');
var menuCtn = toolbox.find('div.body');
menuCtn.removeClass('body').addClass('menu');
});
$('.ph-tools-group').addClass('group-visible');
// Scroll to top button
$(window).scroll(function () {
var toTopBtn = $('.ph-to-top');
if ($(this).scrollTop() > 400) {
toTopBtn.stop(true, true).fadeIn();
} else {
toTopBtn.stop(true, true).fadeOut();
}
});
$('.to-top').click(function () {
$("html, body").animate({ scrollTop: 0 }, 400);
return false;
});
$('.ph-dropdown-menu-item').click(function() {
$(this).toggleClass('ph-dropdown-active');
// toggle the container
// ph-dropdown-ctn
var ctn = $(this).parent().find('.ph-dropdown-ctn');
ctn.toggle();
});