User:Waggers/aaiv.js

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by Waggers (talk | contribs) at 12:56, 7 May 2008. The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

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.
if (document.URL == 'http://en.wikipedia.org/wiki/User:Waggers/aaiv') {
  addOnloadHook(func_aaiv);


}

function func_aaiv (){
  var op = "<p>The tool is active; the current vandal alerts should appear below.  If the page has finished loading and there are no reports listed, then there are currently no reports at AIV!</p>";


  //get html code of AIV page
  a=sajax_init_object();
  a.open("GET", wgServer + "/wiki/Wikipedia:Administrator_intervention_against_vandalism", true);
  a.onreadystatechange = function()
  {
      if(a.readyState != 4) return;
 //     alert("[" + a.status + ":" + a.statusText + "]\n" + a.responseText);
  aivcode = a.responseText;


  var botpointer = aivcode.indexOf('<span class="mw-headline">Bot-reported</span>');
  var userpointer = aivcode.indexOf('<span class="mw-headline">User-reported</span>');

//bot reported
  var listpointer = aivcode.indexOf('<ul>', botpointer);
  if (userpointer > listpointer) {

//start table
  op = op + "<h2>Bot reported</h2>";
  op = op + "<table border=2>";
  op = op + "<tr>";
  op = op + "<td>Alleged vandal</td>";
  op = op + "<td>Reported by</td>";
  op = op + "<td>Last edit</td>";
  op = op + "<td>Last talk page edit</td>";
  op = op + "<td>Time reported</td>";
  op = op + "</tr>";

while (listpointer < userpointer && listpointer > 0) {
  listpointer = aivcode.indexOf('<span class=',listpointer+4);
  var vandal = aaivgetvandal (aivcode, listpointer);
  op = op + "<tr><td>" + vandal + "</td></tr>";
} // end of while loop

  //end of table
  op = op + "</table>"; 
} else {
  op = op + "<p>There are currently no bot-reported vandals.</p>";
} // end if

  //user reported
  listpointer = aivcode.indexOf('<ul>', userpointer);
  botpointer = aivcode.indexOf('<div class="printfooter">',userpointer);
  if (listpointer < botpointer) {

//start table
  op = op + "<h2>User reported</h2>";
  op = op + "<table border=2>";
  op = op + "<tr>";
  op = op + "<td>Alleged vandal</td>";
  op = op + "<td>Reported by</td>";
  op = op + "<td>Last edit</td>";
  op = op + "<td>Last talk page edit</td>";
  op = op + "<td>Time reported</td>";
  op = op + "</tr>";

while (listpointer < botpointer && listpointer > 0) {
  listpointer = aivcode.indexOf('<span class=',listpointer+4);
  var vandal = aaivgetvandal (aivcode, listpointer);
  op = op + "<tr><td>" + vandal + "</td></tr>";
} // end of while loop
  //end of table
  op = op + "</table>"; 
} else {
  op = op + "<p>There are currently no user-reported vandals.</p>";
} //  end if


  //test output
  //op = op + a.responseText;
  //op = op + aivcode;
  document.getElementById('bodyContent').innerHTML = document.getElementById('bodyContent').innerHTML + op;



  };
  a.send(null);


 
}

function aaivgetvandal (aivcode, listpointer)
{
  var p = aivcode.indexOf("title=User:", listpointer);
  var s = aivcode.substr(p);
  var q = s.indexOf("&amp;action");
  var v = s.substr(11,q-11);
  return v;
}