Benutzer:Hexensabbat/common.js

aus Wikipedia, der freien Enzyklopädie
Zur Navigation springen Zur Suche springen

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
  • Internet Explorer/Edge: Strg+F5 drücken oder Strg drücken und gleichzeitig Aktualisieren anklicken
  • Opera: Strg+F5
// vgl.: [http://meta.wikimedia.org/wiki/User:Dapete/ImageMapEdit]
mw.loader.load('http://toolserver.org/~dapete/ime/ime.js');


// Quelle: [[Benutzer:P.Copp/scripts/diffhistory.js]]
// Zeigt bei Diffs auf nachzusichtenden Seiten eine Übersicht über
// ungesichtete Versionen an.
var diffHistory = {
	maxrows : 10,
	addHistoryBox : function () {
		var d = diffHistory;
		//Check if old reviewed page
		if (!window.wgStableRevisionId || wgStableRevisionId == wgCurRevisionId) return;
		var oldid = document.getElementById('mw-diff-otitle1').firstChild.firstChild.href.match(/&oldid=([^&]*)/)[1];
		var curid = document.getElementById('mw-diff-ntitle1').firstChild.firstChild.href.match(/&oldid=([^&]*)/)[1];
		if (wgStableRevisionId == oldid && wgCurRevisionId == curid) {
			//Check if multi diff
			var table = getElementsByClassName(document,'table','diff')[0];
			var multi = getElementsByClassName(table,'td','diff-multi')[0];
			if (!multi) return; //all revisions shown
		}
		//Create history box above the review form
		d.box = document.createElement('fieldset');
		var legend = d.el('legend','Ungesichtete Versionen');
		legend.style.padding = 0;
		d.box.appendChild(legend);
		d.createToggle();
		d.box.appendChild(d.history = document.createElement('ul'));
		d.history.appendChild(d.el('li','Lade Versionsgeschichte...'));
		d.box.className = 'portlet pBody diffhistorybox';
		d.box.style.width = '95%';
		var nav = document.getElementById('jump-to-nav');
		nav.parentNode.insertBefore(d.box,nav.nextSibling);
		//Fetch history
		var url = wgScriptPath + '/api.php?format=json&callback=diffHistory.show&action=query'
			+ '&prop=revisions&rvprop=user|timestamp|size|flags|ids|comment&rvendid='
			+ (wgStableRevisionId + 1) + '&rvlimit=' + d.maxrows + '&pageids=' + wgArticleId;
		mw.loader.load(url);
	},
	tsToLocal : function (ts) {
		var m = ts.match(/^(\d\d\d\d)-(\d\d)-(\d\d)T(\d\d):(\d\d):(\d\d)Z$/);
		var d = new Date(Date.UTC(m[1],m[2]-1,m[3],m[4],m[5],m[6]));
		var tzdiff = d.getTimezoneOffset() - (new Date()).getTimezoneOffset();
		if (tzdiff) d.setTime(d.getTime() + tzdiff * 60 * 1000);
		var hour = d.getHours() < 10 ? '0' + d.getHours() : d.getHours();
		var min = d.getMinutes() < 10 ? '0' + d.getMinutes() : d.getMinutes();
		var month = ['Jan','Feb','Mär','Apr','Mai','Jun','Jul','Aug','Sep','Okt','Nov','Dez'][d.getMonth()];
		return d.getDate() + '. ' + month + '. ' + d.getFullYear() + ', ' + hour + ':' + min;
	},
	show : function (res) {
		this.history.removeChild(this.history.firstChild);
		try {
			for (var i in res.query.pages) {
				var p = res.query.pages[i];
				if (p.revisions) for (j=0;j<p.revisions.length;j++)
					this.addEntry(p.revisions[j]);
			}
			if (res['query-continue']) this.history.appendChild(this.el('li','...'));
		}
		catch (e) {this.history.appendChild(this.el('li','Fehler beim Laden der Versionen.'));}
	},
	addLink : function (node,text,target,postfix) {
		var link = this.el('a',text);
		link.href = target;
		node.appendChild(link);
		node.appendChild(document.createTextNode(postfix));
	},		
	addEntry : function (rev) {
		var li = this.el('li','(');
		this.addLink(li,'Aktuell','/w/index.php?title=' + encodeURIComponent(mw.config.get('wgPageName'))
			+ '&diff=cur&oldid=' + rev.revid,') (');
		this.addLink(li,'Vorherige','/w/index.php?title=' + encodeURIComponent(mw.config.get('wgPageName'))
			+ '&diff=prev&oldid=' + rev.revid,') . . ');
		this.addLink(li,diffHistory.tsToLocal(rev.timestamp),'/w/index.php?title='
			+ encodeURIComponent(mw.config.get('wgPageName')) + '&oldid=' + rev.revid,' . . ');
		this.addLink(li,rev.user,wgArticlePath.replace(/\$1/g,'User:' + rev.user),' (');
		this.addLink(li,'Diskussion',wgArticlePath.replace(/\$1/g,'User talk:' + rev.user),' | ');
		this.addLink(li,'Beiträge',wgArticlePath.replace(/\$1/g,'Special:Contributions/' + rev.user),') ');
		if (rev.minor === '') {
			var span = this.el('span','K ');
			span.className = 'minor';
			li.appendChild(span);
		}
		if (rev.size) li.appendChild(document.createTextNode('(' + rev.size + ' Bytes) '));
		var span = this.el('span','(' + (rev.comment || '') + ')');
		span.className = 'comment';
		li.appendChild(span);
		this.history.appendChild(li);
	},
	toggle : function () {
		var t = this.history.style.display == 'none';
		this.history.style.display = t ? 'block' : 'none';
		this.togglelink.firstChild.nodeValue = t ? 'Einklappen' : 'Ausklappen';
	},
	createToggle : function () {
		var span = this.el('span','[');
		this.togglelink = this.el('a','Einklappen');
		this.togglelink.href = 'javascript:diffHistory.toggle()';
		span.appendChild(this.togglelink);
		span.appendChild(document.createTextNode(']'));
		span.style.fontSize = 'x-small';
		span.style.cssFloat = 'right';
		span.style.styleFloat = 'right';
		this.box.appendChild(span);
	},
	el : function (tag,text) {
		var el = document.createElement(tag);
		el.appendChild(document.createTextNode(text));
		return el;
	}
};
 
if (wgAction == 'view' && location.search.indexOf('diff=') > -1) addOnloadHook(diffHistory.addHistoryBox);




//Quelle: [[Benutzer:P.Copp/scripts/hideduplicatecontribs.js]]
 if ( wgCanonicalSpecialPageName == "Contributions" ) addOnloadHook( function() {
	var link = document.getElementById( "contentSub" ).getElementsByTagName( 'a' )[0];
	if ( link.firstChild.nodeValue != wgUserName ) return;
	var list = document.getElementById( 'bodyContent' ).getElementsByTagName( 'ul' )[0];
	var li = list.getElementsByTagName( 'li' );
	var titles = {};
	for ( var i=0; i < li.length; i++ ) {
		var link = li[i].getElementsByTagName( 'a' )[0];
		if ( titles[link.title] )
			li[i].style.display = 'none';
		else
			titles[link.title] = true;
	}
	var link = document.createElement( 'a' );
	link.appendChild( document.createTextNode( 'Alle Edits anzeigen' ) );
	link.href = '#';
	link.onclick = function () {
		link.parentNode.removeChild( link );
		for ( var i=0; i < li.length; i++ ) li[i].style.display = 'list-item';
		return false;
	}
	list.parentNode.insertBefore( link, list );
});




// Quelle: [[Benutzer:Schnark/topcontrib.js]]
// kopiert und angepasst von [[:en:User:Ais523/topcontrib.js]]
// Farbcodiert Benutzerbeiträge
// 
// In monobook.css ist noch ein
//    .flaggedrevs-color-1 { background:transparent !important; }
// nötig. Glaube ich zumindest.
//<pre><nowiki>
 
$(function () {
  if (wgCanonicalNamespace === "Special" && wgCanonicalSpecialPageName === "Contributions")  //Benutzerbeiträge ?
   {
    var ich_top  ='#7FFFD0';                               //verschiedene Farben, bei Bedarf anpassen, müssen alle
    var ich      ='#C0FFC0';                               //verschieden sein, immer heller wählen als man eigentlich
    var fremd_top='#FFD0A0';                               //vorhat, sie wirken erdrückend genug
    var fremd    ='#FFEEBA';
 
    var ausruf='<span class="unpatrolled">!</span>&nbsp;'  //Ausrufszeichen für ungesichtet
    var  frage='<span class="unpatrolled">?</span>&nbsp;'  //Fragezeichen für  nie gesichtet
 
    var i,li,a;
    li=document.getElementById("bodyContent");
    li=li.getElementsByTagName("li");                     //Liste mit Bearbeitungen
 
    i=-1;
    a=new Array();
    while(++i<li.length)
    {
      var farbe,titel,span_anf;
      var html = li[i].innerHTML;
      var match = html.match(/"\/w\/index.php\?title=([^"]*)&amp;redirect=no"/);  //"//suche nach Titel, zunächst Redirects
                                                                                     //Vorsicht: Fehler, falls ein solcher in 
                                                                                     //Zusammenfassung
      if (!match)
          match = html.match(/"\/wiki\/([^"]*)"/);                                //"//immer noch Titelsuche
      titel = match[1];
      var spans = li[i].getElementsByTagName("span");     //existiert ein "(aktuell)" ?
      var topspanfound = false;
      for (var j = 0; j < spans.length; j++)
      {
        if (spans[j].className == "mw-uctop")
        {
           topspanfound = true;
           break;
        }
      }
      if(topspanfound)                                   //enthält aktuell ?
        {farbe=ich_top;}
      else
        {farbe=fremd_top;}
      if(a[titel]!=undefined) farbe=(a[titel]==ich_top?ich:fremd); else a[titel]=farbe;  //Titel zum wiederholten Mal ?
      span_anf='<span style="background-color:'+farbe+'">';
 
      if(li[i].innerHTML.indexOf("flaggedrevs-unreviewed")!=-1)      //ungesichtet ?
        {li[i].innerHTML=li[i].innerHTML.replace(/<span class='flaggedrevs-unreviewed'>/g,ausruf+span_anf);
         li[i].innerHTML=li[i].innerHTML.replace(/<span class="flaggedrevs-unreviewed">/g,ausruf+span_anf);
         li[i].innerHTML=li[i].innerHTML.replace(/<span class='flaggedrevs-unreviewed2'>/g,frage+span_anf);
         li[i].innerHTML=li[i].innerHTML.replace(/<span class="flaggedrevs-unreviewed2">/g,frage+span_anf);}
      else
        {li[i].innerHTML=span_anf+li[i].innerHTML+"</span>";}
   }}
});
//</nowiki></pre>



// Quelle: [[WP:FZW#Bildbeschreibungsseite überspringen?]] vom 22. Dez. 2010 (CET)
// Springt direkt auf die Commons-Bildbeschreibungsseite
$(function() {
$('div.thumb div.thumbinner a.image, div.gallerybox div.thumb a.image').each(function() {
var $this = $(this);
if (/\/commons\//.test($this.find('img').attr('src')))
   $this.attr('href', $this.attr('href').replace(/^\/wiki\/Datei:/, 'http://commons.wikimedia.org/wiki/File:'));
});
});