Zum Inhalt springen

Benutzer:Fomafix/hideduplicatecontribs.js

aus Wikipedia, der freien Enzyklopädie
Dies ist eine alte Version dieser Seite, zuletzt bearbeitet am 30. Dezember 2011 um 14:39 Uhr durch Fomafix (Diskussion | Beiträge) (Zurück, da die Formulardatenherstellung von Tab Mix Plus leider immer noch nicht funktioniert. Ich will aus Gründen der Einheitlichkeit die beiden Schalter immer angezeigt bekommen, auch wenn die Liste der Beiträge des Benutzers leer ist.). Sie kann sich erheblich von der aktuellen Version unterscheiden.

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
if ( mw.config.get( 'wgCanonicalSpecialPageName' ) === 'Contributions' ) jQuery( document ).ready( function ( $ ) {
	var monthsel = document.getElementById( 'month' );
	if ( !monthsel ) return;

	var cbdupl = document.createElement( 'input' );
	cbdupl.style.marginLeft = '1em';
	cbdupl.id = 'cbdupl';
	cbdupl.type = 'checkbox';
	monthsel.parentNode.appendChild( cbdupl );

	var lbdupl = document.createElement( 'label' );
	lbdupl.appendChild( document.createTextNode( 'Doppeleinträge ausblenden' ) );
	lbdupl.htmlFor = 'cbdupl';
	monthsel.parentNode.appendChild( lbdupl );

	var cbtop = document.createElement( 'input' );
	cbtop.style.marginLeft = '1em';
	cbtop.id = 'cbtop';
	cbtop.type = 'checkbox';
	monthsel.parentNode.appendChild( cbtop );

	var lbtop = document.createElement( 'label' );
	lbtop.appendChild( document.createTextNode( 'aktuelle Beiträge ausblenden' ) );
	lbtop.htmlFor = 'cbtop';
	monthsel.parentNode.appendChild( lbtop );

	function refreshContribs() {
		var li = mw.util.$content.find( 'ul li' );
		var titles = {};
		for ( var i = 0; i < li.length; i++ ) {
			var link = li[i].getElementsByTagName( 'a' )[0];
			var uctop = $( li[i] ).find( '.mw-uctop' );
			if ( ( titles[link.title] && cbdupl.checked ) || ( uctop.length && cbtop.checked ) ) {
				li[i].style.display = 'none';
			} else {
				li[i].style.display = 'list-item';
			}
			titles[link.title] = true;
		}
	}
	cbdupl.addEventListener ( 'change', refreshContribs, false );
	cbtop.addEventListener ( 'change', refreshContribs, false );
});