MediaWiki:Gadget-imagelinks.js: Perbedaan antara revisi
Konten dihapus Konten ditambahkan
Maintenance: mw:RL/MGU - Updated deprecated module name |
Tag: Dikembalikan |
||
Baris 1: | Baris 1: | ||
/** |
|||
/* _____________________________________________________________________________ |
|||
* | | |
|||
* | === 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 |
* Direct imagelinks to Commons |
||
* |
* |
||
Baris 12: | Baris 6: | ||
* @source https://www.mediawiki.org/wiki/Snippets/Direct_imagelinks_to_Commons |
* @source https://www.mediawiki.org/wiki/Snippets/Direct_imagelinks_to_Commons |
||
* @author Krinkle |
* @author Krinkle |
||
* @version |
* @version 2019-09-14 |
||
*/ |
*/ |
||
if ( mw.config.get( 'wgNamespaceNumber', 0 ) >= 0 ) { |
if ( mw.config.get( 'wgNamespaceNumber', 0 ) >= 0 ) { |
||
mw. |
mw.loader.using( [ 'mediawiki.util' ] ).then( function () { |
||
mw.hook( 'wikipage.content' ).add( function ( $content ) { |
|||
var |
|||
uploadBaseRe = /^\/\/upload\.wikimedia\.org\/wikipedia\/commons/, |
var uploadBaseRe = /^(https:)?\/\/upload\.wikimedia\.org\/wikipedia\/commons/, |
||
⚫ | |||
⚫ | |||
⚫ | |||
localBaseScript = new RegExp( '^' + mw.util.escapeRegExp( |
|||
⚫ | |||
⚫ | |||
localBaseScript = new RegExp( |
|||
'^' + mw.RegExp.escape( |
|||
mw.util.wikiScript() + '?title=' + mw.util.wikiUrlencode( localFileNSString ) |
mw.util.wikiScript() + '?title=' + mw.util.wikiUrlencode( localFileNSString ) |
||
) |
) ), |
||
⚫ | |||
), |
|||
⚫ | |||
⚫ | |||
⚫ | |||
$content.find( 'a.image' ).attr( 'href', function ( i, currVal ) { |
$content.find( 'a.image, a.mw-file-description' ).attr( 'href', function ( i, currVal ) { |
||
if ( uploadBaseRe.test( $( this ).find( 'img' ).attr( 'src' ) ) ) { |
if ( uploadBaseRe.test( $( this ).find( 'img' ).attr( 'src' ) ) ) { |
||
return currVal |
return currVal |
||
.replace( localBasePath, commonsBasePath ) |
.replace( localBasePath, commonsBasePath ) |
||
.replace( localBaseScript, commonsBaseScript ); |
.replace( localBaseScript, commonsBaseScript ); |
||
} |
} |
||
⚫ | |||
} ); |
} ); |
||
} ); |
} ); |
Revisi per 25 November 2022 11.00
/**
* Direct imagelinks to Commons
*
* Required modules: mediawiki.util
*
* @source https://www.mediawiki.org/wiki/Snippets/Direct_imagelinks_to_Commons
* @author Krinkle
* @version 2019-09-14
*/
if ( mw.config.get( 'wgNamespaceNumber', 0 ) >= 0 ) {
mw.loader.using( [ 'mediawiki.util' ] ).then( function () {
mw.hook( 'wikipage.content' ).add( function ( $content ) {
var uploadBaseRe = /^(https:)?\/\/upload\.wikimedia\.org\/wikipedia\/commons/,
localFileNSString = mw.config.get( 'wgFormattedNamespaces' )['6'] + ':',
localBasePath = new RegExp( '^' + mw.util.escapeRegExp( mw.util.getUrl( localFileNSString ) ) ),
localBaseScript = new RegExp( '^' + mw.util.escapeRegExp(
mw.util.wikiScript() + '?title=' + mw.util.wikiUrlencode( localFileNSString )
) ),
commonsBasePath = 'https://commons.wikimedia.org/wiki/File:',
commonsBaseScript = 'https://commons.wikimedia.org/w/index.php?title=File:';
$content.find( 'a.image, a.mw-file-description' ).attr( 'href', function ( i, currVal ) {
if ( uploadBaseRe.test( $( this ).find( 'img' ).attr( 'src' ) ) ) {
return currVal
.replace( localBasePath, commonsBasePath )
.replace( localBaseScript, commonsBaseScript );
}
} );
} );
} );
}