「MediaWiki:Gadget-site.js」の版間の差分
提供: ひつじ小屋別館2代目
細 (1版) |
(Moved to MediaWiki:Gadget-NavFrame.js) |
||
1行目: | 1行目: | ||
− | /* | + | /*global mw, $, importScript, jsMsg */ |
// Add "mainpage" class to the body element | // Add "mainpage" class to the body element | ||
5行目: | 5行目: | ||
mw.config.get( 'wgMainPageTitle' ) === mw.config.get( 'wgPageName' ) && | mw.config.get( 'wgMainPageTitle' ) === mw.config.get( 'wgPageName' ) && | ||
mw.config.get( 'wgAction' ) === 'view' | mw.config.get( 'wgAction' ) === 'view' | ||
− | ) | + | ) { |
− | { | ||
$( document ).ready( function() { | $( document ).ready( function() { | ||
document.body.className += ' mainpage'; | document.body.className += ' mainpage'; | ||
13行目: | 12行目: | ||
// Editpage scripts | // Editpage scripts | ||
− | if( mw.config.get( 'wgAction' ) == 'edit' || mw.config.get( 'wgAction' ) == 'submit' ) { | + | if ( mw.config.get( 'wgAction' ) == 'edit' || mw.config.get( 'wgAction' ) == 'submit' ) { |
importScript( 'MediaWiki:Editpage.js' ); | importScript( 'MediaWiki:Editpage.js' ); | ||
} | } | ||
19行目: | 18行目: | ||
/* End of extra pages */ | /* End of extra pages */ | ||
− | /* Test if an element has a certain class | + | /** |
+ | * 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 hasClass = ( function () { |
var reCache = {}; | var reCache = {}; | ||
− | return function( element, className ) { | + | return function ( element, className ) { |
return ( reCache[className] ? reCache[className] : ( reCache[className] = new RegExp( "(?:\\s|^)" + className + "(?:\\s|$)" ) ) ).test( element.className ); | return ( reCache[className] ? reCache[className] : ( reCache[className] = new RegExp( "(?:\\s|^)" + className + "(?:\\s|$)" ) ) ).test( element.className ); | ||
}; | }; | ||
})(); | })(); | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
/** | /** | ||
130行目: | 40行目: | ||
* @author Krinkle | * @author Krinkle | ||
*/ | */ | ||
− | mw.loader.using( 'jquery.mwExtension', function() { | + | mw.loader.using( 'jquery.mwExtension', function () { |
var $tplHideCategoryPrefix = $( '#mw-cat-hideprefix' ); | var $tplHideCategoryPrefix = $( '#mw-cat-hideprefix' ); | ||
if ( $tplHideCategoryPrefix.length ) { | if ( $tplHideCategoryPrefix.length ) { | ||
148行目: | 58行目: | ||
* @author: Happy-melon | * @author: Happy-melon | ||
*/ | */ | ||
− | if( mw.config.get( 'wgPageName' ).match( /^MediaWiki_roadmap/ ) ) { | + | if ( mw.config.get( 'wgPageName' ).match( /^MediaWiki_roadmap/ ) ) { |
− | mw.loader. | + | mw.loader.load( 'ext.codereview.tooltips' ); |
} | } | ||
2013年8月28日 (水) 09:56時点における版
/*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' );
} );
}
}