User:DarkMatterMan4500/Easy-link.js
From Test Wiki
Note: After publishing, you may have to bypass your browser's cache to see the changes.
- Firefox / Safari: Hold Shift while clicking Reload, or press either Ctrl-F5 or Ctrl-R (⌘-R on a Mac)
- Google Chrome: Press Ctrl-Shift-R (⌘-Shift-R on a Mac)
- Internet Explorer / Edge: Hold Ctrl while clicking Refresh, or press Ctrl-F5
- Opera: Press Ctrl-F5.
// Install this version with:
// <code><nowiki> {{subst:Iusc|User:DannyS712/Easy-link.js}} </nowiki></code>
// or with
// <code><nowiki> importScript( 'User:DannyS712/Easy-link.js' ); // Backlink: [[User:DannyS712/Easy-link.js]] </nowiki></code>
//
// If forking this script, please note my contributions / give me credit
//<nowiki>
$(function (){
var copy_link_config = {
name: '[[User:DannyS712/Easy-link.js|Easy-link.js]]',
version: 1.4,
debug: false
};
mw.loader.using( 'mediawiki.util', function () {
$(document).ready( function () {
mw.util.addPortletLink ( 'p-tb', '', 'Easy link', 'ca-copy-link', 'Copy and format the current link');
$('#ca-copy-link').on('click', function( e ) {
e.preventDefault();
copy_link();
} );
} );
} );
function copy_link(){
var current_url = window.location.href;
if (copy_link_config.debug) console.log( current_url );
var new_url = current_url.replace( /https?:\/\/.*?.org\/wiki\//i, '');
new_url = new_url.replace( /_/g, ' ');
new_url = decodeURI( new_url );
var colonNeeded = '';
if ( mw.config.get('wgNamespaceNumber') === 6 || mw.config.get('wgNamespaceNumber') === 14 ) {
colonNeeded = ':';
}
new_url = '[[' + colonNeeded + new_url + ']]';
if (copy_link_config.debug) console.log( new_url );
var ignore_this = document.createElement("input");
document.createElement("input");
document.body.appendChild(ignore_this);
ignore_this.setAttribute('value', new_url);
ignore_this.select();
document.execCommand("copy");
document.body.removeChild(ignore_this);
}
});
//</nowiki>