User:DerHexer/testlocalrenamelinks.js

From Meta, a Wikimedia project coordination wiki

Note: After publishing, you may have to bypass your browser's cache to see the changes.

  • Firefox / Safari: Hold Shift while clicking Reload, or press either Ctrl-F5 or Ctrl-R (⌘-R on a Mac)
  • Google Chrome: Press Ctrl-Shift-R (⌘-Shift-R on a Mac)
  • Internet Explorer / Edge: Hold Ctrl while clicking Refresh, or press Ctrl-F5
  • Opera: Press Ctrl-F5.
 function renamerequestbox() {
 	var currentfield = document.getElementById('mw-content-text');
 	if (currentfield) currentfield = currentfield.getElementsByTagName('fieldset');
 	if (currentfield.length>1){
 		currentfield = currentfield[currentfield.length-1];
 		
 		// field
 		var addnewfield = document.createElement('fieldset');
 		var newlegend = document.createElement('legend');
 		var EditTextNode = document.createTextNode('Local rename');
 		newlegend.appendChild(EditTextNode);
 		addnewfield.appendChild(newlegend);
 		
 		// p-tag
 		var newhelptext = document.createElement('p');
 		var EditTextNode4 = document.createTextNode('Enter the new username and give a reason before you click the button “Add local rename links”. It will add links to local Special:RenameUser pages where the form will be filled with the given information. Please confirm each local rename separately.');
 		newhelptext.appendChild(EditTextNode4);
 		addnewfield.appendChild(newhelptext);
 		
 		// table
 		var newtable = document.createElement('table');
 		var newtr = document.createElement('tr');
 		var newtd1 = document.createElement('td');
 		var EditTextNode2 = document.createTextNode('New username: ');
 		newtd1.appendChild(EditTextNode2);
 		var newtd2 = document.createElement('td');
 		var newinput = document.createElement('input');
 		newinput.setAttribute('id', 'mw-local-rename-newusername');
 		newinput.setAttribute('type', 'text');
 		newinput.setAttribute('value', wgTitle.replace(/CentralAuth\//,'')+' (usurped)');
 		newtd2.appendChild(newinput);
 		newtr.appendChild(newtd1);
 		newtr.appendChild(newtd2);
 		var newtr2 = document.createElement('tr');
 		var newtd3 = document.createElement('td');
 		var EditTextNode3 = document.createTextNode('Reason: ');
 		newtd3.appendChild(EditTextNode3);
 		var newtd4 = document.createElement('td');
 		var newinput2 = document.createElement('input');
 		newinput2.setAttribute('id', 'mw-local-rename-reason');
 		newinput2.setAttribute('type', 'text');
 		newinput2.setAttribute('value', 'SUL finalization');
 		newtd4.appendChild(newinput2);
 		newtr2.appendChild(newtd3);
 		newtr2.appendChild(newtd4);
 		newtable.appendChild(newtr);
 		newtable.appendChild(newtr2);
 		addnewfield.appendChild(newtable);
 		
 		// submit-tag
 		var newinput3 = document.createElement('input');
 		newinput3.setAttribute('onclick', 'javascript:addlocalrenamelinks();');
 		newinput3.setAttribute('value', 'Add local rename links');
 		newinput3.setAttribute('type', 'submit');
 		addnewfield.appendChild(newinput3);
 		
 		currentfield.parentNode.insertBefore( addnewfield, currentfield.nextSibling);
 	}
 }
 function addlocalrenamelinks() {
 	var getlinks = document.getElementById('mw-centralauth-merged');
 	if (getlinks) getlinks = getlinks.getElementsByTagName('tr');
 	for (i=1;i<getlinks.length;i++){
 	  currentlink = getlinks[i].getElementsByTagName('td');
 	  if(currentlink && currentlink.length == 7) currentlink = currentlink[1].getElementsByTagName('a'); else if(currentlink && currentlink.length == 6) currentlink = currentlink[0].getElementsByTagName('a');
 	  if(currentlink) {
 	  	var currentuser = currentlink[0].getAttribute('href').replace(/User\:/,'Special:RenameUser') + '?reason=SUL usurpation';
 	  	var addlocalrenamelink = document.createElement('a');
 	  	addlocalrenamelink.setAttribute('href', currentlink[0].getAttribute('href').replace(/User\:/,'Special:RenameUser/') + '?uselang=en&reason=' + encodeURIComponent(document.getElementById('mw-local-rename-reason').value) + '&newusername=' + encodeURIComponent(document.getElementById('mw-local-rename-newusername').value));
 	  	var EditTextNode9 = document.createTextNode('(local rename)');
 	  	addlocalrenamelink.appendChild(EditTextNode9);
 	  	currentlink[0].parentNode.insertBefore( addlocalrenamelink, currentlink[0].nextSibling );
 	  	var newdivtag = document.createElement('span');
 	  	var EditTextNode8 = document.createTextNode(' ');
 	  	newdivtag.appendChild(EditTextNode8);
 	  	currentlink[0].parentNode.insertBefore( newdivtag, currentlink[0].nextSibling );
 	  }
 	}
 }
var wgCanonicalSpecialPageName = mw.config.get('wgCanonicalSpecialPageName');
 if (wgCanonicalSpecialPageName == "CentralAuth") $(renamerequestbox);