「MediaWiki:Gadget-site.js」の版間の差分
提供: ひつじ小屋別館2代目
(Moved to MediaWiki:Gadget-NavFrame.js) |
細 (1版) |
(相違点なし)
|
2013年10月14日 (月) 13:49時点における版
/*global mw, $, importScript, jsMsg */
// Add "mainpage" class to the body element
if (
mw.config.get( 'wgMainPageTitle' ) === mw.config.get( 'wgPageName' ) &&
mw.config.get( 'wgAction' ) === 'view'
) {
$( document ).ready( function() {
document.body.className += ' mainpage';
});
}
// Editpage scripts
if ( mw.config.get( 'wgAction' ) == 'edit' || mw.config.get( 'wgAction' ) == 'submit' ) {
importScript( 'MediaWiki:Editpage.js' );
}
/* End of extra pages */
/**
* Test if an element has a certain class
*
* Based on script from en.wikipedia.org, 2008-09-15.
* Maintainers: [[User:Mike Dillon]], [[User:R. Koot]], [[User:SG]]
*
* @deprecated since MediaWiki 1.17: Use jQuery(element).hasClass instead
*/
var hasClass = ( function () {
var reCache = {};
return function ( element, className ) {
return ( reCache[className] ? reCache[className] : ( reCache[className] = new RegExp( "(?:\\s|^)" + className + "(?:\\s|$)" ) ) ).test( element.className );
};
})();
/**
* Hide prefix in category
*
* @source: www.mediawiki.org/wiki/Snippets/Hide_prefix_in_category
* @rev: 3
* @author Krinkle
*/
mw.loader.using( 'jquery.mwExtension', function () {
var $tplHideCategoryPrefix = $( '#mw-cat-hideprefix' );
if ( $tplHideCategoryPrefix.length ) {
var prefix = $tplHideCategoryPrefix.text();
if ( $.trim( prefix ) === '' ) {
prefix = mw.config.get( 'wgTitle' ) + '/';
}
$( '#mw-pages' ).find( 'a' ).text( function( i, val ){
return val.replace( new RegExp( '^' + $.escapeRE( prefix ) ), '' );
});
}
});
/**
* Load the CodeReview 'tooltips' gadget on [[MediaWiki roadmap]] subpages,
* so it's available for the revision reports where it's particularly useful
* @author: Happy-melon
*/
if ( mw.config.get( 'wgPageName' ).match( /^MediaWiki_roadmap/ ) ) {
mw.loader.load( 'ext.codereview.tooltips' );
}
/**
* Load withJS and withCSS
*
* @source: www.mediawiki.org/wiki/Snippets/Load_JS_and_CSS_by_URL#Load_withJS_and_withCSS
* @rev: 1
* @author: Krinkle
*/
/* withJS */
var extraJS = mw.util.getParamValue( 'withJS' );
if ( extraJS ) {
// Disallow some characters in file name
if ( extraJS.match( /^MediaWiki:[^&<>=%#]*\.js$/ ) ) {
importScript( extraJS );
// Don't use alert but the jsMsg system. Run jsMsg only once the DOM is ready.
} else {
$( document ).ready( function() {
jsMsg( extraJS + ' script not allowed to be loaded.', 'error' );
} );
}
}
/* withCSS */
var extraCSS = mw.util.getParamValue( 'withCSS' );
if ( extraCSS ) {
// Disallow some characters in file name
if ( extraCSS.match( /^MediaWiki:[^&<>=%#]*\.css$/ ) ) {
importStylesheet( extraCSS );
// Don't use alert but the jsMsg system. Run jsMsg only once the DOM is ready.
} else {
$( document ).ready( function() {
jsMsg( extraCSS + ' stylesheet not allowed to be loaded.', 'error' );
} );
}
}