Benutzer:DerHexer/fastrename.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
  • Edge: Strg+F5 drücken oder Strg drücken und gleichzeitig Aktualisieren anklicken
 // Dient dem schnellen Umbenennen
 // Ursprünglich von [[Benutzer:DerHexer]]
 // <nowiki>
 
 function newRequest() {
   try {
      if (window.XMLHttpRequest) {
        return new XMLHttpRequest();
      } else {
        return new ActiveXObject("MSXML2.XMLHTTP");
      }
   } catch (e) {
      return false;
   }
 }
 
 // get URL parameters (used for page type variables)
 var UrlParameters = new Array ();
 readparams();
 
 function readparams() {
  var asReadInUrlParameters;
  var asReadInUrlParameter;
 
  // Get URL parameters
  asReadInUrlParameters = location.search.substring(1, location.search.length).split("&");
  for (i = 0; i < asReadInUrlParameters.length; i++) {
    asReadInUrlParameter = asReadInUrlParameters[i].split("=");
    UrlParameters[decodeURIComponent(asReadInUrlParameter[0])] = decodeURIComponent(asReadInUrlParameter[1]);
  }
 }
 
 function addNewUserLogBlock2() {
   var matchedlogentries = document.getElementsByTagName("form")[0].nextSibling.nextSibling.nextSibling.nodeValue.match(/([\d\.]+)/);
   matchedlogentries = parseInt(RegExp.$1.replace(/\./,''));
	if ( (UrlParameters["limit"] < 51) || (matchedlogentries < 51) ) {
		var as = document.body.getElementsByTagName("ul")[0].getElementsByTagName("a");
   var req;
   if (req = newRequest()) {
       var text = "/w/api.php?format=xml&action=query&list=allusers&aufrom=Zwangsumbenennung5&aulimit=500";
       req.open("GET", text, false);
       req.send("");
 
       var renameusername = req.responseXML.getElementsByTagName("u");
       for(i=0;i<renameusername.length;i++) {
         var match = renameusername[i].getAttribute('name').match(/Zwangsumbenennung(\d{3})/);
         var generatenewusername = (parseInt(RegExp.$1)+1);
       }
   }
                var req3;
                if (req3 = newRequest()) {
                  var text3 = "/w/api.php?format=xml&action=query&meta=allmessages&ammessages=blocklink";
                  req3.open("GET", text3, false);
                  req3.send("");
 
                  var blockname = req3.responseXML.getElementsByTagName("message")[0].childNodes[0].nodeValue;
                }
		for (i=0; i < as.length; i++) {
			if (as[i].childNodes[0].nodeValue == blockname) {
				var newlink = document.createElement('a');
				newlink.setAttribute('href', '/w/index.php?title=Special:Benutzer_umbenennen&oldusername=' + as[i].title.replace(/[\w\W]*\//, '') + '&fastrename=abcxyz&newrenamenumber='+generatenewusername); 
                                newlink.setAttribute('onclick', 'incrementnumber();');
				var EditTextNode = document.createTextNode("Schnellumbenennen");
				newlink.appendChild(EditTextNode);
				as[i].parentNode.insertBefore( newlink, as[i].nextSibling );
				as[i].parentNode.insertBefore( document.createTextNode(' | '), as[i].nextSibling );
			}
		}
	}
 }

 if ( (UrlParameters["type"] == 'newusers') || (location.href.substring(location.href.indexOf("/wiki/")).search(/newusers/) != -1) )
	$(addNewUserLogBlock2);
 
 function renameuser() {
   document.forms["renameuser"].newusername.value = "Zwangsumbenennung"+UrlParameters["newrenamenumber"];
   document.forms["renameuser"].reason.value = 'per request';
 }
 
 function incrementnumber() {
   document.body.getElementsByTagName("ul")[0].innerHTML.match(/newrenamenumber\=(\d+)/);
   document.body.getElementsByTagName("ul")[0].innerHTML = document.body.getElementsByTagName("ul")[0].innerHTML.replace(/newrenamenumber=\d+/g,'newrenamenumber='+(parseInt(RegExp.$1)+1));
 }

 if (UrlParameters["fastrename"] == "abcxyz") $(renameuser);

 // </nowiki>