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 ) { |
| + | console.log("withJS", 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 ) )) // these additional choices should work, but I can't get them to work! |
| + | { |
| + | 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.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:Gadget-CreateNewItem.js&action=raw&ctype=text/javascript' ); // [[CreateNewItem]] |
| + | // mw.loader.load( '//wiki.personaldata.io/w/index.php?title=MediaWiki:Gadget-Merge.js&action=raw&ctype=text/javascript' ); // [[Merge]] |
| + | |
| + | // mw.loader.load( '//wiki.personaldata.io/w/index.php?title=MediaWiki:HeaderMenu.js&action=raw&ctype=text/javascript' ); // [[HeaderMenu]] |
| + | // mw.loader.load( '//wiki.personaldata.io/w/index.php?title=MediaWiki:PopupMenu.js&action=raw&ctype=text/javascript' ); // [[PopupMenu]] |
| + | |
| + | 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=MediaWiki:SwissAccess.js&action=raw&ctype=text/javascript' ); // [[SwissAccess]] |
| + | // mw.loader.load( '//wiki.personaldata.io/w/index.php?title=User:Abel/experimental.js&action=raw&ctype=text/javascript' ); // [[Abel]] |
| + | // mw.loader.load( '//wiki.personaldata.io/w/index.php?title=MediaWiki:Gadget-QuickPresets.js&action=raw&ctype=text/javascript' ); // quickpresets |
| + | |
| + | mw.loader.load( '//wiki.personaldata.io/w/index.php?title=MediaWiki:NoSiteLinks.js&action=raw&ctype=text/javascript' ); |