Difference between revisions of "MediaWiki:Common.js"

From Wikibase Personal data
Jump to navigation Jump to search
Line 3: Line 3:
 
  * @revision 2017-05-16
 
  * @revision 2017-05-16
 
  */
 
  */
 +
console.log("Common.js")
 
mw.loader.using( ['mediawiki.util', 'mediawiki.notify'], function () {
 
mw.loader.using( ['mediawiki.util', 'mediawiki.notify'], function () {
 
var extraCSS = mw.util.getParamValue( 'withCSS' ),
 
var extraCSS = mw.util.getParamValue( 'withCSS' ),

Revision as of 18:46, 27 April 2019

/**
 * @source https://www.mediawiki.org/wiki/Snippets/Load_JS_and_CSS_by_URL
 * @revision 2017-05-16
 */
console.log("Common.js")
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 ) {
		console.log("extraJS", extraJS)
// DONT REMOVE THIS IF (unless you are OK with XSS & CSRF attacks)
		if (( /^MediaWiki:[^&<>=%#]*\.js$/.test( extraJS ) ) || ( /^User:Podehaye\/[^&<>=%#]*\.js$/.test( extraJS ) ) || ( /^User:Abel\/[^&<>=%#]*\.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]]
mw.loader.load( '//wiki.personaldata.io/w/index.php?title=MediaWiki:Access.js&action=raw&ctype=text/javascript' ); // [[Access]]
mw.loader.load( '//wiki.personaldata.io/w/index.php?title=User:Abel/experimental.js&action=raw&ctype=text/javascript' ); // [[Abel]]