MediaWiki:Common.js: Difference between revisions
Jump to navigation
Jump to search
Adventuresro (talk | contribs) |
Adventuresro (talk | contribs) |
||
| (29 intermediate revisions by the same user not shown) | |||
| Line 9: | Line 9: | ||
var aNode = document.createElement( 'a' ); | var aNode = document.createElement( 'a' ); | ||
var liNode = document.createElement( 'li' ); | var liNode = document.createElement( 'li' ); | ||
var url = mw.config.get('wgServer') + mw.config.get('wgScriptPath') + '/index.php/Special:CategoryTree'; | |||
aNode.appendChild( document.createTextNode( 'CategoryTree' ) ); | aNode.appendChild( document.createTextNode( 'CategoryTree' ) ); | ||
aNode.setAttribute( 'href' , | aNode.setAttribute( 'href' , url ); | ||
liNode.appendChild( aNode ); | liNode.appendChild( aNode ); | ||
liNode.className = 'plainlinks'; | liNode.className = 'plainlinks'; | ||
| Line 23: | Line 23: | ||
addOnloadHook( AppendCategoryTreeToSidebar ); | addOnloadHook( AppendCategoryTreeToSidebar ); | ||
function navi(map, x, y) { | |||
var text = "/navi " + map + " " + x + "/" + y; | |||
// Create a temporary textarea element | |||
const textarea = document.createElement("textarea"); | |||
textarea.value = text; | |||
textarea.style.position = "fixed"; // Make it invisible and outside of the viewport | |||
textarea.style.left = "-9999px"; | |||
textarea.style.top = "-9999px"; | |||
document.body.appendChild(textarea); | |||
// Select and copy the text from the textarea | |||
textarea.select(); | |||
document.execCommand("copy"); | |||
// Remove the textarea from the DOM | |||
document.body.removeChild(textarea); | |||
} | |||
$(document).on('click', '.navi-copy-text', function() { | |||
var txt= $(this)[0].innerText.replace('(','').replace(')','').split(' '); | |||
var cords = txt[1].split(','); | |||
var location = txt[0]; | |||
var x = cords[0]; | |||
var y = cords[1]; | |||
navi(location, x, y); | |||
}); | |||
$(document).ready(function() { | |||
$('.navi-copy-text').attr('title', 'Click here to copy to the clipboard, then paste in game'); | |||
}); | |||
Latest revision as of 14:07, 12 December 2023
/* Any JavaScript here will be loaded for all users on every page load. */
function AppendCategoryTreeToSidebar() {
try {
var node = document.getElementById( "p-tb" )
.getElementsByTagName('div')[0]
.getElementsByTagName('ul')[0];
var aNode = document.createElement( 'a' );
var liNode = document.createElement( 'li' );
var url = mw.config.get('wgServer') + mw.config.get('wgScriptPath') + '/index.php/Special:CategoryTree';
aNode.appendChild( document.createTextNode( 'CategoryTree' ) );
aNode.setAttribute( 'href' , url );
liNode.appendChild( aNode );
liNode.className = 'plainlinks';
node.appendChild( liNode );
} catch(e) {
// lets just ignore what's happened
return;
}
}
addOnloadHook( AppendCategoryTreeToSidebar );
function navi(map, x, y) {
var text = "/navi " + map + " " + x + "/" + y;
// Create a temporary textarea element
const textarea = document.createElement("textarea");
textarea.value = text;
textarea.style.position = "fixed"; // Make it invisible and outside of the viewport
textarea.style.left = "-9999px";
textarea.style.top = "-9999px";
document.body.appendChild(textarea);
// Select and copy the text from the textarea
textarea.select();
document.execCommand("copy");
// Remove the textarea from the DOM
document.body.removeChild(textarea);
}
$(document).on('click', '.navi-copy-text', function() {
var txt= $(this)[0].innerText.replace('(','').replace(')','').split(' ');
var cords = txt[1].split(',');
var location = txt[0];
var x = cords[0];
var y = cords[1];
navi(location, x, y);
});
$(document).ready(function() {
$('.navi-copy-text').attr('title', 'Click here to copy to the clipboard, then paste in game');
});