Spring til indhold

Brugerdiskussion:Rodejong/vector.js

Sidens indhold er ikke tilgængeligt på andre sprog.
Fra Wikipedia, den frie encyklopædi

(function () { var conf = mw.config.get([ 'wgHostname', 'wgBackendResponseTime', 'wgIsArticle', 'wgCanonicalNamespace', 'wgTitle' ]); /**

* Unwatch from watchlist
*
* Add an "unwatch" link near each entry on the watchlist view (bugzilla:424).
*
* @source www.mediawiki.org/wiki/Snippets/Unwatch_from_watchlist
* @author Krinkle
* @revision 2014-12-17
*/

mw.hook( 'wikipage.content' ).add( function ( $content ) { // Only on Watchlist and not in the /edit or /raw mode if ( mw.config.get( 'wgCanonicalSpecialPageName' ) !== 'Watchlist' || location.href.indexOf( '/edit' ) > 0 || location.href.indexOf( '/raw' ) > 0 ) { return; } mw.loader.using( ['mediawiki.util', 'mediawiki.api.watch'] ).then( function () { // Get the links var $wlHistLinks = $content.find( 'ul.special > li > a[href$="action=history"]');

$wlHistLinks.each( function () { var $unwatch, $el = $( this ), title = mw.util.getParamValue( 'title', this.href );

$unwatch = $el.clone() .text( 'unwatch' ) .attr( 'href', function ( i, val ) { return val.replace( 'action=history', 'action=unwatch' ); } ) .on( 'click', function ( e ) { new mw.Api().unwatch( title ) .done( function () { $unwatch.css( { pointerEvents: 'none', opacity: 0.5 } ); } ) .fail( function () { $unwatch.off( 'click' ).append( ' (try again?)' ); } ); e.preventDefault(); } ); $el.after( $unwatch ).after( ' | ' ); } ); } ); } );


// Init var pKrinkle = $.when(mw.loader.using(['mediawiki.util','skins.vector.js']), $.ready).then(function () { // Personal links $('#p-variants').after( $('#p-cactions').clone().detach() .attr('id', 'p-krinkle') .find('ul,span').empty().end() );

mw.util.addPortletLink('p-krinkle', mw.util.getUrl('Special:Prefixindex/MediaWiki:'), 'Special:PrefixIndex/MediaWiki:'); mw.util.addPortletLink('p-krinkle', mw.util.getUrl('Special:RecentChanges', { namespace: 8, days: 30, limit: 100 }), 'RecentChanges/MediaWiki:');

$('#p-krinkle ul').append('


');

mw.util.addPortletLink('p-krinkle', '//commons.wikimedia.org/wiki/User:Krinkle/', 'commons: Snippets'); mw.util.addPortletLink('p-krinkle', '//meta.wikimedia.org/wiki/User:Krinkle/SulBase', 'meta: SULBase'); mw.util.addPortletLink('p-krinkle', '//meta.wikimedia.org/wiki/User:Krinkle/Le_Tour_de_Wik%C3%AD/2011_Resource_Walker', 'meta: Tour'); mw.util.addPortletLink('p-krinkle', '//meta.wikimedia.org/wiki/User:Krinkle/global.js', 'meta: global.js');

$('#p-krinkle ul').append('


  • ' + mw.html.escape( 'host: ' + conf.wgHostname + ', backendTime: ' + conf.wgBackendResponseTime + 'ms') + '
  • ');

    if (mw.config.get('skin') === 'vector' && $.collapsibleTabs) { $('#p-krinkle ul').collapsibleTabs(); $.collapsibleTabs.handleResize(); } });

    // Fil:Krinkle Countervandalism.js mw.loader.load('//meta.wikimedia.org/w/index.php?title=User:Krinkle/Scripts/Countervandalism.js&action=raw&ctype=text/javascript');

    if (conf.wgIsArticle && conf.wgCanonicalNamespace === 'Project' && /labels/i.test(conf.wgTitle)) { // Wiki-Labels mw.loader.load('//meta.wikimedia.org/w/index.php?title=MediaWiki:Gadget-WikiLabels-loader.js&action=raw&ctype=text/javascript'); }

    mw.loader.using('mediawiki.util', function () { if (mw.util.getParamValue('runjsupdater')) { // Fil:User:He7d3r/Tools/jsUpdater.js (workaround for phab:T35355) mw.loader.load( '//meta.wikimedia.org/w/index.php?title=User:He7d3r/Tools/jsUpdater.js&action=raw&ctype=text/javascript' ); } else { pKrinkle.then(function () { var node = mw.util.addPortletLink('p-krinkle', '#', 'Load jsUpdater'); $(node).on('click', function (e) { e.preventDefault(); mw.loader.load('//meta.wikimedia.org/w/index.php?title=User:He7d3r/Tools/jsUpdater.js&action=raw&ctype=text/javascript'); }); }); } });

    /**

    * Keep track of module cache invalidation.
    *
    * @version 2015-09-30
    * @author Timo Tijhof
    * @source https://gist.github.com/Krinkle/5751a6dd9c19d8f61961
    */
    

    mw.loader.using('mediawiki.notify', function () { var i = 0, more = []; if (mw.config.get('debug')) { return; } var vary = mw.config.get('skin') + ':' + mw.config.get('wgUserLanguage'); var versions = {}; mw.loader.getModuleNames().forEach(function (module) { versions[module] = mw.loader.getVersion(module); } ); var oldVersions = localStorage.getItem('MwRlVersionTrack'); oldVersions = oldVersions && JSON.parse(oldVersions); if (oldVersions && oldVersions.vary === vary) { Object.keys(oldVersions.versions).forEach(function (module) { var msg; if (oldVersions.versions[module] === versions[module]) { return; } if (!oldVersions.versions[module]) { msg = mw.format( '[MwRlVersionTrack] Add module "$1" at "$2".', module, versions[module] ); } else if (!versions[module]) { msg = mw.format( '[MwRlVersionTrack] Remove module "$1", was "$2".', module, oldVersions.versions[module] ); } else { msg = mw.format( '[MwRlVersionTrack] Version of "$1" changed from "$2" to "$3".', module, oldVersions.versions[module], versions[module] ); } i++; if (i < 5) { console.info(msg); mw.notify(msg); } else { more.push(module); } }); if (more.length) { console.info(mw.format('[MwRlVersionTrack] $1 other modules changed: ', more.length), more); mw.notify(mw.format('[MwRlVersionTrack] $1 other modules changed: $2', more.length, more.join(', ').slice(0, 20) + '...')); } } localStorage.setItem('MwRlVersionTrack', JSON.stringify({ vary: vary, versions: versions })); }); }());