Benutzer:Zykure/vector.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
/**
* Sperrstatus
* Idee: [[Benutzer:St-fl]]
* Umsetzung: [[Benutzer:St-fl]], [[Benutzer:ParaDox]]
*/

//addOnloadHook(function () 
jQuery( function( $ ) {
  var farbe = '#54ff9f';
  if ( document.getElementById('ca-edit') ) {
    var obj  = document.getElementById('ca-edit');
    var temp = String(wgRestrictionEdit);
    if (temp == 'autoconfirmed') {
      farbe = '#ffa500';
    } else if (temp == 'sysop') {
      farbe = '#ff6a6a';
    }
  } 
  if ( document.getElementById('ca-viewsource') ) {
    var obj = document.getElementById('ca-viewsource');
    farbe = '#ff0000';
  }
  if ( obj ) {
    //patched for vector
    obj.firstChild.style.color = farbe;
  }
});

/*
* Ende Sperrstatus
*/



/** 
* referencesOnDemand
* shows the references tags contents when a reference link is clicked
* and hides it when a backlink is clicked 
*/

function referencesOnDemand() {
  /** finds the references tag which sadly has no id */
  function findReferences() {
    var ols = document.getElementsByTagName("ol");
    for (var i=0; i<ols.length; i++) {
      var ol  = ols[i];
      if (ol.className == "references")    return ol;
    }
    return null;
  }

  /** show the references tag */
  function showReferences() {
    references.style.display    = null;
    return true;
  }

  /** hide the references tag */
  function hideReferences() {
    references.style.display    = "none";
    return true;
  }

  var references  = findReferences();
  if (!references)    return;

// patch reference links to show the references tag
  var sups = document.getElementsByTagName("sup");
  for (var i=0; i<sups.length; i++) {
    var sup = sups[i];
    if (sup.className != "reference")   continue;
    var a   = sup.firstChild;
    a.onclick = showReferences; 
  }

// patch reference backlinks to hide the references tag
  var as  = references.getElementsByTagName("a");
  for (var i=0; i<as.length; i++) {
    var a   = as[i];
    if (!/#_ref-/(a.href))  continue;
    a.onclick   = hideReferences;
  }

// initially hide references tag
  hideReferences();
}

//addOnloadHook(referencesOnDemand);
$(referencesOnDemand);

/*
* Ende referencesOnDemand
*/



/**
* Whois-Links für IPs
* (aus Greasemonkey-Skript)
*/

function addWhoisLinks() {
  var Link = document.getElementsByTagName('a');
  var IPFilter = /^.*([0-9]{0,2})+\.([0-9]{0,2})+\.([0-9]{0,2})+\.([0-9]{0,2})+$/;

  var ExtraLinkURL = 'http://ip-lookup.net/index.php?';
  var ExtraLinkTarget = '_blank';
  var ExtraLinkTitle = 'WHOIS this IP';

  //Yes I'm aware this can be written better...
  for (var i = 0; i < Link.length; i++){

    //Filter out external links (eg: Enzyme Commission codes are the same format as an IP)
    var InWikipedia = /wikipedia/.test(Link[i].href);

    if (InWikipedia == true){
    
        if (Link[i].textContent.match(IPFilter)){
            
            ExtraLinkSpan = document.createElement('span');
            
            if (Link[i].textContent.match(/\:/g)){
                var NewLink = Link[i].textContent.split(/\:/g);
                NewLink = NewLink[1];
                
                if (NewLink.match(/\//g)){
                    var NewLink = Link[i].textContent.split(/\//g);
                    NewLink = NewLink[1];
                }
                
            }else{
                var NewLink = Link[i].textContent;
            }
            ExtraLink = '<sup style="color:#CC0000;"><a href="' + ExtraLinkURL + NewLink + '" target="' + ExtraLinkTarget + '" title="' + ExtraLinkTitle + '">?¿</a></sup>';
            ExtraLinkSpan.innerHTML = ExtraLink;
            
            Link[i].parentNode.insertBefore(ExtraLinkSpan, Link[i].nextSibling);
    
        }
    }
}
}

//addOnloadHook(addWhoisLinks);
$(addWhoisLinks);

/*
* Ende addWhoisLinks
*/



/**
* Einige Portlets, vgl. MediaWiki:Gadget-toolserver-integration.js
*/

jQuery( function( $ ) {
  var tab_pagehist = "Page History";
  var tab_pagehist_tooltip = null;
  var tab_traffic = "Article Traffic";
  var tab_traffic_tooltip = null;

  if (mw.config.get( 'wgAction' ) !== "view" && mw.config.get( 'wgAction' ) !== "edit" && mw.config.get( 'wgAction' ) !== "submit" && mw.config.get( 'wgAction' ) !== "history" && mw.config.get( 'wgAction' ) !== "purge"  && mw.config.get( 'wgAction' ) !== "rollback") return;

  var date = new Date();
  var datestr = date.getUTCFullYear().toString();
  if (date.getUTCMonth() < 11)  // N.B.: Jan = 0, Feb = 1 usw.
    datestr += "0";
  datestr += (date.getUTCMonth()+1).toString()

  if (mw.config.get('wgNamespaceNumber') >= 0) {
      mw.util.addPortletLink('p-cactions', 'http://toolserver.org/~soxred93/articleinfo/index.php?article=' + encodeURI(wgPageName) + '&lang=de&wiki=wikipedia&begin=&end=', tab_pagehist, 'ca-pagehist', tab_pagehist_tooltip);
      mw.util.addPortletLink('p-cactions', 'http://stats.grok.se/de/' + datestr + '/' + encodeURI(wgPageName), tab_traffic, 'ca-traffic', tab_traffic_tooltip);
  }
});



/**
* Benutzersignaturen "normalisiert" darstellen
*/

function clarifySignatures() {
  var links = document.getElementsByTagName("a");
  for (var i = 0; i < links.length; i++) {

    match = links[i].href.match(/Benutzer([ _].*)?:(.*)$/);
    if (!match)  continue;  // kein Benutzerseiten-Link

    links[i].style.padding = "0 2px";  // größere Abstände links+rechts

    submatch = match[3].match(/\/(.*)$/);  // Unterseiten im Link erkennen
    if (submatch) {
      links[i].innerHTML = "<i>" + (match[2] ? "Diskussion:" : "") + match[3] + "</i>";
      continue;
    }

    if (!match[1]) {  // Benutzer:*
      links[i].innerHTML = "<b>" + match[2] + "</b> ";
    }
    else {  // Benutzer_Diskussion:*
      links[i].innerHTML = "<sup>" + match[1].substr(1) + ":" + match[2] + "</sup>";
    }

    // TODO: Signaturen zuverlässig erkennen

  }
}

////addOnloadHook(clarifySignatures);

/*
* Ende clarifySignatures
*/