MediaWiki:Gadget-imagelinks.js

/* _____________________________________________________________________________ * |                                                                             | * |                    === WARNING: GLOBAL GADGET FILE ===                      | * |                 Changes to this page affect many users. | * | Please discuss changes on the talk page or on WT:Gadget before editing. | * |_____________________________________________________________________________| * * Direct imagelinks to Commons * Files hosted at Commons have local image links redirected to Commons. * Imported from version 9 as of 2012-12-08 * * @source mediawiki.org/wiki/Snippets/Direct_imagelinks_to_Commons * @author commons:User:Krinkle * @version 9 */ if ( mw.config.get( 'wgNamespaceNumber', 0 ) >= 0 ) { $( function {		var			uploadBaseRe = /^\/\/upload\.wikimedia\.org\/wikipedia\/commons/,

localBasePath = new RegExp('^' + mw.util.wikiGetlink( mw.config.get( 'wgFormattedNamespaces' )['6'] + ':' ).replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g, "\\$&")), localBaseScript = new RegExp('^' + (mw.util.wikiScript + '?title=' + mw.util.wikiUrlencode( mw.config.get( 'wgFormattedNamespaces' )['6'] + ':' )).replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g, "\\$&")),

commonsBasePath = '//commons.wikimedia.org/wiki/File:', commonsBaseScript = '//commons.wikimedia.org/w/index.php?title=File:'; $( 'a.image' ).attr( 'href', function ( i, currVal ) {			if ( uploadBaseRe.test( $(this).find( 'img' ).attr( 'src' ) ) ) {				return currVal					.replace( localBasePath, commonsBasePath )					.replace( localBaseScript, commonsBaseScript );			}		}); }); }