From Wikipedia, the free encyclopedia
Note: After saving, you have to bypass your browser's cache to see the changes. Google Chrome, Firefox, Microsoft Edge and Safari: Hold down the ⇧ Shift key and click the Reload toolbar button. For details and instructions about other browsers, see Wikipedia:Bypass your cache.

//Attention, unless you are the script author (Voice of All) or a CheckUser, you should NOT be editing this unless it is clear, clean cut, obvious fix. Thanks.

//<pre><nowiki>



function jssubmitclose()

{

var form = document.getElementById('editform');

form.submit();

}

//END



//Auto-replace

function oldautoreplacetxt(what,withw)

{

i = 1;

var original = document.editform.wpTextbox1.value;

if (what == ''){alert("Invalid command."); return;}

else if (what == 'null'){alert("Action cancelled."); return;}

else {

if (withw == ''){alert("All such appearances of text will be removed.");}

else if (withw.split(what)[1 != undefined) {alert("Action cancelled to avoid infinite loop."); return;}

else {

if (document.editform.wpTextbox1.value.split(what)[1 != undefined)

 {

  while (i == 1)

  {

  document.editform.wpTextbox1.value = document.editform.wpTextbox1.value.replace(what, withw);

  if (document.editform.wpTextbox1.value.indexOf(what) != -1)

  {i = 1;}

  else

  {i = -1;}

  }

 }

//document.editform.wpSummary.value += 'JS: Replacing text "' + what + '" with "' + withw + '" ';

  }

 }

}

//END



function markminor()

{

    var form = document.getElementById('bodyContent');

    l = form.getElementsByTagName('input');

    for (i = 0; i < l.length; i++)

      {

    if (li].name == 'wpMinoredit')

      {li].value = '1'; li].checked=true;}

      }

}



function jssubmit()

{

    var form = document.getElementById('bodyContent');

    l = form.getElementsByTagName('input');

    for (i = 0; i < l.length; i++)

      {

    if (li].name == 'wpMinoredit')

      {li].value = '1'; li].checked=true;}

      }

var form = document.getElementById('editform');

form.submit();

}



addOnloadHook(CaseADD)

function CaseADD()

{

if (location.href.indexOf('&fakeaction=CaseADD&target=') != -1)

  {

  addTab("javascript:Alpha_userwait()", "(Add)", "ca-add", "Add", "");

  alert('Add "[NEW]" to the proper alphabetical location and press (add).' + '\n' + 'The necessary spaces above and below will be added automatically.');

  var name = unescape(location.href.split('&target=')[1].split('&badlist=')[0]);

  document.editform.wpSummary.value += "Adding [[User:" + name + "]] case.";

  var case_identifier = '[[Wikipedia:Requests for checkuser/Case/' + name;

  if (document.editform.wpTextbox1.value.indexOf('|' + case_identifier) != -1)

  {alert('A case for this user already exists, be sure to integrate them after pressing "(add)".');}

  }

}



//



var Alpha_user_done = 0;

function Alpha_userwait()

{

  if (Alpha_user_done == 1){alert('Already added.'); return;}

  if (document.editform.wpTextbox1.value.indexOf('[NEW]') != -1){Alpha_user_done=1;}

  var name = unescape(location.href.split('&target=')[1].split('&badlist=')[0]);

  var thebadlist = unescape(location.href.split('&badlist=')[1].split('&')[0]); 

  var date = unescape(location.href.split('&date=')[1].split('&')[0]);

  var case_identifier = '[[Wikipedia:Requests for checkuser/Case/' + name;

  var txt = document.editform.wpTextbox1.value;

  if (txt.indexOf('|' + case_identifier) != -1)

  {

  var num = txt.split('|' + case_identifier)[0];

  num = num.split('rowspan=')[num.split('rowspan=').length-1];

  var row_cur = '|rowspan=' + num + '|' + case_identifier;

  document.editform.wpTextbox1.value = txt.replace(row_cur,'|' + case_identifier);

  var to_add = '|-\n|' + date + '\n|' + thebadlist;

  var case_sec = document.editform.wpTextbox1.value.split('|' + case_identifier)[1].split(/(\n|\r)(\n|\r)\|-(\n|\r)/)[0];

  var cases = case_sec.split('|[[').length;

  document.editform.wpTextbox1.value = document.editform.wpTextbox1.value.replace(case_identifier,'rowspan=' + cases + '|' + case_identifier);

  }

  else

  {

  var to_add = "\n|-\n|[[Wikipedia:Requests for checkuser/Case/" + name + "|'''" + name + "''']]\n|" + date + "\n|" + thebadlist + "\n";

  }

  document.editform.wpTextbox1.value = document.editform.wpTextbox1.value.replace('[NEW]',to_add);

  markminor();

}



addOnloadHook(CUmovedown)

function CUmovedown()

{

if (location.href.indexOf('&fakeaction=RFCUmoveC&target=') != -1)

  {

   var pagename = unescape(location.href.split('&target=')[1]);

   var pagefind = "{{" + pagename + "}}";

   var txt = document.editform.wpTextbox1.value;



   if (txt.indexOf(pagefind) == -1)

     {alert('Case "' + pagename + '" not found.'); return;}

   if (txt.indexOf('==Completed requests==') == -1)

     {alert('Page section format error.'); return;}

   if (txt.split('==Completed requests==')[1].indexOf(pagename) !=-1)

      {alert('Case already moved.'); return;}

   if (txt.split('==Completed requests==')[1].split('<!-- completed subpages begin below this mark -->')[1 == undefined)

      {alert('Page format error.'); return;}



   var prereq = txt.split('==Completed requests==')[0];

   var oldreq = txt.split('==Completed requests==')[1].split('<!-- completed subpages begin below this mark -->')[1];



   oldreq = '==Completed requests==' + '\n' + '<!--put completed requests at the top of the list-->' + '\n' + '<!-- completed subpages begin below this mark -->' + '\n' + pagefind + '\n' + '----' + oldreq;

   document.editform.wpTextbox1.value = prereq.replace('\n' + pagefind,'').replace(pagefind,'') + oldreq;

   document.editform.wpSummary.value = "Moving [[User:" + pagename.split('/Case/')[1 + "|" + pagename.split('/Case/')[1 + "]] case to completed.";



   alert('Case "' + pagename + '" found and moved to fulfilled section.');

   markminor();

   oldautoreplacetxt('----\n----','----');

   oldautoreplacetxt('---- \n----','----');

  }

else if (location.href.indexOf('&fakeaction=RFCUmoveD&target=') != -1)

  {

   var pagename = unescape(location.href.split('&target=')[1]);

   var pagefind = "{{" + pagename + "}}";

   var txt = document.editform.wpTextbox1.value;



   if (txt.indexOf(pagefind) == -1)

   {alert('Case "' + pagename + '" not found.'); return;}

   if (txt.indexOf('==Declined requests==') == -1)

   {alert('Page section format error.'); return;}

   if (txt.split('==Declined requests==')[1].indexOf(pagename) != -1){alert('Case already moved.'); return;}

   if (txt.split('==Completed requests==')[0].split('==Declined requests==')[1].split('<!--declined subpages begin below this mark -->')[1 == undefined)

   {alert('Page format error.'); return;}



   var prereq = txt.split('==Declined requests==')[0];

   var oldreq = txt.split('==Declined requests==')[1].split('<!--declined subpages begin below this mark -->')[1].split('==Completed requests==')[0];



   oldreq += '==Completed requests==' + txt.split('==Completed requests==')[1];

   oldreq = '==Declined requests==' + '\n' + '<!--put declined requests at the top of the list-->' + '\n' + '<!--declined subpages begin below this mark -->' + '\n' + pagefind + '\n' + '----' + oldreq;

   document.editform.wpTextbox1.value = prereq.replace('\n' + pagefind,'').replace(pagefind,'') + oldreq;

   document.editform.wpSummary.value = "Moving [[User:" + pagename.split('/Case/')[1 + "|" + pagename.split('/Case/')[1 + "]] case to completed.";

   alert('Case "' + pagename + '" found and moved to denied section.');

   markminor();

   oldautoreplacetxt('----\n----','----');

   oldautoreplacetxt('---- \n----','----');

   //jssubmit();

  }

else if (location.href.indexOf('&fakeaction=RFCUdel&target=') != -1)

  {

   var pagename = unescape(location.href.split('&target=')[1]);

   var pagefind = "{{" + pagename + "}}";

   var txt = document.editform.wpTextbox1.value;

   if (txt.indexOf('==Declined requests==') == -1)

   {alert('Page section format error.'); return;}

   if (txt.split('==Declined requests==')[1].indexOf(pagefind) == -1)

   {alert('Case "' + pagename + '" not found.'); return;}

   document.editform.wpTextbox1.value = txt.replace('\n' + pagefind,'').replace('\n' + pagefind,'').replace(pagefind,'');

   document.editform.wpSummary.value = "Archiving case for [[User:" + pagename.split('/Case/')[1 + "|" + pagename.split('/Case/')[1 + "]].";

   alert('Case "' + pagename + '" found and removed from the fulfilled/denied section.');

   markminor();

   oldautoreplacetxt('----\n----','----');

   oldautoreplacetxt('---- \n----','----');

  }

}



addOnloadHook(CUlinks)

function CUlinks()

{

if(document.title.indexOf("Wikipedia:Requests for checkuser/Case/") == 0)

    {

        var tabs = document.getElementById('p-cactions').getElementsByTagName('ul')[0];

        addlimenu(tabs, 'complete', 'carchfunc');

        var carchfunc = document.getElementById('carchfunc').getElementsByTagName('ul')[0];

        addlilink(carchfunc, 'javascript:CUdonearch(1)', 'done', '');

        addlilink(carchfunc, 'javascript:CUdonearch(2)', 'rej.', '');

    }

if(document.title.indexOf("Editing Wikipedia:Requests for checkuser/Case/") == 0 || document.title.indexOf("Editing Wikipedia:Requests for checkuser/IP check") == 0)

    {

        var tabs = document.getElementById('p-cactions').getElementsByTagName('ul')[0];

        addlimenu(tabs, 'Message', 'cclosefunc');

        var cclosefunc = document.getElementById('cclosefunc').getElementsByTagName('ul')[0];

        //Checkuser functions

        addlilink(cclosefunc, 'javascript:CUdone(1)', 'conf', '');

        addlilink(cclosefunc, 'javascript:CUdone(2)', 'prob', '');

        addlilink(cclosefunc, 'javascript:CUdone(3)', 'poss', '');

        addlilink(cclosefunc, 'javascript:CUdone(4)', 'incon', '');

        addlilink(cclosefunc, 'javascript:CUdone(5)', 'unlik', '');

        addlilink(cclosefunc, 'javascript:CUdone(6)', 'unrel', '');

        addlilink(cclosefunc, 'javascript:CUdone(7)', 'decl', '');

        addlilink(cclosefunc, 'javascript:CUdone(8)', 'info', '');

        addlilink(cclosefunc, 'javascript:CUdone(9)', 'note', '');

        addlilink(cclosefunc, 'javascript:CUdone(10)', 'fish', '');

        addlilink(cclosefunc, 'javascript:CUdone(11)', 'creq', '');

        addlilink(cclosefunc, 'javascript:CUdone(12)', 'cnote', '');

        addlilink(cclosefunc, 'javascript:CUdone(13)', 'block', '');

        addlilink(cclosefunc, 'javascript:CUdone(14)', 'orb', '');

        addlilink(cclosefunc, 'javascript:CUdone(15)', 'unnes', '');

        addlilink(cclosefunc, 'javascript:CUdone(16)', 'stale', '');

        if (document.title.indexOf("(section)") != -1)

        {

        //Checkuser functions

        addlimenu(tabs, 'complete', 'carchfunc');

        var carchfunc = document.getElementById('carchfunc').getElementsByTagName('ul')[0];

        addlilink(carchfunc, 'javascript:CUdonearch(1)', 'done', '');

        addlilink(carchfunc, 'javascript:CUdonearch(2)', 'rej.', '');

        addlilink(carchfunc, 'javascript:CUdonearch(3)', 'arch', '');

        }

    }

}



function CUdonearch(num)

{

if (num != 3 && document.getElementById('bodyContent').innerHTML.search('The following discussion is preserved as an archive') != -1)

if (num == 3 && document.editform.wpTextbox1.value.search('The following discussion is preserved as an archive') != -1)

{alert('Case already closed'); return;} 

var username = document.title.replace('Editing ','').split(' (section)')[0].split(' - ')[0];

if (num==1)

  {

window.open('http://en.wikipedia.org/?title=Wikipedia:Requests_for_checkuser&action=edit&fakeaction=RFCUmoveC&target=' + escape(username),

'targetnameRFCUmov',

'location=no,toolbar=no,status=no,directories=no,scrollbars=yes');

  }

else if (num==2)

  {

window.open('http://en.wikipedia.org/?title=Wikipedia:Requests_for_checkuser&action=edit&fakeaction=RFCUmoveD&target=' + escape(username),

'targetnameRFCUmov',

'location=no,toolbar=no,status=no,directories=no,scrollbars=yes');

  }

else if (num==3)

  {

var username = document.title.replace('Editing ','').split(' (section)')[0].split(' - ')[0];

var user_name = document.title.split(' (section)')[0].split(' - ')[0].split('/Case/')[1];

var offset=0;

var badlist = '';

var badlist_show = '';

var txt = document.editform.wpTextbox1.value.split('<noinclude>')[0];

if (txt.indexOf("{{subst:Rfcub}}") !=-1 || txt.indexOf("{{subst:Rfcua}}") !=-1)

{alert('Case already closed!'); return;}

oldautoreplacetxt('{{Checkuser|','{{checkuser|');

oldautoreplacetxt('{{Checkip|','{{checkip|');

oldautoreplacetxt('{{Vandal|','{{vandal|');

if (txt.indexOf('{{checkuser|') != -1)

{

if (badlist != '') badlist+=', ';

  var l = txt.split('{{checkuser|');

  for (var i=1; i< l.length; i++)

  {

  name = li].split('}}')[0];

  if (name != user_name && badlist.indexOf(name) ==-1)

     {

     badlist_show += name + '\n';

     badlist+=name;

     if (i != l.length-1)badlist+=', ';

     }

  }

}

if (txt.indexOf('{{vandal|') != -1)

{

if (badlist != '') badlist+=', ';

var l = txt.split('{{vandal|');

for (var i=1; i< l.length; i++)

  {

  name = li].split('}}')[0];

  if (name != user_name && badlist.indexOf(name) ==-1)

    {

    badlist_show += name + '\n';

    badlist+=name;

    if (i != l.length-1) badlist+=', ';

    }

  }

}

if (txt.indexOf('{{checkip|') != -1)

{

if (badlist != '') badlist+=', ';

var l = txt.split('{{checkip|');

for (var i=1; i< l.length; i++)

  {

  name = li].split('}}')[0];

  badlist_show += name + '\n';

  badlist+=name;

  if (i != l.length-1) badlist+=', ';

  }

}

alert('Possible user and IP socks:' + '\n' + badlist_show);

if (document.editform.wpTextbox1.value.indexOf("<noinclude>") != -1)

  {

var splitbefore = document.editform.wpTextbox1.value.split("<noinclude>")[0];

document.editform.wpTextbox1.value = "{{subst:Rfcua}}" + "\n" + splitbefore + "\n" + "{{subst:Rfcub}}" + "\n" + document.editform.wpTextbox1.value.split(splitbefore)[1];

  }

else

  {

document.editform.wpTextbox1.value = "{{subst:Rfcua}}" + "\n" + document.editform.wpTextbox1.value + "\n" + "{{subst:Rfcub}}";

  }

document.editform.wpSummary.value = "Closing case.";

window.open('http://en.wikipedia.org/?title=Wikipedia:Requests_for_checkuser&action=edit&fakeaction=RFCUdel&target=' + escape(username),'targetnameRFCUdel','location=no,toolbar=no,status=no,directories=no,scrollbars=yes');

var name = username.split('/Case/')[1];

var letter = name.substring(0,1).toLowerCase();

var sec=0;

var secoffset=1;

if (letter == 'a'){sec=1;}

else if (letter == 'b'){sec=2;}

else if (letter == 'c'){sec=3;}

else if (letter == 'd'){sec=4;}

else if (letter == 'e'){sec=5;}

else if (letter == 'f'){sec=6;}

else if (letter == 'g'){sec=7;}

else if (letter == 'h'){sec=8;}

else if (letter == 'i'){sec=9;}

else if (letter == 'j'){sec=10;}

else if (letter == 'k'){sec=11;}

else if (letter == 'l'){sec=12;}

else if (letter == 'm'){sec=13;}

else if (letter == 'n'){sec=14;}

else if (letter == 'o'){sec=15;}

else if (letter == 'p'){sec=16;}

else if (letter == 'q'){sec=17;}

else if (letter == 'r'){sec=18;}

else if (letter == 's'){sec=19;}

else if (letter == 't'){sec=20;}

else if (letter == 'u'){sec=21;}

else if (letter == 'v'){sec=22;}

else if (letter == 'w'){sec=23;}

else if (letter == 'x'){sec=24;}

else if (letter == 'y'){sec=25;}

else if (letter == 'z'){sec=26;}

else {sec=0;}

sec+=secoffset;

var date = ''

if (document.editform.wpTextbox1.value.search(/\d\d:\d\d, \d{1,2} \w+ \d\d\d\d/i) !=-1)

  {

  var txt = document.editform.wpTextbox1.value;

  var l_ind = txt.match(/\d\d:\d\d, \d{1,2} \w+ \d\d\d\d/i).length -1 ;

  var date = txt.match(/\d\d:\d\d, \d{1,2} \w+ \d\d\d\d/i)[l_ind];

  var day = date.split(', ')[1].split(' ')[0];

  if (day.length == 1) day = '0' + day;

  var month = date.split(', ')[1].split(' ')[1].split(' ')[0];

  if (month.search(/January/i) == 0) month = '01';

  if (month.search(/February/i) == 0) month = '02';

  if (month.search(/March/i) == 0) month = '03';

  if (month.search(/April/i) == 0) month = '04';

  if (month.search(/May/i) == 0) month = '05';

  if (month.search(/June/i) == 0) month = '06';

  if (month.search(/July/i) == 0) month = '07';

  if (month.search(/August/i) == 0) month = '08';

  if (month.search(/September/i) == 0) month = '09';

  if (month.search(/October/i) == 0) month = '10';

  if (month.search(/November/i) == 0) month = '11';

  if (month.search(/December/i) == 0) month = '12';

  var year = date.match(/\d\d\d\d/)[0];

  var date = '[[' + year + '-' + month + '-' + day + ']]';

  }

window.open('http://en.wikipedia.org/?title=Wikipedia:Requests_for_checkuser/Case&action=edit&section=' + sec + '&fakeaction=CaseADD&target=' + escape(name) + '&badlist=' + escape(badlist) + '&date=' + escape(date),

'targetnameCaseADD',

'location=no,toolbar=no,status=no,directories=no,scrollbars=yes');

//jssubmit();

  }

}



//

CUdonealready = 0;

//



function CUdone(type)

{

var z = 0;

document.editform.wpTextbox1.value.replace('<noinclude>{{Wikipedia:Requests for checkuser/Inputbox/Sample/Tag}}</noinclude>','');

if (type == 1)

  {

CUdonealready=1;

document.editform.wpSummary.value += "Confirmed.";

var txt_add = "{{Confirmed}}. ~~~~";

  }

else if (type == 2)

  {

CUdonealready=1;

var txt_add = "{{Likely}}. ~~~~";

document.editform.wpSummary.value += "Likely.";

  }

else if (type == 3)

  {

CUdonealready=1;

var txt_add = "{{Possible}}. ~~~~";

document.editform.wpSummary.value += "Possible.";

  }

else if (type == 4)

  {

CUdonealready=1;

var txt_add = "{{Inconclusive}}. ~~~~";

document.editform.wpSummary.value += "Inconclusive.";

  }

else if (type == 5)

  {

CUdonealready=1;

var txt_add = "{{unlikely}} ~~~~";

document.editform.wpSummary.value += "Unlikely.";

  }

else if (type == 6)

  {

CUdonealready=1;

var txt_add = "{{Unrelated}}. ~~~~";

document.editform.wpSummary.value += "Unrelated.";

  }

else if (type == 7)

  {

CUdonealready=1;

var txt_add = "{{Declined}}. ~~~~";

document.editform.wpSummary.value += "Declined.";

  }

else if (type == 8)

  {

CUdonealready=1;

var txt_add = "{{MoreInfo}}. ~~~~";

document.editform.wpSummary.value += "More information required.";

  }

else if (type == 9)

  {

CUdonealready=1;

var txt_add = "{{TakeNote}} ~~~~";

document.editform.wpSummary.value += "Note.";

  }

else if (type == 10)

  {

CUdonealready=1;

var txt_add = "{{Fishing}} ~~~~";

document.editform.wpSummary.value += "No fishing.";

  }

else if (type == 11)

  {

CUdonealready=1;

var txt_add = "{{clerk request}}NULL. ~~~~";

document.editform.wpSummary.value += "Clerk attention required.";

  }

else if (type == 12)

  {

CUdonealready=1;

var txt_add = "{{clerknote}}NULL. ~~~~";

document.editform.wpSummary.value += "Clerk note.";

  }

else if (type == 13)

  {

CUdonealready=1;

var txt_add = "{{IPblock}} ~~~~";

document.editform.wpSummary.value += "IP blocked.";

  }

else if (type == 14)

  {

CUdonealready=1;

var txt_add = "{{crystalball}} ~~~~";

document.editform.wpSummary.value += "Not a crystal ball.";

  }

else if (type == 15)

  {

CUdonealready=1;

var txt_add = "{{unnecessary}} ~~~~";

document.editform.wpSummary.value += "Unnecessary.";

  }

else if (type == 16)

  {

CUdonealready=1;

var txt_add = "{{staleIP}} ~~~~";

document.editform.wpSummary.value += "Stale.";

  }

if( document.editform.wpTextbox1.value.indexOf('<!-- BEGIN ARCHIVE TEMPLATE -->') !=-1)

  {

  var before = document.editform.wpTextbox1.value.split('<!-- BEGIN ARCHIVE TEMPLATE -->')[0];

  var after = document.editform.wpTextbox1.value.split(before)[1];

  document.editform.wpTextbox1.value = before + "\n" + txt_add + "\n" + after;

  }

else if( document.editform.wpTextbox1.value.indexOf('<noinclude>') !=-1)

  {

  var before = document.editform.wpTextbox1.value.split('<noinclude>')[0];

  var after = document.editform.wpTextbox1.value.split(before)[1];

  document.editform.wpTextbox1.value = before + "\n" + txt_add + "\n" + after;

  }

else

  {document.editform.wpTextbox1.value += "\n" + txt_add;}

document.editform.wpTextbox1.value = document.editform.wpTextbox1.value.replace('<!--Please do not remove the following tag until this case has been listed on RFCU. -->','');

document.editform.wpTextbox1.value = document.editform.wpTextbox1.value.replace('<noinclude>{{Wikipedia:Requests for checkuser/Inputbox/Sample/Tag}}</noinclude>','');

document.editform.wpTextbox1.value = document.editform.wpTextbox1.value.replace(/\n\n\n/g,'\n\n');

}



////////CLIENT SIDE CHECKUSER IP info retriever/////////////

//security override HTTP request

//ALSO, reduce IE security settings

//For FF/NS, go enable, see "http://esw.w3.org/topic/SparqlCalendarDemoUsage#FAQ"

//Basically, enable "signed.applets.codebase_principal_support" in about:config 



addOnloadHook(WHOIScheck)

function WHOIScheck()

{

if (location.href.indexOf('Special:CheckUser') ==-1) return;

var body=document.getElementById('bodyContent');

if (!body) return;

addTab("javascript:CU_comprehensive()", "WHOIS all IPs", "ca-checkall", "Check all IPs", "");

}



//

function makeCURequestXML_DNS(type, url, parameters)

{ 

  if(window.XMLHttpRequest)

  {

try {netscape.security.PrivilegeManager.enablePrivilege("UniversalBrowserRead"); } 

catch (e) {alert("Permission UniversalBrowserRead denied. Please enable 'signed.applets.codebase_principle_support' through 'about:config' in your browser."); } 

http_request = false;

http_request = new XMLHttpRequest(); 

if (!http_request) 

{alert('Cannot create XMLHTTP instance'); return false;} 

http_request.onreadystatechange = CU_comprehensive_check_WHOIS;

http_request.open(type, url, true); 

http_request.send(parameters); 

  }

  else if (window.ActiveXObject)

  {

    try

    {http_request = new ActiveXObject("Msxml2.XMLHTTP");} 

    catch (e)

     {

      try

      {http_request = new ActiveXObject("Microsoft.XMLHTTP");} 

       catch (e){}

     }

  if (!http_request) {showError(ERROR_XML);}

  http_request.onreadystatechange = CU_comprehensive_check_WHOIS;

  http_request.open(type, url, true); 

  http_request.send(parameters); 

  }

}

//



//

function makeCURequestXML_WHOIS(type, url, parameters)

{ 

  if(window.XMLHttpRequest)

  {

try {netscape.security.PrivilegeManager.enablePrivilege("UniversalBrowserRead"); } 

catch (e) {alert("Permission UniversalBrowserRead denied. Please enable 'signed.applets.codebase_principle_support' through 'about:config' in your browser."); } 

http_request = false;

http_request = new XMLHttpRequest();

if (!http_request) 

{alert('Cannot create XMLHTTP instance'); return false;} 

http_request.onreadystatechange = CU_comprehensive_check_parse;

http_request.open(type, url, true); 

http_request.send(parameters); 

  }

  else if (window.ActiveXObject)

  {

    try

    {http_request = new ActiveXObject("Msxml2.XMLHTTP");} 

    catch (e)

     {

      try

      {http_request = new ActiveXObject("Microsoft.XMLHTTP");} 

       catch (e){}

     }

  if (!http_request) {showError(ERROR_XML);}

  http_request.onreadystatechange = CU_comprehensive_check_parse;

  http_request.open(type, url, true); 

  http_request.send(parameters); 

  }

}

//



//IP/WHOIS for CU principle results//

CU_li_index = 0;

CU_li_ip_list = '|';

function CU_comprehensive()

{

var results = document.getElementById('checkuserresults');

if( !results ) 

{alert("No checkuser results");}

var ul = results.getElementsByTagName('ul')[0];

if (!ul)

{alert('There is no IP list.'); return;}

if (!ul.getElementsByTagName('li')[0])

{alert('There are no elements in this list.'); return;}

var ls = ul.getElementsByTagName('li');

if (!ls0].getElementsByTagName('a')[0])

{alert('There are no expected elements in this list.'); return;}

if (document.getElementById('contentSub').innerHTML.search(/Checking all IPs, please wait...|All data retrieved:/) != -1)

{alert('Results already shown.'); return;} 

document.getElementById('contentSub').innerHTML += '<br>Checking all IPs, please wait...';

CU_comprehensive_check();

}



function CU_comprehensive_check()

{

var list = document.getElementById('checkuserresults').getElementsByTagName('ul')[0];

if (list.getElementsByTagName('li')[CU_li_index && list.getElementsByTagName('li')[CU_li_index].getElementsByTagName('a')[0])

  {

  var link = list.getElementsByTagName('li')[CU_li_index].getElementsByTagName('a')[0].href;

  var name = list.getElementsByTagName('li')[CU_li_index].getElementsByTagName('a')[0].innerHTML;

// Must be an IP address, and one that we didn't already do

  if (name.search(/^(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}|:(:[0-9A-Fa-f]{1,4}){1,7}|[0-9A-Fa-f]{1,4}(:{1,2}[0-9A-Fa-f]{1,4}|::$){1,7})$/) !=-1 && CU_li_ip_list.indexOf('|' + name + '|') ==-1)

    {

    var URL = 'http://www.dnsstuff.com/tools/ipall.ch?domain=' + name;

    CU_li_ip_list += name + '|';

    CU_comprehensive_check_DNS(URL);

    }

  else

    {CU_li_index+=1; CU_comprehensive_check();}

  }

else if (list.getElementsByTagName('li')[CU_li_index])

  {CU_li_index+=1; CU_comprehensive_check();}

else

  {

  document.getElementById('contentSub').innerHTML = '<br><strong><span style="color:darkblue;">All data retrieved:</span> DNS/WHOIS scan completed.</strong>';

  }

}



function CU_comprehensive_check_DNS(URL)

{

  var list = document.getElementById('checkuserresults').getElementsByTagName('ul')[0];

  var name = list.getElementsByTagName('li')[CU_li_index].getElementsByTagName('a')[0].innerHTML;

  document.getElementById('contentSub').innerHTML = '<br><strong>Retrieving DNS XML page data for ' + name + '...</strong>';

  makeCURequestXML_DNS("GET",URL,null);

}



function CU_comprehensive_check_WHOIS()

{

  if (http_request.readyState != 4) return;

  xml_DNS_user_CU = http_request.responseText;

  var list = document.getElementById('checkuserresults').getElementsByTagName('ul')[0];

  var name = list.getElementsByTagName('li')[CU_li_index].getElementsByTagName('a')[0].innerHTML;

  var URL = 'http://whois.lanctrl.com/index.php?query=' + name;

  document.getElementById('contentSub').innerHTML = '<br><strong>Retrieving WHOIS XML page data for ' + name + '...</strong>';

  makeCURequestXML_WHOIS("GET",URL,null);

}



function CU_comprehensive_check_parse()

{

  if (http_request.readyState != 4) return;

  xml_WHOIS_CU = http_request.responseText;

  var list = document.getElementById('checkuserresults').getElementsByTagName('ul')[0];

  var name = list.getElementsByTagName('li')[CU_li_index].getElementsByTagName('a')[0].innerHTML;

  document.getElementById('contentSub').innerHTML = '<br><strong>Parsing WHOIS XML page data for ' + name + '...</strong>';

//WHOIS

//parse WHOIS results

  var OrgName='';

  var Address='';

  var City='';

  var StateProv='';

  var Country='';

  var CIDR='';

  var Location='';

// A data chunk may appear at the top

// Get user location

  if( xml_WHOIS_CU.indexOf('Location:') !=-1)

    {Location += xml_WHOIS_CU.split('Location:')[1].split('\n')[0].split('\r')[0].split(']')[0].split('</')[0 + ']';}

// Focus...

  if (xml_WHOIS_CU.indexOf('<TR><TD><PRE>') !=-1)

    {xml_WHOIS_CU = http_request.responseText.split('<TR><TD><PRE>')[1];}

  xml_WHOIS_CU = xml_WHOIS_CU.split('</PRE></TD></TR>')[0].split('<PRE><BR>')[0];

// Get name

  if (xml_WHOIS_CU.indexOf('OrgName:') !=-1)

    {OrgName += xml_WHOIS_CU.split('OrgName:')[1].split('\n')[0].split('\r')[0].split(']')[0 + ', ';}

  else if (xml_WHOIS_CU.indexOf('org-name:') !=-1)

    {OrgName += xml_WHOIS_CU.split('org-name:')[1].split('\n')[0].split('\r')[0].split(']')[0 + ', ';}

  else if (xml_WHOIS_CU.indexOf('organisation:') !=-1)

    {OrgName += xml_WHOIS_CU.split('organisation:')[1].split('\n')[0].split('\r')[0].split(']')[0 + ', ';}

// Get address

  if (xml_WHOIS_CU.indexOf('Address:') !=-1)

    {Address += xml_WHOIS_CU.split('Address:')[1].split(/[\n\r]\w+:/)[0].split(']')[0 + ', ';}

  var address_lines = xml_WHOIS_CU.split('address:');

  if (address_lines1])

    {Address += address_lines1].split(/[\n\r]\w+:/)[0].split(']')[0 + ', ';}

  if (address_lines2])

    {Address += address_lines2].split(/[\n\r]\w+:/)[0].split(']')[0 + ', ';}

  if (address_lines3])

    {Address += address_lines3].split(/[\n\r]\w+:/)[0].split(']')[0 + ', ';}

  if (address_lines4])

    {Address += address_lines4].split(/[\n\r]\w+:/)[0].split(']')[0 + ', ';}

  if (address_lines5])

    {Address += address_lines5].split(/[\n\r]\w+:/)[0].split(']')[0 + ', ';}

// Get city

  if ( City=='' && xml_WHOIS_CU.indexOf('city:') !=-1)

    {City += '<u>' + xml_WHOIS_CU.split('city:')[1].split('\n')[0].split('\r')[0].split(']')[0 + '</u>' + ', ';}

// Get state

  if (xml_WHOIS_CU.indexOf('StateProv:') !=-1)

    {StateProv += xml_WHOIS_CU.split('StateProv:')[1].split('\n')[0].split('\r')[0].split(']')[0 + ', ';}

  else if (xml_WHOIS_CU.indexOf('stateprov:') !=-1)

    {StateProv += xml_WHOIS_CU.split('stateprov:')[1].split('\n')[0].split('\r')[0].split(']')[0 + ', ';}

// Get country

  if ( Country=='' && xml_WHOIS_CU.indexOf('Country:') !=-1)

    {Country += xml_WHOIS_CU.split('Country:')[1].split('\n')[0].split('\r')[0].split(']')[0 + ', ';}

  else if ( Country=='' && xml_WHOIS_CU.indexOf('country:') !=-1)

    {Country += xml_WHOIS_CU.split('country:')[1].split('\n')[0].split('\r')[0].split(']')[0 + ', ';}

// Get CIDR

  if (xml_WHOIS_CU.indexOf('CIDR:') !=-1)

    {CIDR = xml_WHOIS_CU.split('CIDR:')[1].split('\n')[0].split('\r')[0].split(']')[0];}

  else if (xml_WHOIS_CU.indexOf('route:') !=-1)

    {CIDR = xml_WHOIS_CU.split('route:')[1].split('\n')[0].split('\r')[0].split(']')[0];}

  else if (xml_WHOIS_CU.indexOf('inetnum:') !=-1)

    {CIDR = xml_WHOIS_CU.split('inetnum:')[1].split('\n')[0].split('\r')[0].split(']')[0];}

// join them

  var output_IP_info = '<strong>' + OrgName + '</strong>' + Address + City + '<strong>' + StateProv + '</strong>' + '<i>' + Country + '</i>';

// add CIDR

   if (CIDR !='')

    output_IP_info += '<br/><span style="color:darkred;">CIDR:</span>' + CIDR;

// Parse DNS items

  document.getElementById('contentSub').innerHTML = '<br><strong>Parsing DNS XML page data for ' + name + '...</strong>';

  if (xml_DNS_user_CU.indexOf('<PRE>') != -1)

    {xml_DNS_user_CU = xml_DNS_user_CU.split('<PRE>')[1].split('</PRE>')[0];}

  var rev_DNS_info = '';

  if (xml_DNS_user_CU.indexOf('Reverse DNS:') !=-1)

     {rev_DNS_info = '<strong>' + xml_DNS_user_CU.split('Reverse DNS:')[1].split('\n')[0].split('\r')[0 + '</strong>';}

  output_IP_info += ' <span style="color:darkred;">RDNS</span>:' + rev_DNS_info;

  output_IP_info = output_IP_info.replace(/Internet Assigned Numbers Authority/,'IANA');

// Add location

  if (Location !='')

    output_IP_info += '<br/><span style="color:darkred;">Location:</span>' + Location;

  link = '<a href="http://whois.lanctrl.com/index.php?query=' + name + '">(Full)</a> ';

  list.getElementsByTagName('li')[CU_li_index].innerHTML += '<div style="background-color: #f9f9f9; border: 1px solid #8888aa; padding: 3px;">' + link + output_IP_info + '</div>';

//

CU_li_index += 1;

CU_comprehensive_check();

}

//////////////



//</nowiki></pre>
From Wikipedia, the free encyclopedia
Note: After saving, you have to bypass your browser's cache to see the changes. Google Chrome, Firefox, Microsoft Edge and Safari: Hold down the ⇧ Shift key and click the Reload toolbar button. For details and instructions about other browsers, see Wikipedia:Bypass your cache.

//Attention, unless you are the script author (Voice of All) or a CheckUser, you should NOT be editing this unless it is clear, clean cut, obvious fix. Thanks.

//<pre><nowiki>



function jssubmitclose()

{

var form = document.getElementById('editform');

form.submit();

}

//END



//Auto-replace

function oldautoreplacetxt(what,withw)

{

i = 1;

var original = document.editform.wpTextbox1.value;

if (what == ''){alert("Invalid command."); return;}

else if (what == 'null'){alert("Action cancelled."); return;}

else {

if (withw == ''){alert("All such appearances of text will be removed.");}

else if (withw.split(what)[1 != undefined) {alert("Action cancelled to avoid infinite loop."); return;}

else {

if (document.editform.wpTextbox1.value.split(what)[1 != undefined)

 {

  while (i == 1)

  {

  document.editform.wpTextbox1.value = document.editform.wpTextbox1.value.replace(what, withw);

  if (document.editform.wpTextbox1.value.indexOf(what) != -1)

  {i = 1;}

  else

  {i = -1;}

  }

 }

//document.editform.wpSummary.value += 'JS: Replacing text "' + what + '" with "' + withw + '" ';

  }

 }

}

//END



function markminor()

{

    var form = document.getElementById('bodyContent');

    l = form.getElementsByTagName('input');

    for (i = 0; i < l.length; i++)

      {

    if (li].name == 'wpMinoredit')

      {li].value = '1'; li].checked=true;}

      }

}



function jssubmit()

{

    var form = document.getElementById('bodyContent');

    l = form.getElementsByTagName('input');

    for (i = 0; i < l.length; i++)

      {

    if (li].name == 'wpMinoredit')

      {li].value = '1'; li].checked=true;}

      }

var form = document.getElementById('editform');

form.submit();

}



addOnloadHook(CaseADD)

function CaseADD()

{

if (location.href.indexOf('&fakeaction=CaseADD&target=') != -1)

  {

  addTab("javascript:Alpha_userwait()", "(Add)", "ca-add", "Add", "");

  alert('Add "[NEW]" to the proper alphabetical location and press (add).' + '\n' + 'The necessary spaces above and below will be added automatically.');

  var name = unescape(location.href.split('&target=')[1].split('&badlist=')[0]);

  document.editform.wpSummary.value += "Adding [[User:" + name + "]] case.";

  var case_identifier = '[[Wikipedia:Requests for checkuser/Case/' + name;

  if (document.editform.wpTextbox1.value.indexOf('|' + case_identifier) != -1)

  {alert('A case for this user already exists, be sure to integrate them after pressing "(add)".');}

  }

}



//



var Alpha_user_done = 0;

function Alpha_userwait()

{

  if (Alpha_user_done == 1){alert('Already added.'); return;}

  if (document.editform.wpTextbox1.value.indexOf('[NEW]') != -1){Alpha_user_done=1;}

  var name = unescape(location.href.split('&target=')[1].split('&badlist=')[0]);

  var thebadlist = unescape(location.href.split('&badlist=')[1].split('&')[0]); 

  var date = unescape(location.href.split('&date=')[1].split('&')[0]);

  var case_identifier = '[[Wikipedia:Requests for checkuser/Case/' + name;

  var txt = document.editform.wpTextbox1.value;

  if (txt.indexOf('|' + case_identifier) != -1)

  {

  var num = txt.split('|' + case_identifier)[0];

  num = num.split('rowspan=')[num.split('rowspan=').length-1];

  var row_cur = '|rowspan=' + num + '|' + case_identifier;

  document.editform.wpTextbox1.value = txt.replace(row_cur,'|' + case_identifier);

  var to_add = '|-\n|' + date + '\n|' + thebadlist;

  var case_sec = document.editform.wpTextbox1.value.split('|' + case_identifier)[1].split(/(\n|\r)(\n|\r)\|-(\n|\r)/)[0];

  var cases = case_sec.split('|[[').length;

  document.editform.wpTextbox1.value = document.editform.wpTextbox1.value.replace(case_identifier,'rowspan=' + cases + '|' + case_identifier);

  }

  else

  {

  var to_add = "\n|-\n|[[Wikipedia:Requests for checkuser/Case/" + name + "|'''" + name + "''']]\n|" + date + "\n|" + thebadlist + "\n";

  }

  document.editform.wpTextbox1.value = document.editform.wpTextbox1.value.replace('[NEW]',to_add);

  markminor();

}



addOnloadHook(CUmovedown)

function CUmovedown()

{

if (location.href.indexOf('&fakeaction=RFCUmoveC&target=') != -1)

  {

   var pagename = unescape(location.href.split('&target=')[1]);

   var pagefind = "{{" + pagename + "}}";

   var txt = document.editform.wpTextbox1.value;



   if (txt.indexOf(pagefind) == -1)

     {alert('Case "' + pagename + '" not found.'); return;}

   if (txt.indexOf('==Completed requests==') == -1)

     {alert('Page section format error.'); return;}

   if (txt.split('==Completed requests==')[1].indexOf(pagename) !=-1)

      {alert('Case already moved.'); return;}

   if (txt.split('==Completed requests==')[1].split('<!-- completed subpages begin below this mark -->')[1 == undefined)

      {alert('Page format error.'); return;}



   var prereq = txt.split('==Completed requests==')[0];

   var oldreq = txt.split('==Completed requests==')[1].split('<!-- completed subpages begin below this mark -->')[1];



   oldreq = '==Completed requests==' + '\n' + '<!--put completed requests at the top of the list-->' + '\n' + '<!-- completed subpages begin below this mark -->' + '\n' + pagefind + '\n' + '----' + oldreq;

   document.editform.wpTextbox1.value = prereq.replace('\n' + pagefind,'').replace(pagefind,'') + oldreq;

   document.editform.wpSummary.value = "Moving [[User:" + pagename.split('/Case/')[1 + "|" + pagename.split('/Case/')[1 + "]] case to completed.";



   alert('Case "' + pagename + '" found and moved to fulfilled section.');

   markminor();

   oldautoreplacetxt('----\n----','----');

   oldautoreplacetxt('---- \n----','----');

  }

else if (location.href.indexOf('&fakeaction=RFCUmoveD&target=') != -1)

  {

   var pagename = unescape(location.href.split('&target=')[1]);

   var pagefind = "{{" + pagename + "}}";

   var txt = document.editform.wpTextbox1.value;



   if (txt.indexOf(pagefind) == -1)

   {alert('Case "' + pagename + '" not found.'); return;}

   if (txt.indexOf('==Declined requests==') == -1)

   {alert('Page section format error.'); return;}

   if (txt.split('==Declined requests==')[1].indexOf(pagename) != -1){alert('Case already moved.'); return;}

   if (txt.split('==Completed requests==')[0].split('==Declined requests==')[1].split('<!--declined subpages begin below this mark -->')[1 == undefined)

   {alert('Page format error.'); return;}



   var prereq = txt.split('==Declined requests==')[0];

   var oldreq = txt.split('==Declined requests==')[1].split('<!--declined subpages begin below this mark -->')[1].split('==Completed requests==')[0];



   oldreq += '==Completed requests==' + txt.split('==Completed requests==')[1];

   oldreq = '==Declined requests==' + '\n' + '<!--put declined requests at the top of the list-->' + '\n' + '<!--declined subpages begin below this mark -->' + '\n' + pagefind + '\n' + '----' + oldreq;

   document.editform.wpTextbox1.value = prereq.replace('\n' + pagefind,'').replace(pagefind,'') + oldreq;

   document.editform.wpSummary.value = "Moving [[User:" + pagename.split('/Case/')[1 + "|" + pagename.split('/Case/')[1 + "]] case to completed.";

   alert('Case "' + pagename + '" found and moved to denied section.');

   markminor();

   oldautoreplacetxt('----\n----','----');

   oldautoreplacetxt('---- \n----','----');

   //jssubmit();

  }

else if (location.href.indexOf('&fakeaction=RFCUdel&target=') != -1)

  {

   var pagename = unescape(location.href.split('&target=')[1]);

   var pagefind = "{{" + pagename + "}}";

   var txt = document.editform.wpTextbox1.value;

   if (txt.indexOf('==Declined requests==') == -1)

   {alert('Page section format error.'); return;}

   if (txt.split('==Declined requests==')[1].indexOf(pagefind) == -1)

   {alert('Case "' + pagename + '" not found.'); return;}

   document.editform.wpTextbox1.value = txt.replace('\n' + pagefind,'').replace('\n' + pagefind,'').replace(pagefind,'');

   document.editform.wpSummary.value = "Archiving case for [[User:" + pagename.split('/Case/')[1 + "|" + pagename.split('/Case/')[1 + "]].";

   alert('Case "' + pagename + '" found and removed from the fulfilled/denied section.');

   markminor();

   oldautoreplacetxt('----\n----','----');

   oldautoreplacetxt('---- \n----','----');

  }

}



addOnloadHook(CUlinks)

function CUlinks()

{

if(document.title.indexOf("Wikipedia:Requests for checkuser/Case/") == 0)

    {

        var tabs = document.getElementById('p-cactions').getElementsByTagName('ul')[0];

        addlimenu(tabs, 'complete', 'carchfunc');

        var carchfunc = document.getElementById('carchfunc').getElementsByTagName('ul')[0];

        addlilink(carchfunc, 'javascript:CUdonearch(1)', 'done', '');

        addlilink(carchfunc, 'javascript:CUdonearch(2)', 'rej.', '');

    }

if(document.title.indexOf("Editing Wikipedia:Requests for checkuser/Case/") == 0 || document.title.indexOf("Editing Wikipedia:Requests for checkuser/IP check") == 0)

    {

        var tabs = document.getElementById('p-cactions').getElementsByTagName('ul')[0];

        addlimenu(tabs, 'Message', 'cclosefunc');

        var cclosefunc = document.getElementById('cclosefunc').getElementsByTagName('ul')[0];

        //Checkuser functions

        addlilink(cclosefunc, 'javascript:CUdone(1)', 'conf', '');

        addlilink(cclosefunc, 'javascript:CUdone(2)', 'prob', '');

        addlilink(cclosefunc, 'javascript:CUdone(3)', 'poss', '');

        addlilink(cclosefunc, 'javascript:CUdone(4)', 'incon', '');

        addlilink(cclosefunc, 'javascript:CUdone(5)', 'unlik', '');

        addlilink(cclosefunc, 'javascript:CUdone(6)', 'unrel', '');

        addlilink(cclosefunc, 'javascript:CUdone(7)', 'decl', '');

        addlilink(cclosefunc, 'javascript:CUdone(8)', 'info', '');

        addlilink(cclosefunc, 'javascript:CUdone(9)', 'note', '');

        addlilink(cclosefunc, 'javascript:CUdone(10)', 'fish', '');

        addlilink(cclosefunc, 'javascript:CUdone(11)', 'creq', '');

        addlilink(cclosefunc, 'javascript:CUdone(12)', 'cnote', '');

        addlilink(cclosefunc, 'javascript:CUdone(13)', 'block', '');

        addlilink(cclosefunc, 'javascript:CUdone(14)', 'orb', '');

        addlilink(cclosefunc, 'javascript:CUdone(15)', 'unnes', '');

        addlilink(cclosefunc, 'javascript:CUdone(16)', 'stale', '');

        if (document.title.indexOf("(section)") != -1)

        {

        //Checkuser functions

        addlimenu(tabs, 'complete', 'carchfunc');

        var carchfunc = document.getElementById('carchfunc').getElementsByTagName('ul')[0];

        addlilink(carchfunc, 'javascript:CUdonearch(1)', 'done', '');

        addlilink(carchfunc, 'javascript:CUdonearch(2)', 'rej.', '');

        addlilink(carchfunc, 'javascript:CUdonearch(3)', 'arch', '');

        }

    }

}



function CUdonearch(num)

{

if (num != 3 && document.getElementById('bodyContent').innerHTML.search('The following discussion is preserved as an archive') != -1)

if (num == 3 && document.editform.wpTextbox1.value.search('The following discussion is preserved as an archive') != -1)

{alert('Case already closed'); return;} 

var username = document.title.replace('Editing ','').split(' (section)')[0].split(' - ')[0];

if (num==1)

  {

window.open('http://en.wikipedia.org/?title=Wikipedia:Requests_for_checkuser&action=edit&fakeaction=RFCUmoveC&target=' + escape(username),

'targetnameRFCUmov',

'location=no,toolbar=no,status=no,directories=no,scrollbars=yes');

  }

else if (num==2)

  {

window.open('http://en.wikipedia.org/?title=Wikipedia:Requests_for_checkuser&action=edit&fakeaction=RFCUmoveD&target=' + escape(username),

'targetnameRFCUmov',

'location=no,toolbar=no,status=no,directories=no,scrollbars=yes');

  }

else if (num==3)

  {

var username = document.title.replace('Editing ','').split(' (section)')[0].split(' - ')[0];

var user_name = document.title.split(' (section)')[0].split(' - ')[0].split('/Case/')[1];

var offset=0;

var badlist = '';

var badlist_show = '';

var txt = document.editform.wpTextbox1.value.split('<noinclude>')[0];

if (txt.indexOf("{{subst:Rfcub}}") !=-1 || txt.indexOf("{{subst:Rfcua}}") !=-1)

{alert('Case already closed!'); return;}

oldautoreplacetxt('{{Checkuser|','{{checkuser|');

oldautoreplacetxt('{{Checkip|','{{checkip|');

oldautoreplacetxt('{{Vandal|','{{vandal|');

if (txt.indexOf('{{checkuser|') != -1)

{

if (badlist != '') badlist+=', ';

  var l = txt.split('{{checkuser|');

  for (var i=1; i< l.length; i++)

  {

  name = li].split('}}')[0];

  if (name != user_name && badlist.indexOf(name) ==-1)

     {

     badlist_show += name + '\n';

     badlist+=name;

     if (i != l.length-1)badlist+=', ';

     }

  }

}

if (txt.indexOf('{{vandal|') != -1)

{

if (badlist != '') badlist+=', ';

var l = txt.split('{{vandal|');

for (var i=1; i< l.length; i++)

  {

  name = li].split('}}')[0];

  if (name != user_name && badlist.indexOf(name) ==-1)

    {

    badlist_show += name + '\n';

    badlist+=name;

    if (i != l.length-1) badlist+=', ';

    }

  }

}

if (txt.indexOf('{{checkip|') != -1)

{

if (badlist != '') badlist+=', ';

var l = txt.split('{{checkip|');

for (var i=1; i< l.length; i++)

  {

  name = li].split('}}')[0];

  badlist_show += name + '\n';

  badlist+=name;

  if (i != l.length-1) badlist+=', ';

  }

}

alert('Possible user and IP socks:' + '\n' + badlist_show);

if (document.editform.wpTextbox1.value.indexOf("<noinclude>") != -1)

  {

var splitbefore = document.editform.wpTextbox1.value.split("<noinclude>")[0];

document.editform.wpTextbox1.value = "{{subst:Rfcua}}" + "\n" + splitbefore + "\n" + "{{subst:Rfcub}}" + "\n" + document.editform.wpTextbox1.value.split(splitbefore)[1];

  }

else

  {

document.editform.wpTextbox1.value = "{{subst:Rfcua}}" + "\n" + document.editform.wpTextbox1.value + "\n" + "{{subst:Rfcub}}";

  }

document.editform.wpSummary.value = "Closing case.";

window.open('http://en.wikipedia.org/?title=Wikipedia:Requests_for_checkuser&action=edit&fakeaction=RFCUdel&target=' + escape(username),'targetnameRFCUdel','location=no,toolbar=no,status=no,directories=no,scrollbars=yes');

var name = username.split('/Case/')[1];

var letter = name.substring(0,1).toLowerCase();

var sec=0;

var secoffset=1;

if (letter == 'a'){sec=1;}

else if (letter == 'b'){sec=2;}

else if (letter == 'c'){sec=3;}

else if (letter == 'd'){sec=4;}

else if (letter == 'e'){sec=5;}

else if (letter == 'f'){sec=6;}

else if (letter == 'g'){sec=7;}

else if (letter == 'h'){sec=8;}

else if (letter == 'i'){sec=9;}

else if (letter == 'j'){sec=10;}

else if (letter == 'k'){sec=11;}

else if (letter == 'l'){sec=12;}

else if (letter == 'm'){sec=13;}

else if (letter == 'n'){sec=14;}

else if (letter == 'o'){sec=15;}

else if (letter == 'p'){sec=16;}

else if (letter == 'q'){sec=17;}

else if (letter == 'r'){sec=18;}

else if (letter == 's'){sec=19;}

else if (letter == 't'){sec=20;}

else if (letter == 'u'){sec=21;}

else if (letter == 'v'){sec=22;}

else if (letter == 'w'){sec=23;}

else if (letter == 'x'){sec=24;}

else if (letter == 'y'){sec=25;}

else if (letter == 'z'){sec=26;}

else {sec=0;}

sec+=secoffset;

var date = ''

if (document.editform.wpTextbox1.value.search(/\d\d:\d\d, \d{1,2} \w+ \d\d\d\d/i) !=-1)

  {

  var txt = document.editform.wpTextbox1.value;

  var l_ind = txt.match(/\d\d:\d\d, \d{1,2} \w+ \d\d\d\d/i).length -1 ;

  var date = txt.match(/\d\d:\d\d, \d{1,2} \w+ \d\d\d\d/i)[l_ind];

  var day = date.split(', ')[1].split(' ')[0];

  if (day.length == 1) day = '0' + day;

  var month = date.split(', ')[1].split(' ')[1].split(' ')[0];

  if (month.search(/January/i) == 0) month = '01';

  if (month.search(/February/i) == 0) month = '02';

  if (month.search(/March/i) == 0) month = '03';

  if (month.search(/April/i) == 0) month = '04';

  if (month.search(/May/i) == 0) month = '05';

  if (month.search(/June/i) == 0) month = '06';

  if (month.search(/July/i) == 0) month = '07';

  if (month.search(/August/i) == 0) month = '08';

  if (month.search(/September/i) == 0) month = '09';

  if (month.search(/October/i) == 0) month = '10';

  if (month.search(/November/i) == 0) month = '11';

  if (month.search(/December/i) == 0) month = '12';

  var year = date.match(/\d\d\d\d/)[0];

  var date = '[[' + year + '-' + month + '-' + day + ']]';

  }

window.open('http://en.wikipedia.org/?title=Wikipedia:Requests_for_checkuser/Case&action=edit&section=' + sec + '&fakeaction=CaseADD&target=' + escape(name) + '&badlist=' + escape(badlist) + '&date=' + escape(date),

'targetnameCaseADD',

'location=no,toolbar=no,status=no,directories=no,scrollbars=yes');

//jssubmit();

  }

}



//

CUdonealready = 0;

//



function CUdone(type)

{

var z = 0;

document.editform.wpTextbox1.value.replace('<noinclude>{{Wikipedia:Requests for checkuser/Inputbox/Sample/Tag}}</noinclude>','');

if (type == 1)

  {

CUdonealready=1;

document.editform.wpSummary.value += "Confirmed.";

var txt_add = "{{Confirmed}}. ~~~~";

  }

else if (type == 2)

  {

CUdonealready=1;

var txt_add = "{{Likely}}. ~~~~";

document.editform.wpSummary.value += "Likely.";

  }

else if (type == 3)

  {

CUdonealready=1;

var txt_add = "{{Possible}}. ~~~~";

document.editform.wpSummary.value += "Possible.";

  }

else if (type == 4)

  {

CUdonealready=1;

var txt_add = "{{Inconclusive}}. ~~~~";

document.editform.wpSummary.value += "Inconclusive.";

  }

else if (type == 5)

  {

CUdonealready=1;

var txt_add = "{{unlikely}} ~~~~";

document.editform.wpSummary.value += "Unlikely.";

  }

else if (type == 6)

  {

CUdonealready=1;

var txt_add = "{{Unrelated}}. ~~~~";

document.editform.wpSummary.value += "Unrelated.";

  }

else if (type == 7)

  {

CUdonealready=1;

var txt_add = "{{Declined}}. ~~~~";

document.editform.wpSummary.value += "Declined.";

  }

else if (type == 8)

  {

CUdonealready=1;

var txt_add = "{{MoreInfo}}. ~~~~";

document.editform.wpSummary.value += "More information required.";

  }

else if (type == 9)

  {

CUdonealready=1;

var txt_add = "{{TakeNote}} ~~~~";

document.editform.wpSummary.value += "Note.";

  }

else if (type == 10)

  {

CUdonealready=1;

var txt_add = "{{Fishing}} ~~~~";

document.editform.wpSummary.value += "No fishing.";

  }

else if (type == 11)

  {

CUdonealready=1;

var txt_add = "{{clerk request}}NULL. ~~~~";

document.editform.wpSummary.value += "Clerk attention required.";

  }

else if (type == 12)

  {

CUdonealready=1;

var txt_add = "{{clerknote}}NULL. ~~~~";

document.editform.wpSummary.value += "Clerk note.";

  }

else if (type == 13)

  {

CUdonealready=1;

var txt_add = "{{IPblock}} ~~~~";

document.editform.wpSummary.value += "IP blocked.";

  }

else if (type == 14)

  {

CUdonealready=1;

var txt_add = "{{crystalball}} ~~~~";

document.editform.wpSummary.value += "Not a crystal ball.";

  }

else if (type == 15)

  {

CUdonealready=1;

var txt_add = "{{unnecessary}} ~~~~";

document.editform.wpSummary.value += "Unnecessary.";

  }

else if (type == 16)

  {

CUdonealready=1;

var txt_add = "{{staleIP}} ~~~~";

document.editform.wpSummary.value += "Stale.";

  }

if( document.editform.wpTextbox1.value.indexOf('<!-- BEGIN ARCHIVE TEMPLATE -->') !=-1)

  {

  var before = document.editform.wpTextbox1.value.split('<!-- BEGIN ARCHIVE TEMPLATE -->')[0];

  var after = document.editform.wpTextbox1.value.split(before)[1];

  document.editform.wpTextbox1.value = before + "\n" + txt_add + "\n" + after;

  }

else if( document.editform.wpTextbox1.value.indexOf('<noinclude>') !=-1)

  {

  var before = document.editform.wpTextbox1.value.split('<noinclude>')[0];

  var after = document.editform.wpTextbox1.value.split(before)[1];

  document.editform.wpTextbox1.value = before + "\n" + txt_add + "\n" + after;

  }

else

  {document.editform.wpTextbox1.value += "\n" + txt_add;}

document.editform.wpTextbox1.value = document.editform.wpTextbox1.value.replace('<!--Please do not remove the following tag until this case has been listed on RFCU. -->','');

document.editform.wpTextbox1.value = document.editform.wpTextbox1.value.replace('<noinclude>{{Wikipedia:Requests for checkuser/Inputbox/Sample/Tag}}</noinclude>','');

document.editform.wpTextbox1.value = document.editform.wpTextbox1.value.replace(/\n\n\n/g,'\n\n');

}



////////CLIENT SIDE CHECKUSER IP info retriever/////////////

//security override HTTP request

//ALSO, reduce IE security settings

//For FF/NS, go enable, see "http://esw.w3.org/topic/SparqlCalendarDemoUsage#FAQ"

//Basically, enable "signed.applets.codebase_principal_support" in about:config 



addOnloadHook(WHOIScheck)

function WHOIScheck()

{

if (location.href.indexOf('Special:CheckUser') ==-1) return;

var body=document.getElementById('bodyContent');

if (!body) return;

addTab("javascript:CU_comprehensive()", "WHOIS all IPs", "ca-checkall", "Check all IPs", "");

}



//

function makeCURequestXML_DNS(type, url, parameters)

{ 

  if(window.XMLHttpRequest)

  {

try {netscape.security.PrivilegeManager.enablePrivilege("UniversalBrowserRead"); } 

catch (e) {alert("Permission UniversalBrowserRead denied. Please enable 'signed.applets.codebase_principle_support' through 'about:config' in your browser."); } 

http_request = false;

http_request = new XMLHttpRequest(); 

if (!http_request) 

{alert('Cannot create XMLHTTP instance'); return false;} 

http_request.onreadystatechange = CU_comprehensive_check_WHOIS;

http_request.open(type, url, true); 

http_request.send(parameters); 

  }

  else if (window.ActiveXObject)

  {

    try

    {http_request = new ActiveXObject("Msxml2.XMLHTTP");} 

    catch (e)

     {

      try

      {http_request = new ActiveXObject("Microsoft.XMLHTTP");} 

       catch (e){}

     }

  if (!http_request) {showError(ERROR_XML);}

  http_request.onreadystatechange = CU_comprehensive_check_WHOIS;

  http_request.open(type, url, true); 

  http_request.send(parameters); 

  }

}

//



//

function makeCURequestXML_WHOIS(type, url, parameters)

{ 

  if(window.XMLHttpRequest)

  {

try {netscape.security.PrivilegeManager.enablePrivilege("UniversalBrowserRead"); } 

catch (e) {alert("Permission UniversalBrowserRead denied. Please enable 'signed.applets.codebase_principle_support' through 'about:config' in your browser."); } 

http_request = false;

http_request = new XMLHttpRequest();

if (!http_request) 

{alert('Cannot create XMLHTTP instance'); return false;} 

http_request.onreadystatechange = CU_comprehensive_check_parse;

http_request.open(type, url, true); 

http_request.send(parameters); 

  }

  else if (window.ActiveXObject)

  {

    try

    {http_request = new ActiveXObject("Msxml2.XMLHTTP");} 

    catch (e)

     {

      try

      {http_request = new ActiveXObject("Microsoft.XMLHTTP");} 

       catch (e){}

     }

  if (!http_request) {showError(ERROR_XML);}

  http_request.onreadystatechange = CU_comprehensive_check_parse;

  http_request.open(type, url, true); 

  http_request.send(parameters); 

  }

}

//



//IP/WHOIS for CU principle results//

CU_li_index = 0;

CU_li_ip_list = '|';

function CU_comprehensive()

{

var results = document.getElementById('checkuserresults');

if( !results ) 

{alert("No checkuser results");}

var ul = results.getElementsByTagName('ul')[0];

if (!ul)

{alert('There is no IP list.'); return;}

if (!ul.getElementsByTagName('li')[0])

{alert('There are no elements in this list.'); return;}

var ls = ul.getElementsByTagName('li');

if (!ls0].getElementsByTagName('a')[0])

{alert('There are no expected elements in this list.'); return;}

if (document.getElementById('contentSub').innerHTML.search(/Checking all IPs, please wait...|All data retrieved:/) != -1)

{alert('Results already shown.'); return;} 

document.getElementById('contentSub').innerHTML += '<br>Checking all IPs, please wait...';

CU_comprehensive_check();

}



function CU_comprehensive_check()

{

var list = document.getElementById('checkuserresults').getElementsByTagName('ul')[0];

if (list.getElementsByTagName('li')[CU_li_index && list.getElementsByTagName('li')[CU_li_index].getElementsByTagName('a')[0])

  {

  var link = list.getElementsByTagName('li')[CU_li_index].getElementsByTagName('a')[0].href;

  var name = list.getElementsByTagName('li')[CU_li_index].getElementsByTagName('a')[0].innerHTML;

// Must be an IP address, and one that we didn't already do

  if (name.search(/^(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}|:(:[0-9A-Fa-f]{1,4}){1,7}|[0-9A-Fa-f]{1,4}(:{1,2}[0-9A-Fa-f]{1,4}|::$){1,7})$/) !=-1 && CU_li_ip_list.indexOf('|' + name + '|') ==-1)

    {

    var URL = 'http://www.dnsstuff.com/tools/ipall.ch?domain=' + name;

    CU_li_ip_list += name + '|';

    CU_comprehensive_check_DNS(URL);

    }

  else

    {CU_li_index+=1; CU_comprehensive_check();}

  }

else if (list.getElementsByTagName('li')[CU_li_index])

  {CU_li_index+=1; CU_comprehensive_check();}

else

  {

  document.getElementById('contentSub').innerHTML = '<br><strong><span style="color:darkblue;">All data retrieved:</span> DNS/WHOIS scan completed.</strong>';

  }

}



function CU_comprehensive_check_DNS(URL)

{

  var list = document.getElementById('checkuserresults').getElementsByTagName('ul')[0];

  var name = list.getElementsByTagName('li')[CU_li_index].getElementsByTagName('a')[0].innerHTML;

  document.getElementById('contentSub').innerHTML = '<br><strong>Retrieving DNS XML page data for ' + name + '...</strong>';

  makeCURequestXML_DNS("GET",URL,null);

}



function CU_comprehensive_check_WHOIS()

{

  if (http_request.readyState != 4) return;

  xml_DNS_user_CU = http_request.responseText;

  var list = document.getElementById('checkuserresults').getElementsByTagName('ul')[0];

  var name = list.getElementsByTagName('li')[CU_li_index].getElementsByTagName('a')[0].innerHTML;

  var URL = 'http://whois.lanctrl.com/index.php?query=' + name;

  document.getElementById('contentSub').innerHTML = '<br><strong>Retrieving WHOIS XML page data for ' + name + '...</strong>';

  makeCURequestXML_WHOIS("GET",URL,null);

}



function CU_comprehensive_check_parse()

{

  if (http_request.readyState != 4) return;

  xml_WHOIS_CU = http_request.responseText;

  var list = document.getElementById('checkuserresults').getElementsByTagName('ul')[0];

  var name = list.getElementsByTagName('li')[CU_li_index].getElementsByTagName('a')[0].innerHTML;

  document.getElementById('contentSub').innerHTML = '<br><strong>Parsing WHOIS XML page data for ' + name + '...</strong>';

//WHOIS

//parse WHOIS results

  var OrgName='';

  var Address='';

  var City='';

  var StateProv='';

  var Country='';

  var CIDR='';

  var Location='';

// A data chunk may appear at the top

// Get user location

  if( xml_WHOIS_CU.indexOf('Location:') !=-1)

    {Location += xml_WHOIS_CU.split('Location:')[1].split('\n')[0].split('\r')[0].split(']')[0].split('</')[0 + ']';}

// Focus...

  if (xml_WHOIS_CU.indexOf('<TR><TD><PRE>') !=-1)

    {xml_WHOIS_CU = http_request.responseText.split('<TR><TD><PRE>')[1];}

  xml_WHOIS_CU = xml_WHOIS_CU.split('</PRE></TD></TR>')[0].split('<PRE><BR>')[0];

// Get name

  if (xml_WHOIS_CU.indexOf('OrgName:') !=-1)

    {OrgName += xml_WHOIS_CU.split('OrgName:')[1].split('\n')[0].split('\r')[0].split(']')[0 + ', ';}

  else if (xml_WHOIS_CU.indexOf('org-name:') !=-1)

    {OrgName += xml_WHOIS_CU.split('org-name:')[1].split('\n')[0].split('\r')[0].split(']')[0 + ', ';}

  else if (xml_WHOIS_CU.indexOf('organisation:') !=-1)

    {OrgName += xml_WHOIS_CU.split('organisation:')[1].split('\n')[0].split('\r')[0].split(']')[0 + ', ';}

// Get address

  if (xml_WHOIS_CU.indexOf('Address:') !=-1)

    {Address += xml_WHOIS_CU.split('Address:')[1].split(/[\n\r]\w+:/)[0].split(']')[0 + ', ';}

  var address_lines = xml_WHOIS_CU.split('address:');

  if (address_lines1])

    {Address += address_lines1].split(/[\n\r]\w+:/)[0].split(']')[0 + ', ';}

  if (address_lines2])

    {Address += address_lines2].split(/[\n\r]\w+:/)[0].split(']')[0 + ', ';}

  if (address_lines3])

    {Address += address_lines3].split(/[\n\r]\w+:/)[0].split(']')[0 + ', ';}

  if (address_lines4])

    {Address += address_lines4].split(/[\n\r]\w+:/)[0].split(']')[0 + ', ';}

  if (address_lines5])

    {Address += address_lines5].split(/[\n\r]\w+:/)[0].split(']')[0 + ', ';}

// Get city

  if ( City=='' && xml_WHOIS_CU.indexOf('city:') !=-1)

    {City += '<u>' + xml_WHOIS_CU.split('city:')[1].split('\n')[0].split('\r')[0].split(']')[0 + '</u>' + ', ';}

// Get state

  if (xml_WHOIS_CU.indexOf('StateProv:') !=-1)

    {StateProv += xml_WHOIS_CU.split('StateProv:')[1].split('\n')[0].split('\r')[0].split(']')[0 + ', ';}

  else if (xml_WHOIS_CU.indexOf('stateprov:') !=-1)

    {StateProv += xml_WHOIS_CU.split('stateprov:')[1].split('\n')[0].split('\r')[0].split(']')[0 + ', ';}

// Get country

  if ( Country=='' && xml_WHOIS_CU.indexOf('Country:') !=-1)

    {Country += xml_WHOIS_CU.split('Country:')[1].split('\n')[0].split('\r')[0].split(']')[0 + ', ';}

  else if ( Country=='' && xml_WHOIS_CU.indexOf('country:') !=-1)

    {Country += xml_WHOIS_CU.split('country:')[1].split('\n')[0].split('\r')[0].split(']')[0 + ', ';}

// Get CIDR

  if (xml_WHOIS_CU.indexOf('CIDR:') !=-1)

    {CIDR = xml_WHOIS_CU.split('CIDR:')[1].split('\n')[0].split('\r')[0].split(']')[0];}

  else if (xml_WHOIS_CU.indexOf('route:') !=-1)

    {CIDR = xml_WHOIS_CU.split('route:')[1].split('\n')[0].split('\r')[0].split(']')[0];}

  else if (xml_WHOIS_CU.indexOf('inetnum:') !=-1)

    {CIDR = xml_WHOIS_CU.split('inetnum:')[1].split('\n')[0].split('\r')[0].split(']')[0];}

// join them

  var output_IP_info = '<strong>' + OrgName + '</strong>' + Address + City + '<strong>' + StateProv + '</strong>' + '<i>' + Country + '</i>';

// add CIDR

   if (CIDR !='')

    output_IP_info += '<br/><span style="color:darkred;">CIDR:</span>' + CIDR;

// Parse DNS items

  document.getElementById('contentSub').innerHTML = '<br><strong>Parsing DNS XML page data for ' + name + '...</strong>';

  if (xml_DNS_user_CU.indexOf('<PRE>') != -1)

    {xml_DNS_user_CU = xml_DNS_user_CU.split('<PRE>')[1].split('</PRE>')[0];}

  var rev_DNS_info = '';

  if (xml_DNS_user_CU.indexOf('Reverse DNS:') !=-1)

     {rev_DNS_info = '<strong>' + xml_DNS_user_CU.split('Reverse DNS:')[1].split('\n')[0].split('\r')[0 + '</strong>';}

  output_IP_info += ' <span style="color:darkred;">RDNS</span>:' + rev_DNS_info;

  output_IP_info = output_IP_info.replace(/Internet Assigned Numbers Authority/,'IANA');

// Add location

  if (Location !='')

    output_IP_info += '<br/><span style="color:darkred;">Location:</span>' + Location;

  link = '<a href="http://whois.lanctrl.com/index.php?query=' + name + '">(Full)</a> ';

  list.getElementsByTagName('li')[CU_li_index].innerHTML += '<div style="background-color: #f9f9f9; border: 1px solid #8888aa; padding: 3px;">' + link + output_IP_info + '</div>';

//

CU_li_index += 1;

CU_comprehensive_check();

}

//////////////



//</nowiki></pre>

Videos

Youtube | Vimeo | Bing

Websites

Google | Yahoo | Bing

Encyclopedia

Google | Yahoo | Bing

Facebook