Difference between revisions of "MediaWiki:Common.js"
Jump to navigation
Jump to search
Line 1: | Line 1: | ||
+ | /** | ||
+ | * @source https://www.mediawiki.org/wiki/Snippets/Load_JS_and_CSS_by_URL | ||
+ | * @revision 2017-05-16 | ||
+ | */ | ||
+ | mw.loader.using( ['mediawiki.util', 'mediawiki.notify'], function () { | ||
+ | var extraCSS = mw.util.getParamValue( 'withCSS' ), | ||
+ | extraJS = mw.util.getParamValue( 'withJS' ); | ||
+ | |||
+ | if ( extraCSS ) { | ||
+ | // DONT REMOVE THIS IF (unless you are OK with CSRF attacks) | ||
+ | if ( /^MediaWiki:[^&<>=%#]*\.css$/.test( extraCSS ) ) { | ||
+ | mw.loader.load( '/w/index.php?title=' + encodeURIComponent( extraCSS ) + '&action=raw&ctype=text/css', 'text/css' ); | ||
+ | } else { | ||
+ | mw.notify( 'Only pages from the MediaWiki namespace are allowed.', { title: 'Invalid withCSS value' } ); | ||
+ | } | ||
+ | } | ||
+ | |||
+ | if ( extraJS ) { | ||
+ | // DONT REMOVE THIS IF (unless you are OK with XSS & CSRF attacks) | ||
+ | if ( /^MediaWiki:[^&<>=%#]*\.js$/.test( extraJS ) ) { | ||
+ | mw.loader.load( '/w/index.php?title=' + encodeURIComponent( extraJS ) + '&action=raw&ctype=text/javascript' ); | ||
+ | } else { | ||
+ | mw.notify( 'Only pages from the MediaWiki namespace are allowed.', { title: 'Invalid withJS value' } ); | ||
+ | } | ||
+ | } | ||
+ | }); | ||
+ | |||
/* 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. */ | ||
mw.notify( 'Welcome!' ); | mw.notify( 'Welcome!' ); |
Revision as of 08:10, 29 March 2019
/**
* @source https://www.mediawiki.org/wiki/Snippets/Load_JS_and_CSS_by_URL
* @revision 2017-05-16
*/
mw.loader.using( ['mediawiki.util', 'mediawiki.notify'], function () {
var extraCSS = mw.util.getParamValue( 'withCSS' ),
extraJS = mw.util.getParamValue( 'withJS' );
if ( extraCSS ) {
// DONT REMOVE THIS IF (unless you are OK with CSRF attacks)
if ( /^MediaWiki:[^&<>=%#]*\.css$/.test( extraCSS ) ) {
mw.loader.load( '/w/index.php?title=' + encodeURIComponent( extraCSS ) + '&action=raw&ctype=text/css', 'text/css' );
} else {
mw.notify( 'Only pages from the MediaWiki namespace are allowed.', { title: 'Invalid withCSS value' } );
}
}
if ( extraJS ) {
// DONT REMOVE THIS IF (unless you are OK with XSS & CSRF attacks)
if ( /^MediaWiki:[^&<>=%#]*\.js$/.test( extraJS ) ) {
mw.loader.load( '/w/index.php?title=' + encodeURIComponent( extraJS ) + '&action=raw&ctype=text/javascript' );
} else {
mw.notify( 'Only pages from the MediaWiki namespace are allowed.', { title: 'Invalid withJS value' } );
}
}
});
/* Any JavaScript here will be loaded for all users on every page load. */
mw.notify( 'Welcome!' );
mw.notify( $('<a href="/wiki/Help:Contributing">Know basic Javascript or PHP?</a>' ) );
mw.notify( $('<a href="/wiki/Help/data_input">Got ecosystem data?</a>' ) );
mw.loader.load( '//wiki.personaldata.io/w/index.php?title=MediaWiki:Gadget-EasyQuery.js&action=raw&ctype=text/javascript' ); // [[EasyQuery]]