Zum Inhalt springen

Benutzer:Lustiger seth/links in logs.js

aus Wikipedia, der freien Enzyklopädie

Hinweis: Leere nach dem Veröffentlichen den Browser-Cache, um die Änderungen sehen zu können.

  • Firefox/Safari: Umschalttaste drücken und gleichzeitig Aktualisieren anklicken oder entweder Strg+F5 oder Strg+R (⌘+R auf dem Mac) drücken
  • Google Chrome: Umschalttaste+Strg+R (⌘+Umschalttaste+R auf dem Mac) drücken
  • Edge: Strg+F5 drücken oder Strg drücken und gleichzeitig Aktualisieren anklicken
/*
task: replace unlinked internal URLs in logs with links URLs
tested in firefox only

usage:
  mw.loader.load('//de.wikipedia.org/w/index.php?title=user:lustiger_seth/links_in_logs.js&action=raw&ctype=text/javascript');

included in:
  [[m:user:lustiger_seth/global.js]]

similar script:
  [[m:user:WikiBayer/Weblinksonhistory.WikiBayer]]

more scripts:
  [[w:de:Wikipedia:Technik/Skin/Benutzerskripte#Skripte]]
*/

$(function (){
	if(mw.config.get('wgCanonicalSpecialPageName') === 'Log'){
		// add missing links on internal URLs
		const comments = document.getElementsByClassName('comment');
		const re_url_with_title = /\[(https?:\/\/[a-z]+\.wikipedia\.org\/[^ \]]+) ([^\]]+)\]/;
		const re_url = /(?<!href=")(https?:\/\/)([a-z]+)(\.wikipedia\.org\/(?:w\/index\.php\?title=|))((?:[^\]\[<>"'\x00-\x20\x2D\x7F)]|'(?!')|-(?!->)|\)(?!\s))*(?:[^\]\[<>"'\x00-\x20\x2D\x7F)!,.?]|'(?!')|-(?!->)|\)(?!\s)))/;
		Array.from(comments).forEach(c => {
			c.innerHTML = c.innerHTML.replace(re_url_with_title, '<a href="$1">$2</a>').replace(re_url, '<a href="$1$2$3$4">$2/$4</a>');
		});
	}
});