User:Chcknwnm/monobook.js
Appearance
Code that you insert on this page could contain malicious content capable of compromising your account. If you import a script from another page with "importScript", "mw.loader.load", "iusc", or "lusc", take note that this causes you to dynamically load a remote script, which could be changed by others. Editors are responsible for all edits and actions they perform, including by scripts. User scripts are not centrally supported and may malfunction or become inoperable due to software changes. A guide to help you find broken scripts is available. If you are unsure whether code you are adding to this page is safe, you can ask at the appropriate village pump. This code will be executed when previewing this page. |
![]() | The accompanying .css page for this skin is at User:Chcknwnm/monobook.css. |
//Interiot's javascript edit counter
if (document.title.indexOf('User:Interiot/Tool2/code.js') != -1) {
mw.loader.load('https://en.wikipedia.org/w/index.php?title=User:Interiot/Tool2/code.js&action=raw&ctype=text/javascript'); }
// -----------------------------------------------------------------------------
// RC Patrol package for non-admins
// Includes: 2 rollbacks and lupin's filter
// -----------------------------------------------------------------------------
// -----------------------------------------------------------------------------
// God-like Monobook skin
// (c) 2005 Sam Hocevar <sam@zoy.org>
// $Id: godmode-light.js 1029 2006-01-09 11:05:19Z sam $
// -----------------------------------------------------------------------------
// -----------------------------------------------------------------------------
// Language support, taken from phase3/languages/*
// -----------------------------------------------------------------------------
var nrollbacklink = '<span style="color:black;">[</span>rollback<span style="color:black;">]<span>';
var cantrollback = 'Cannot revert edit; last contributor is only author of this page.';
var alreadyrolled = 'Cannot rollback last edit of [[$1]] by [[User:$2|$2]] ([[User talk:$2|Talk]]); someone else has edited or rolled back the page already. Last edit was by [[User:$3|$3]] ([[User talk:$3|Talk]]). ';
var nreverted = 'Reverted edits by [[Special:Contributions/$2|$2]] to last version by $1';
// -----------------------------------------------------------------------------
// Our nice Revert functions
// -----------------------------------------------------------------------------
var gml_vandal, gml_editor, gml_url;
function Revertnorm() {
var l, token = '', normrevert = false;
// Look for '&fakeaction=nrollback' in URL
gml_url = location.pathname;
l = location.search.substring(1).split('&');
for (i = 0; i < l.length; i++) {
var n = l[i].indexOf('=');
var name = l[i].substring(0, n);
if (name == 'fakeaction') {
if (l[i].substring(n + 1) == 'normalrevert')
normrevert = true;
} else if (name == 'user') {
gml_vandal = unescape(l[i].substring(n + 1));
} else if (name == 'token') {
token = unescape(l[i].substring(n + 1));
} else if (name == 'title') {
gml_url += '?' + l[i];
}
}
if (!normrevert)
return;
document.getElementById('bodyContent').innerHTML = 'Please wait, reverting edits by ' + gml_vandal + '...';
// Avoid XSS kiddies by using a special token
if (token == '' || token != hex_md5(gml_url + gml_vandal + document.cookie)) {
document.getElementById('bodyContent').innerHTML += '<br />Bad authentication token!';
return;
}
gml_xmlhttp = HTTPClient();
if (!gml_xmlhttp)
return;
history_url = gml_url + '&action=history&limit=50';
document.getElementById('bodyContent').innerHTML += '<br />Getting article history (' + history_url + ')...';
gml_xmlhttp.open("GET", history_url, true);
gml_xmlhttp.onreadystatechange = RevertStepTwonorm;
gml_xmlhttp.send(null);
}
function RevertStepTwonorm() {
if (gml_xmlhttp.readyState != 4)
return;
var l;
var oldid;
// Get the vandal and new editor names
gml_vandal = gml_vandal.replace(/_/g, ' ');
gml_editor = '';
// Hack for a MediaWiki bug [[Category:Wikipedians who use RC script ]]
xml = gml_xmlhttp.responseText.replace(/<body.*"ns-4">/, '<body class="ns-4">');
doc = gml_XMLParse(xml);
if (!doc || !doc.getElementById('pagehistory')) {
document.getElementById('bodyContent').innerHTML += '<br />Failed to parse XML data returned by the server.';
document.getElementById('bodyContent').innerHTML += '<br /><b>Hint: try to disable both "Enable section editing by right-clicking on section titles (JavaScript)" and "Edit pages on double click (JavaScript)" in your editing preferences until a proper fix is found</b>.';
document.getElementById('bodyContent').innerHTML += '<br />Dump of the unparseable page : <br />' + xml.replace(/&/g, '&').replace(/</g, '<').replace(/>/g, '>');
return;
}
l = doc.getElementById('pagehistory').getElementsByTagName('li');
//l = doc.selectSingleNode('//*[@id="pagehistory"]').getElementsByTagName('li');
for (i = 0; i < l.length; i++) {
var name = l[i].getElementsByTagName('span')[0].getElementsByTagName('a')[0].innerHTML.replace(/_/g, ' ');
if (i == 0 && name != gml_vandal) {
document.getElementById('bodyContent').innerHTML += '<br />Error: Last editor is ' + name + ', not ' + gml_vandal + '!';
return;
} else if (i > 0 && name != gml_vandal) {
oldid = l[i].getElementsByTagName('input')[0].value;
gml_editor = name;
break;
}
}
if (gml_editor == '') {
document.getElementById('bodyContent').innerHTML += '<br />Error: ' + gml_vandal + ' is the only editor!';
return;
}
gml_xmlhttp = HTTPClient();
if (!gml_xmlhttp)
return;
document.getElementById('bodyContent').innerHTML += '<br />Getting article edit form (GET' + gml_url + '&action=edit&oldid=' + oldid + ')...';
gml_xmlhttp.open('GET', gml_url + '&action=edit&oldid=' + oldid, true);
gml_xmlhttp.onreadystatechange = RevertStepThreenorm;
gml_xmlhttp.send(null);
}
function RevertStepThreenorm() {
if (gml_xmlhttp.readyState != 4)
return
var form, newform, l;
// Insert the downloaded form in our current page, using
// only hidden form inputs.[[Category:Wikipedians who use RC script ]]
doc = gml_XMLParse(gml_xmlhttp.responseText);
form = doc.getElementById('editform');
newform = document.createElement('form');
l = form.getElementsByTagName('textarea');
for (i = l.length; i--; ) {
var t = document.createElement('input');
t.type = 'hidden';
t.name = l[i].name;
t.value = l[i].value;
newform.appendChild(t);
}
l = form.getElementsByTagName('input');
for (i = l.length; i--; ) {
if (l[i].name == 'wpSummary') {
l[i].value = nreverted.replace(/\$1/g, gml_editor).replace(/\$2/g, gml_vandal);
} else if (l[i].name == 'wpMinoredit') {
l[i].value = '1';
} else if (l[i].name == 'wpWatchthis') {
if (!l[i].checked)
continue; // Don’t touch the "watch" status
l[i].value = "on";
} else if (l[i].name == 'wpPreview') {
continue;
} else if (l[i].name == 'wpDiff') {
continue;
}
l[i].type = 'hidden';
newform.appendChild(l[i]);
}
newform.name = form.name;
newform.method = form.method;
newform.id = form.id;
newform.action = form.action;
document.getElementById('bodyContent').innerHTML += '<br />Submitting form...';
document.getElementById('bodyContent').appendChild(newform);
// Submit the form
newform.submit();
window.open('http://en.wikipedia.org/w/index.php?title=User talk:' + gml_vandal + '&action=edit',
'targetname',
'location=no,toolbar=no,status=no,directories=no,scrollbars=yes');
}
// -----------------------------------------------------------------------------
// Add revert buttons to the page
// -----------------------------------------------------------------------------
function AddRevertButtonsnorm() {
var l, article = '', vandal;
// Add 'revert' links to a diff page
l = document.getElementById('bodyContent').getElementsByTagName('td');
for (i = 0; i < l.length; i++) {
if (l[i].className == 'diff-otitle') {
article = l[i].getElementsByTagName('a')[0].href.split('&')[0].replace(/[^\/]*\/\/[^\/]*/, '');
} else if (l[i].className == 'diff-ntitle') {
var toplink = l[i].getElementsByTagName('a')[0].href;
vandalip = l[i].getElementsByTagName('a')[1].href.split(':')[2].split('=')[1];
vandal = l[i].getElementsByTagName('a')[1].href.split(':')[2].split('&')[0];
var t = l[i].innerHTML
n = t.indexOf('</a>) <br') + t.indexOf('</A>) <BR') + 1; // XXX: WOW HACK!!!!
if (article != '' && toplink.indexOf('oldid=') == -1) {
if (vandal == 'Contributions')
{
l[i].innerHTML = t.substring(0, n + 5) + ' <strong><a href="' + article + '&fakeaction=normalrevert&user=' + vandalip + '&token=' + hex_md5(article + vandalip + document.cookie) + '">' + nrollbacklink + '</a></str ' + t.substring(n + 5, t.length);
}
else
{
l[i].innerHTML = t.substring(0, n + 5) + ' <strong><a href="' + article + '&fakeaction=normalrevert&user=' + vandal + '&token=' + hex_md5(article + vandal + document.cookie) + '">' + nrollbacklink + '</a></str ' + t.substring(n + 5, t.length);
}
}
}
}
}
// -----------------------------------------------------------------------------
// Language support, taken from phase3/languages/*
// -----------------------------------------------------------------------------
var rollbacklink = '<span style="color:black;">[</span><span style="color:red;">revert as vandalism</span><span style="color:black;">]<br></span>';
var cantrollback = 'Cannot revert edit; last contributor is only author of this page.';
var alreadyrolled = 'Cannot rollback last edit of [[$1]] by [[User:$2|$2]] ([[User talk:$2|Talk]]); someone else has edited or rolled back the page already. Last edit was by [[User:$3|$3]] ([[User talk:$3|Talk]]). ';
var revertpage = 'Reverted [[Wikipedia:Vandalism|vandalism]] by [[Special:Contributions/$2|$2]] to last version by $1. Please do not compromise the integrity of pages.';
// -----------------------------------------------------------------------------
// XMLHttpRequest support
// -----------------------------------------------------------------------------
if (document.implementation.createDocument) {
var gml_xmlparser = new DOMParser();
}
function gml_XMLParse(string) {
if (document.implementation.createDocument) {
return gml_xmlparser.parseFromString(string, "text/xml");
} else if (window.ActiveXObject) {
var gml_xmldoc = new ActiveXObject("Microsoft.XMLDOM");
gml_xmldoc.async = "false";
ret = gml_xmldoc.loadXML(string);
if (!ret)
return null;
return gml_xmldoc.documentElement;
}
return null;
}
var gml_xmlhttp;
function HTTPClient() {
var gml_http;
if(window.XMLHttpRequest) {
gml_http = new XMLHttpRequest();
} else if (window.ActiveXObject) {
try {
gml_http = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
gml_http = new ActiveXObject("Microsoft.XMLHTTP");
} catch (E) {
gml_http = false;
}
}
}
return gml_http;
}
// -----------------------------------------------------------------------------
// MD5 hash calculator
// -----------------------------------------------------------------------------
// Version 2.1 Copyright (C) Paul Johnston 1999 - 2002.
// Other contributors: Greg Holt, Andrew Kepert, Ydnar, Lostinet
// Distributed under the BSD License
// See http://pajhome.org.uk/crypt/md5 for more info.
// -----------------------------------------------------------------------------
var hexcase = 0;
var b64pad = "";
var chrsz = 8;
function hex_md5(s){ return binl2hex(core_md5(str2binl(s), s.length * chrsz));}
function core_md5(x, len)
{
x[len >> 5] |= 0x80 << ((len) % 32);
x[(((len + 64) >>> 9) << 4) + 14] = len;
var a = 1732584193;
var b = -271733879;
var c = -1732584194;
var d = 271733878;
for(var i = 0; i < x.length; i += 16)
{
var olda = a;
var oldb = b;
var oldc = c;
var oldd = d;
a = md5_ff(a, b, c, d, x[i+ 0], 7 , -680876936); d = md5_ff(d, a, b, c, x[i+ 1], 12, -389564586); c = md5_ff(c, d, a, b, x[i+ 2], 17, 606105819); b = md5_ff(b, c, d, a, x[i+ 3], 22, -1044525330); a = md5_ff(a, b, c, d, x[i+ 4], 7 , -176418897); d = md5_ff(d, a, b, c, x[i+ 5], 12, 1200080426); c = md5_ff(c, d, a, b, x[i+ 6], 17, -1473231341); b = md5_ff(b, c, d, a, x[i+ 7], 22, -45705983); a = md5_ff(a, b, c, d, x[i+ 8], 7 , 1770035416); d = md5_ff(d, a, b, c, x[i+ 9], 12, -1958414417); c = md5_ff(c, d, a, b, x[i+10], 17, -42063); b = md5_ff(b, c, d, a, x[i+11], 22, -1990404162); a = md5_ff(a, b, c, d, x[i+12], 7 , 1804603682); d = md5_ff(d, a, b, c, x[i+13], 12, -40341101); c = md5_ff(c, d, a, b, x[i+14], 17, -1502002290); b = md5_ff(b, c, d, a, x[i+15], 22, 1236535329);
a = md5_gg(a, b, c, d, x[i+ 1], 5 , -165796510); d = md5_gg(d, a, b, c, x[i+ 6], 9 , -1069501632); c = md5_gg(c, d, a, b, x[i+11], 14, 643717713); b = md5_gg(b, c, d, a, x[i+ 0], 20, -373897302); a = md5_gg(a, b, c, d, x[i+ 5], 5 , -701558691); d = md5_gg(d, a, b, c, x[i+10], 9 , 38016083); c = md5_gg(c, d, a, b, x[i+15], 14, -660478335); b = md5_gg(b, c, d, a, x[i+ 4], 20, -405537848); a = md5_gg(a, b, c, d, x[i+ 9], 5 , 568446438); d = md5_gg(d, a, b, c, x[i+14], 9 , -1019803690); c = md5_gg(c, d, a, b, x[i+ 3], 14, -187363961); b = md5_gg(b, c, d, a, x[i+ 8], 20, 1163531501); a = md5_gg(a, b, c, d, x[i+13], 5 , -1444681467); d = md5_gg(d, a, b, c, x[i+ 2], 9 , -51403784); c = md5_gg(c, d, a, b, x[i+ 7], 14, 1735328473); b = md5_gg(b, c, d, a, x[i+12], 20, -1926607734);
a = md5_hh(a, b, c, d, x[i+ 5], 4 , -378558); d = md5_hh(d, a, b, c, x[i+ 8], 11, -2022574463); c = md5_hh(c, d, a, b, x[i+11], 16, 1839030562); b = md5_hh(b, c, d, a, x[i+14], 23, -35309556); a = md5_hh(a, b, c, d, x[i+ 1], 4 , -1530992060); d = md5_hh(d, a, b, c, x[i+ 4], 11, 1272893353); c = md5_hh(c, d, a, b, x[i+ 7], 16, -155497632); b = md5_hh(b, c, d, a, x[i+10], 23, -1094730640); a = md5_hh(a, b, c, d, x[i+13], 4 , 681279174); d = md5_hh(d, a, b, c, x[i+ 0], 11, -358537222); c = md5_hh(c, d, a, b, x[i+ 3], 16, -722521979); b = md5_hh(b, c, d, a, x[i+ 6], 23, 76029189); a = md5_hh(a, b, c, d, x[i+ 9], 4 , -640364487); d = md5_hh(d, a, b, c, x[i+12], 11, -421815835); c = md5_hh(c, d, a, b, x[i+15], 16, 530742520); b = md5_hh(b, c, d, a, x[i+ 2], 23, -995338651);
a = md5_ii(a, b, c, d, x[i+ 0], 6 , -198630844); d = md5_ii(d, a, b, c, x[i+ 7], 10, 1126891415); c = md5_ii(c, d, a, b, x[i+14], 15, -1416354905); b = md5_ii(b, c, d, a, x[i+ 5], 21, -57434055); a = md5_ii(a, b, c, d, x[i+12], 6 , 1700485571); d = md5_ii(d, a, b, c, x[i+ 3], 10, -1894986606); c = md5_ii(c, d, a, b, x[i+10], 15, -1051523); b = md5_ii(b, c, d, a, x[i+ 1], 21, -2054922799); a = md5_ii(a, b, c, d, x[i+ 8], 6 , 1873313359); d = md5_ii(d, a, b, c, x[i+15], 10, -30611744); c = md5_ii(c, d, a, b, x[i+ 6], 15, -1560198380); b = md5_ii(b, c, d, a, x[i+13], 21, 1309151649); a = md5_ii(a, b, c, d, x[i+ 4], 6 , -145523070); d = md5_ii(d, a, b, c, x[i+11], 10, -1120210379); c = md5_ii(c, d, a, b, x[i+ 2], 15, 718787259); b = md5_ii(b, c, d, a, x[i+ 9], 21, -343485551);
a = safe_add(a, olda);
b = safe_add(b, oldb);
c = safe_add(c, oldc);
d = safe_add(d, oldd);
}
return Array(a, b, c, d);
}
function md5_cmn(q, a, b, x, s, t) { return safe_add(bit_rol(safe_add(safe_add(a, q), safe_add(x, t)), s),b); }
function md5_ff(a, b, c, d, x, s, t) { return md5_cmn((b & c) | ((~b) & d), a, b, x, s, t); }
function md5_gg(a, b, c, d, x, s, t) { return md5_cmn((b & d) | (c & (~d)), a, b, x, s, t); }
function md5_hh(a, b, c, d, x, s, t) { return md5_cmn(b ^ c ^ d, a, b, x, s, t); }
function md5_ii(a, b, c, d, x, s, t) { return md5_cmn(c ^ (b | (~d)), a, b, x, s, t); }
function safe_add(x, y)
{
var lsw = (x & 0xFFFF) + (y & 0xFFFF);
var msw = (x >> 16) + (y >> 16) + (lsw >> 16);
return (msw << 16) | (lsw & 0xFFFF);
}
function bit_rol(num, cnt)
{
return (num << cnt) | (num >>> (32 - cnt));
}
function str2binl(str)
{
var bin = Array();
var mask = (1 << chrsz) - 1;
for(var i = 0; i < str.length * chrsz; i += chrsz)
bin[i>>5] |= (str.charCodeAt(i / chrsz) & mask) << (i%32);
return bin;
}
function binl2hex(binarray)
{
var hex_tab = hexcase ? "0123456789ABCDEF" : "0123456789abcdef";
var str = "";
for(var i = 0; i < binarray.length * 4; i++)
{
str += hex_tab.charAt((binarray[i>>2] >> ((i%4)*8+4)) & 0xF) +
hex_tab.charAt((binarray[i>>2] >> ((i%4)*8 )) & 0xF);
}
return str;
}
// -----------------------------------------------------------------------------
// Add revert buttons to the page
// -----------------------------------------------------------------------------
function AddRevertButtons() {
var l, article = '', vandal;
// Add 'revert' links to a diff page[[Category:Wikipedians who use RC script ]]
l = document.getElementById('bodyContent').getElementsByTagName('td');
for (i = 0; i < l.length; i++) {
if (l[i].className == 'diff-otitle') {
article = l[i].getElementsByTagName('a')[0].href.split('&')[0].replace(/[^\/]*\/\/[^\/]*/, '');
} else if (l[i].className == 'diff-ntitle') {
var toplink = l[i].getElementsByTagName('a')[0].href;
vandalip = l[i].getElementsByTagName('a')[1].href.split(':')[2].split('=')[1];
vandal = l[i].getElementsByTagName('a')[1].href.split(':')[2].split('&')[0];
var t = l[i].innerHTML
n = t.indexOf('</a>) <br') + t.indexOf('</A>) <BR') + 1; // XXX: WOW HACK!!!!
if (article != '' && toplink.indexOf('oldid=') == -1) {
if (vandal == 'Contributions')
{
l[i].innerHTML = t.substring(0, n + 5) + ' <strong><a href="' + article + '&fakeaction=rollback&vandal=' + vandalip + '&token=' + hex_md5(article + vandalip + document.cookie) + '">' + rollbacklink + '</a></str ' + t.substring(n + 5, t.length);
}
else
{
l[i].innerHTML = t.substring(0, n + 5) + ' <strong><a href="' + article + '&fakeaction=rollback&vandal=' + vandal + '&token=' + hex_md5(article + vandal + document.cookie) + '">' + rollbacklink + '</a></str ' + t.substring(n + 5, t.length);
}
}
}
}
}
// -----------------------------------------------------------------------------
// Our nice Revert functions
// -----------------------------------------------------------------------------
function PerformRevert() {
var l, token = '', revert = false;
// Look for '&fakeaction=rollback' in URL
gml_url = location.pathname;
l = location.search.substring(1).split('&');
for (i = 0; i < l.length; i++) {
var n = l[i].indexOf('=');
var name = l[i].substring(0, n);
if (name == 'fakeaction') {
if (l[i].substring(n + 1) == 'rollback')
revert = true;
} else if (name == 'vandal') {
gml_vandal = unescape(l[i].substring(n + 1));
} else if (name == 'token') {
token = unescape(l[i].substring(n + 1));
} else if (name == 'title') {
gml_url += '?' + l[i];
}
}
if (!revert)
return;
document.getElementById('bodyContent').innerHTML = '<strong>Please wait, reverting edits by ' + gml_vandal + '...</strong>';
// Avoid XSS kiddies by using a special token
if (token == '' || token != hex_md5(gml_url + gml_vandal + document.cookie)) {
document.getElementById('bodyContent').innerHTML += '<br />Error<span style="color:red;">Bad authentication token</font>';
return;
}
gml_xmlhttp = HTTPClient();
if (!gml_xmlhttp)
return;
history_url = gml_url + '&action=history&limit=50';
document.getElementById('bodyContent').innerHTML += '<br /><span style="color:blue;">Getting article history (' + history_url + ')...</span>';
gml_xmlhttp.open("GET", history_url, true);
gml_xmlhttp.onreadystatechange = RevertStepTwo;
gml_xmlhttp.send(null);
}
function RevertStepTwo() {
if (gml_xmlhttp.readyState != 4)
return;
var l;
var oldid;
// Get the vandal and new editor names [[Category:Wikipedians who use RC script ]]
gml_vandal = gml_vandal.replace(/_/g, ' ');
gml_editor = '';
// Hack for a MediaWiki bug
xml = gml_xmlhttp.responseText.replace(/<body.*"ns-4">/, '<body class="ns-4">');
doc = gml_XMLParse(xml);
if (!doc || !doc.getElementById('pagehistory')) {
document.getElementById('bodyContent').innerHTML += '<br />Failed to parse XML data returned by the server.';
document.getElementById('bodyContent').innerHTML += '<br /><b>Hint: try to disable both "Enable section editing by right-clicking on section titles (JavaScript)" and "Edit pages on double click (JavaScript)" in your editing preferences until a proper fix is found</b>.';
document.getElementById('bodyContent').innerHTML += '<br />Dump of the unparseable page : <br />' + xml.replace(/&/g, '&').replace(/</g, '<').replace(/>/g, '>');
return;
}
l = doc.getElementById('pagehistory').getElementsByTagName('li');
//l = doc.selectSingleNode('//*[@id="pagehistory"]').getElementsByTagName('li');
for (i = 0; i < l.length; i++) {
var name = l[i].getElementsByTagName('span')[0].getElementsByTagName('a')[0].innerHTML.replace(/_/g, ' ');
if (i == 0 && name != gml_vandal) {
document.getElementById('bodyContent').innerHTML += '<br />Error: Last editor is ' + name + ', not ' + gml_vandal + '. The vandal may have already been reverted.';
return;
} else if (i > 0 && name != gml_vandal) {
oldid = l[i].getElementsByTagName('input')[0].value;
gml_editor = name;
break;
}
}
if (gml_editor == '') {
document.getElementById('bodyContent').innerHTML += '<br />Error: ' + gml_vandal + ' is the only editor!';
return;
}
gml_xmlhttp = HTTPClient();
if (!gml_xmlhttp)
return;
document.getElementById('bodyContent').innerHTML += '<br /><span style="color:blue;">Getting article edit form (GET' + gml_url + '&action=edit&oldid=' + oldid + ')...</span>';
gml_xmlhttp.open('GET', gml_url + '&action=edit&oldid=' + oldid, true);
gml_xmlhttp.onreadystatechange = RevertStepThree;
gml_xmlhttp.send(null);
}
function RevertStepThree() {
if (gml_xmlhttp.readyState != 4)
return
var form, newform, l;
// Insert the downloaded form in our current page, using
// only hidden form inputs.
doc = gml_XMLParse(gml_xmlhttp.responseText);
form = doc.getElementById('editform');
newform = document.createElement('form');
l = form.getElementsByTagName('textarea');
for (i = l.length; i--; ) {
var t = document.createElement('input');
t.type = 'hidden';
t.name = l[i].name;
t.value = l[i].value;
newform.appendChild(t);
}
l = form.getElementsByTagName('input');
for (i = l.length; i--; ) {
if (l[i].name == 'wpSummary') {
l[i].value = revertpage.replace(/\$1/g, gml_editor).replace(/\$2/g, gml_vandal);
} else if (l[i].name == 'wpMinoredit') {
l[i].value = '1';
} else if (l[i].name == 'wpWatchthis') {
if (!l[i].checked)
continue; // Don’t touch the "watch" status
l[i].value = "on";
} else if (l[i].name == 'wpPreview') {
continue;
} else if (l[i].name == 'wpDiff') {
continue;
}
l[i].type = 'hidden';
newform.appendChild(l[i]);
}
newform.name = form.name;
newform.method = form.method;
newform.id = form.id;
newform.action = form.action;
document.getElementById('bodyContent').innerHTML += '<br /><strong>Submitting form...</strong>';
document.getElementById('bodyContent').appendChild(newform);
// Submit the form [[Category:Wikipedians who use RC script ]]
newform.submit();
window.open('http://en.wikipedia.org/w/index.php?title=User talk:' + gml_vandal + '&action=edit',
'targetname',
'location=no,toolbar=no,status=no,directories=no,scrollbars=yes');
}
// -----------------------------------------------------------------------------
// Modify the page once it is loaded
// -----------------------------------------------------------------------------
if (window.addEventListener) {
window.addEventListener("load", Revertnorm, false);
window.addEventListener("load", AddRevertButtonsnorm, false);
window.addEventListener("load", PerformRevert, false);
window.addEventListener("load", AddRevertButtons, false);
} else if (window.attachEvent) {
window.attachEvent("onload", Revertnorm);
window.attachEvent("onload", AddRevertButtonsnorm);
window.attachEvent("onload", PerformRevert);
window.attachEvent("onload", AddRevertButtons);
}
// [[User:Lupin/recent2.js]] - please include this line
mw.loader.load(
'https://en.wikipedia.org/w/index.php?title=User:Lupin/recent2.js'
+ '&action=raw&ctype=text/javascript&dontcountme=s');
//<pre><nowiki>
//Helper tools
if (!addTab)
{
mw.loader.load(
'https://en.wikipedia.org/w/index.php?title=User:Voice_of_All/Addtabs/monobook.js'
+ '&action=raw&ctype=text/javascript&dontcountme=s');
}
//END
//admin list
document.write('<script type="text/javascript" src="'
+ 'http://en.wikipedia.org/w/index.php?title=User:Voice_of_All/adminlist.js'
+ '&action=raw&ctype=text/javascript&dontcountme=s"></script>');
//END
//bot list
document.write('<script type="text/javascript" src="'
+ 'http://en.wikipedia.org/w/index.php?title=User:Voice of All/botlist.js'
+ '&action=raw&ctype=text/javascript&dontcountme=s"></script>');
//END
//History stats
$(addhiststats)
function addhiststats()
{
var target = document.title.split(" - ")[0];
var c1 = document.getElementById('column-one');
var tabs = c1.getElementsByTagName('div')[0].getElementsByTagName('ul')[0];
if (location.href.indexOf('&action=history') != -1 && document.title.indexOf('User:') == -1 && document.title.indexOf('User talk:') == -1)
{
addTab("javascript:histstats()", "Stats", "ca-stats", "History statistics", "");
addTab("http://tools.wikimedia.de/~tim/counter/?page=" + target, "Editors", "ca-editors", "Editor statistics", "");
}
if (location.href.indexOf('title=Special:Undelete') != -1 || location.href.indexOf('/Special:Undelete') != -1)
{
addTab("javascript:histstats()", "Stats", "ca-stats", "History statistics", "");
}
}
//END
function masterview(number)
{
var undefined;
var c = document.getElementById('contentSub');
var a = c.getElementsByTagName('a');
vandal = a[0].href;
if (vandal.split("User:")[1] != undefined)
{
vandalb = vandal.split("User:")[1];
if (vandalb.split("&action=edi")[1] != undefined)
{
vandalc = vandalb.split("&action=edit")[0];
location.href = 'http://en.wikipedia.org/w/index.php?title=Special:Contributions&target=' + vandalc + '&offset=0&limit=' + number;
}
else
{
location.href = 'http://en.wikipedia.org/w/index.php?title=Special:Contributions&target=' + vandalb + '&offset=0&limit=' + number;
}
}
else if (vandal.split("User_talk:")[1] != undefined)
{
vandalb = vandal.split("User_talk:")[1];
if (vandalb.split("&action=edi")[0] != undefined)
{
vandalc = vandalb.split("&action=edit")[0];
location.href = 'http://en.wikipedia.org/w/index.php?title=Special:Contributions&target=' + vandalc + '&offset=0&limit=' + number;
}
else
{
location.href = 'http://en.wikipedia.org/w/index.php?title=Special:Contributions&target=' + vandalb + '&offset=0&limit=' + number;
}
}
}
//END
//edit summary usage %
$(addsumperc)
function addsumperc()
{
var c1 = document.getElementById('column-one');
var tabs = c1.getElementsByTagName('div')[0].getElementsByTagName('ul')[0];
if (location.href.indexOf(':Contributions') != -1)
{
addTab("javascript:sumperentcuse()", "edit statistics", "ca-sumuse", "User's edit statistics", "");
addTab("javascript:masterview(1000)", "view last 1000", "ca-stats1", "view last 1000 edits", "");
addTab("javascript:masterview(2000)", "view last 2000", "ca-stats2", "view last 2000 edits", "");
addTab("javascript:masterview(5000)", "view last 5000", "ca-stats5", "view last 5000 edits", "");
if (!window.ActiveXObject)
{addTab("javascript:getxmllist()", "User rights", "ca-stats6", "Shows user groups", "");}
}
}
//END
//***********************
//standard XML Support
function HTTPClient()
{
var gml_http;
if(window.XMLHttpRequest) {
gml_http = new XMLHttpRequest();
} else if (window.ActiveXObject) {
try {
gml_http = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
gml_http = new ActiveXObject("Microsoft.XMLHTTP");
} catch (E) {
gml_http = false;
}
}
}
return gml_http;
}
function gml_XMLParse(string) {
if (document.implementation.createDocument) {
return gml_xmlparser.parseFromString(string, "text/xml");
} else if (window.ActiveXObject) {
var gml_xmldoc = new ActiveXObject("Microsoft.XMLDOM");
gml_xmldoc.async = "false";
ret = gml_xmldoc.loadXML(string);
if (!ret)
return null;
return gml_xmldoc.documentElement;
}
return null;
}
//END
//**********
function getxmllist()
{
alert('Searching for current usergroup information.' + '\n' + 'Please wait...');
gml_xmlhttp = HTTPClient();
if (!gml_xmlhttp)
return;
var pageurl = '/w/index.php?title=Special:Listusers&group=sysop&limit=5000';
gml_xmlhttp.open("GET", pageurl, true);
gml_xmlhttp.onreadystatechange = alertget;
gml_xmlhttp.send(null);
}
function getusergroup()
{
gml_xmlhttp = HTTPClient();
if (!gml_xmlhttp)
return;
var pageurl = '/w/index.php?title=Special:Listusers&group=sysop&limit=5000';
gml_xmlhttp.open("GET", pageurl, true);
gml_xmlhttp.onreadystatechange = userget;
gml_xmlhttp.send(null);
}
function alertget()
{
if (gml_xmlhttp.readyState != 4)
return;
xml = gml_xmlhttp.responseText.replace(/<body.*"ns-4">/, '<body class="ns-4">');
//alert(xml);
doc = gml_XMLParse(xml);
var l = doc.getElementsByTagName('li');
var user_name = document.getElementById('bodyContent').getElementsByTagName('a')[0].innerHTML;
if (user_name.indexOf('FAQ') != -1)
{user_name = document.getElementById('bodyContent').getElementsByTagName('a')[1].innerHTML;}
alert("Usergroup list obtained. Seaching for " + user_name + ".");
//alert(l[0].getElementsByTagName('a')[0].innerHTML);
var Jimbo = 'no';
var Larry = 'no';
if (user_name == "Jimbo Wales"){Jimbo = 'yes';}
if (user_name == "Larry Sanger"){Larry = 'yes';}
var Sysop = '';
var BCrat = '';
var CheckUser = '';
var Steward = '';
var Developer = '';
var Oversight = '';
for (i = 0; i < l.length; i++)
{
var name = l[i].getElementsByTagName('a')[0].innerHTML;
if (name == user_name)
{
if (l[i].innerHTML.indexOf('Bureaucrat<') != -1){BCrat = 'Bureaucrat' + '\n';}
if (l[i].innerHTML.indexOf(', checkuser') != -1){CheckUser = 'CheckUser' + '\n';}
if (l[i].innerHTML.indexOf(', Steward') != -1){Steward = 'Steward' + '\n';}
if (l[i].innerHTML.indexOf('Sysop<') != -1){Sysop = 'Sysop' + '\n';}
if (l[i].innerHTML.indexOf('developer,') != -1){Developer = 'Developer' + '\n';}
if (l[i].innerHTML.indexOf('oversight,') != -1){Oversight = 'Oversight' + '\n';}
}
}
if (Jimbo == 'yes' || Larry == 'yes')
{alert("User " + user_name + " belongs to the following user groups:" + "\n" + "-----" + "\n" + Sysop + BCrat + CheckUser + Developer + Oversight + Steward + "\n" + "-----" + "\n" + "Jimmy Wales and Larry Sanger are the founders of Wikipedia.")}
else if (Sysop != '' || BCrat != '' || CheckUser != '' || Steward != '')
{alert("User " + user_name + " belongs to the following user groups:" + "\n" + "-----" + "\n" + Sysop + BCrat + CheckUser + Developer + Oversight + Steward + "\n" + "-----" + "\n")}
else if (Sysop == '' && BCrat == '' && CheckUser == '' && Steward == '')
{alert("This user is a regular user (does not belong to any user rights groups).")}
}
function userget()
{
if (gml_xmlhttp.readyState != 4)
return;
alert("Usergroup list obtained. Seaching for " + user_name + ".");
xml = gml_xmlhttp.responseText.replace(/<body.*"ns-4">/, '<body class="ns-4">');
doc = gml_XMLParse(xml);
var l = doc.getElementsByTagName('li');
var user_name = document.getElementById('bodyContent').getElementsByTagName('a')[0].innerHTML;
var user_sysop = 'no';
for (i = 0; i < l.length; i++)
{
var name = l[i].getElementsByTagName('a')[0].innerHTML;
if (user_name == name){user_sysop = 'yes'; break;}
}
return user_sysop;
}
//Summary percent use
function sumperentcuse()
{
var status = '';
if (document.getElementById('bodyContent').innerHTML.split("--Viewing contribution data for")[1] != undefined)
{
alert("Results already shown.");
return;
}
alert("Analyzing user's contribution history." + "\n" + "This may take a while if there is a large number of edits shown on this page." + "\n" + "If this fails to generate a report, please make sure that you time preferences are" + "\n" + "set to show dates like '09:12, April 8, 2001'.");
var Username = document.getElementById('bodyContent').getElementsByTagName('a')[0].innerHTML;
var theusername = 'user </span><span style="color:purple;">' + Username + '</span>';
if (Username == 'Talk')
{theusername = '</span><span style="color:purple;">this IP address</span>';}
if (theadminlist.indexOf(Username) != -1)
{status = ' </span><span style="color:blue;">(sysop)</span><span style="color:purple;">';}
//tagging edits
var rvlink = '<span style="color:darkred;"><strong>rv</strong></span>';
var nslink = '<strong>no summary</strong>';
var mslink = '<strong>minor</strong>';
var mamlink = '<strong><span style="color:green;">minor</span></strong>';
var tplink = '<strong>most recent</strong>'
var umplink = '<strong><span style="color:purple;">N.E.</strong></span>'
var alink = '<strong><span style="color:darkblue;">significant</strong></span>';
var malink = '<strong><span style="color:blue;">significant!</strong></span>';
//
var Pagelist = '';
var TE = 0;
var sum_edits = 0;
var sumart_edits = 0;
var Summary_value = -1;
var NS = 0;
var M = 0;
var R = 0;
var EX = 0;
var UM = 0;
var MAM = 0;
var Minor_withsum = 0;
var Major_withsum = 0;
var Major_edit_sum = 0;
var Major_article_sum = 0;
var Minor_article_sum = 0;
var Article_minor_edits = 0;
var Article_major_edits = 0;
var Is_minor = 0;
var Not_minor = 0;
var Talk = 0;
var User = 0;
var Usertalk = 0;
var Mediawiki = 0;
var Wikipediatalk = 0;
var Wikipedia = 0;
var Image = 0;
var Template = 0;
var Category = 0;
var Portal = 0;
var OTalk = 0;
var ArticleE = 0;
var ArtSig = 0;
var Help = 0;
var Unique_pages = 0;
var c = document.getElementById('contentSub');
var a = c.getElementsByTagName('a');
l = document.getElementById('bodyContent').getElementsByTagName('li');
//Timing
var now = new Date();
var timeValue = now.toUTCString().replace(/GMT/, "UTC");
if (timeValue.split('Jan ')[1] != undefined)
{var Month = 'Jan'; var Mval = 1; var Day = timeValue.split(' Jan')[0].split(', ')[1]; var Year = timeValue.split('Jan ')[1].split(' UTC')[0].split(' ')[0]; var Time = timeValue.substring(17,22);}
else if (timeValue.split('Feb ')[1] != undefined)
{var Month = 'Feb'; var Mval = 2; var Day = timeValue.split(' Feb')[0].split(', ')[1]; var Year = timeValue.split('Feb ')[1].split(' UTC')[0].split(' ')[0]; var Time = timeValue.substring(17,22);}
else if (timeValue.split('Mar ')[1] != undefined)
{var Month = 'Mar'; var Mval = 3; var Day = timeValue.split(' Mar')[0].split(', ')[1]; var Year = timeValue.split('Mar ')[1].split(' UTC')[0].split(' ')[0]; var Time = timeValue.substring(17,22);}
else if (timeValue.split('Apr ')[1] != undefined)
{var Month = 'Apr'; var Mval = 4; var Day = timeValue.split(' Apr')[0].split(', ')[1]; var Year = timeValue.split('Apr ')[1].split(' UTC')[0].split(' ')[0]; var Time = timeValue.substring(17,22);}
else if (timeValue.split('May ')[1] != undefined)
{var Month = 'May'; var Mval = 5; var Day = timeValue.split(' May')[0].split(', ')[1]; var Year = timeValue.split('May ')[1].split(' UTC')[0].split(' ')[0]; var Time = timeValue.substring(17,22);}
else if (timeValue.split('Jun ')[1] != undefined)
{var Month = 'Jun'; var Mval = 6; var Day = timeValue.split(' Jun')[0].split(', ')[1]; var Year = timeValue.split('Jun ')[1].split(' UTC')[0].split(' ')[0]; var Time = timeValue.substring(17,22);}
else if (timeValue.split('jul ')[1] != undefined)
{var Month = 'jul'; var Mval = 7; var Day = timeValue.split(' jul')[0].split(', ')[1]; var Year = timeValue.split('jul ')[1].split(' UTC')[0].split(' ')[0]; var Time = timeValue.substring(17,22);}
else if (timeValue.split('Aug ')[1] != undefined)
{var Month = 'Aug'; var Mval = 8; var Day = timeValue.split(' Aug')[0].split(', ')[1]; var Year = timeValue.split('Aug ')[1].split(' UTC')[0].split(' ')[0]; var Time = timeValue.substring(17,22);}
else if (timeValue.split('Sep ')[1] != undefined)
{var Month = 'Sep '; var Mval = 9; var Day = timeValue.split(' Sep')[0].split(', ')[1]; var Year = timeValue.split('Sep ')[1].split(' UTC')[0].split(' ')[0]; var Time = timeValue.substring(17,22);}
else if (timeValue.split('Oct ')[1] != undefined)
{var Month = 'Oct'; var Mval = 10; var Day = timeValue.split(' Oct')[0].split(', ')[1]; var Year = timeValue.split('Oct ')[1].split(' UTC')[0].split(' ')[0]; var Time = timeValue.substring(17,22);}
else if (timeValue.split('Nov ')[1] != undefined)
{var Month = 'Nov'; var Mval = 11; var Day = timeValue.split(' Nov')[0].split(', ')[1]; var Year = timeValue.split('Nov ')[1].split(' UTC')[0].split(' ')[0]; var Time = timeValue.substring(17,22);}
else if (timeValue.split('Dec ')[1] != undefined)
{var Month = 'Dec'; var Mval = 12; var Day = timeValue.split(' Dec')[0].split(', ')[1]; var Year = timeValue.split('Dec ')[1].split(' UTC')[0].split(' ')[0]; var Time = timeValue.substring(17,22);}
Simpletime = 1*(Time.split(":")[0]);
var TimeM = (Time.split(":")[1]);
Time = Simpletime + (TimeM/60);
for (i = 0; i < l.length; i++)
{
var curi = l[i];
var tpnt = '';
if (i == 0)
{
if (l[i].getElementsByTagName('a')[2])
{
tpnt = l[i].getElementsByTagName('a')[2].innerHTML;
}
else if (l[i].getElementsByTagName('a')[1])
{
tpnt = l[i].getElementsByTagName('a')[1].innerHTML;
}
else if (l[i].getElementsByTagName('a')[0] != undefined)
{
tpnt = l[i].getElementsByTagName('a')[0].innerHTML;
}
}
else if (i != 0)
{
tpnt = l[i].getElementsByTagName('a')[2].innerHTML;
}
t = l[i].innerHTML.split(tpnt + '</a> ')[1];
var Revert = 'no';
var Minor = 'no';
var Short = 'no';
var Minor_nonrv = -1;
var Minor_or_sum = -1;
var Marked_as_minor = 'no';
var Namespace_type = 'non-article';
Summary_value = -1;
if (i == 0)
{
if (l[i].getElementsByTagName('a')[2])
{
var Namespace = l[i].getElementsByTagName('a')[2].innerHTML;
}
else if (l[i].getElementsByTagName('a')[1])
{
var Namespace = l[i].getElementsByTagName('a')[1].innerHTML;
}
else if (l[i].getElementsByTagName('a')[0])
{
var Namespace = l[i].getElementsByTagName('a')[0].innerHTML;
}
}
else if (i != 0)
{
var Namespace = l[i].getElementsByTagName('a')[2].innerHTML;
}
if (Pagelist.indexOf(Namespace) == -1){Pagelist += Namespace; Unique_pages = Unique_pages + 1;}
if (Namespace.indexOf('Talk:') != -1)
{
Namespace_type = 'talk';
Talk = Talk + 1;
}
else if (Namespace.indexOf('User:') != -1)
{
Namespace_type = 'talk';
User = User + 1;
}
else if (Namespace.indexOf('User talk:') != -1)
{
Namespace_type = 'talk';
Usertalk = Usertalk + 1;
}
else if (Namespace.indexOf('MediaWiki:') != -1)
{
Mediawiki = Mediawiki + 1;
}
else if (Namespace.indexOf('ipedia talk:') != -1)
{
Namespace_type = 'talk';
Wikipediatalk = Wikipediatalk + 1;
}
else if (Namespace.indexOf('ipedia:') != -1)
{
Wikipedia = Wikipedia + 1;
}
else if (Namespace.indexOf('Image:') != -1)
{
Image = Image + 1;
}
else if (Namespace.indexOf('Template:') != -1)
{
Template = Template + 1;
}
else if (Namespace.indexOf('Category:') != -1)
{
Category = Category + 1;
}
else if (Namespace.indexOf('Portal:') != -1)
{
Portal = Portal + 1;
}
else if (Namespace.indexOf('Help:') != -1)
{
Help = Help + 1;
}
else if (Namespace.indexOf(' talk:') != -1)
{
Namespace_type = 'talk';
OTalk = OTalk + 1;
}
else
{
Namespace_type = 'article';
}
var klength = curi.getElementsByTagName('span').length;
var autoc = 'no';
var the_sum = '';
for (k = 0 ; k < klength; k++)
{
if (curi.getElementsByTagName('span')[k].className == 'minor')
{
Minor_nonrv = 1;
Minor_or_sum = 1;
Minor = 'yes';
Marked_as_minor = 'yes';
}
else if (curi.getElementsByTagName('span')[k].className == 'autocomment')
{
autoc = 'yes';
if (curi.getElementsByTagName('span')[k].innerHTML.split(" -")[1] != undefined)
{
Summary_value = 1;
Minor_or_sum = 1;
if (curi.getElementsByTagName('span')[k-1].innerHTML.split("-</span>")[1] != undefined)
{
var Careful = 'no';
var the_sum = l[i].getElementsByTagName('span')[k-1].innerHTML.split("-</span>")[1].split(")</span>")[0];
if (curi.getElementsByTagName('span')[k-1].innerHTML.split("-</span> ")[1] != undefined)
{the_sum = l[i].getElementsByTagName('span')[k-1].innerHTML.split("-</span> ")[1].split("</span> ")[0];}
t = the_sum;
break;
}
}
else
{
Summary_value = -1;
if (Minor == 'no')
{
Minor_or_sum = -1;
}
}
break;
}
else if (curi.getElementsByTagName('span')[k].className == 'comment')
{
Summary_value = 1;
Minor_or_sum = 1;
var Careful = 'no';
var the_sum = l[i].getElementsByTagName('span')[k].innerHTML;
t = the_sum;
}
}
//End of k loop
if (Namespace_type == 'article' && the_sum != '')
{
if (the_sum.indexOf('reated)') != -1 || the_sum.search('(E|e)xpand') !=-1 || the_sum.search('(w|W)rite new') !=-1 || the_sum.search('(add|more) (history|sections)') !=-1 || the_sum.search('(eate|eated) (stub|article|page|biog|section|paragr)') !=-1 || the_sum.search('(tub|age|rticle) creat') !=-1 || the_sum.search('(N|n)ew (stub|page|article|section|paragr)') !=-1 || the_sum.search('(C|c)reate (page|section|article|biog)') !=-1 || the_sum.search('(C|c)reation of') !=-1 || the_sum.search('add (section|references|sources|citations)') !=-1)
{Careful = 'yes'; Minor = 'no'; Minor_nonrv = -1;}
else if (the_sum.search('(I|i)nfo') !=-1 || the_sum.search('(C|c)ontent') !=-1 || the_sum.search('(W|w)rite') !=-1 || the_sum.search('(H|h)istory') !=-1 || the_sum.search('(quotes|fact|xample|xpand|ompromise|nfobox)') !=-1 || the_sum.search('(B|b)iography') !=-1 || the_sum.search('(A|a)rticle') !=-1 || the_sum.search('Creat(e|ion)') !=-1 || the_sum.search('(N|n)ew ') !=-1 || the_sum.search('opyedit') !=-1 || the_sum.search('(D|d)escription') !=-1 || the_sum.search('(D|d)escribe') !=-1 || the_sum.search('(A|a)dd (more )(reference|source|info|content)') !=-1 || the_sum.search('(M|m)ajor ') !=-1)
{Careful = 'yes';}
else if (autoc == 'no' && the_sum.length < 25){Short = 'yes';}
else if (autoc == 'yes' && the_sum.length < 20){Short = 'yes';}
else if (the_sum.indexOf('<a href=') == -1 && the_sum.replace(' ','').replace(' ','') == the_sum.replace(' ',''))
{Short = 'yes';}
}
//alert('reg a1');
if (Summary_value == -1)
{
NS = NS + 1;
l[i].innerHTML += ' (' + nslink + ') #' + NS;
}
if (Minor_or_sum == 1)
{
EX = EX + 1;
}
if (Minor_or_sum == -1)
{
UM = UM + 1;
l[i].innerHTML += ' (' + umplink + ') #' + UM;
}
if (l[i].innerHTML.indexOf('(top)') != -1)
{
TE = TE + 1;
}
if (Summary_value == 1 && t.match('rotect(ed| )') == null)
{
if (t.search('(RV|Rv|rV)v') !=-1 || t.search('(R|r)m ') !=-1 || t.search('(R|r)ever(t|ted|ting) ') !=-1 || t.search('(R|r)eversion') !=-1 || t.indexOf('raffitti)') !=-1 || t.search('- rv') !=-1 || t.indexOf('(rv') !=-1 || t.indexOf('(revert') !=-1 || t.search('Rv') !=-1 || t.indexOf('(RV') !=-1 || t.search('( nonsense|vandal ed|ollback )') !=-1 || t.indexOf('(Revert') !=-1 || t.search('(t|ed|e) vandal') !=-1 || t.search('(R|r)(V|v) ') !=-1 || t.search('(L|l)inkspam') !=-1 || t.search('(R|r)emov(ed|ing)') !=-1 || t.search('(R|r)m ') !=-1 || t.search('(R|r)emove') !=-1 || t.search('elet(ed|ing) ') !=-1 || t.search('einsta(t|ted)') !=-1 || t.search('(R|r)mv') !=-1 || t.search(' vanda(l|lism)') !=-1 || t.search('(R|r)estore(d) ') !=-1 || t.search('(un|n)ecessary ') !=-1)
{
Minor_nonrv = -1;
Revert = 'yes';
R = R + 1;
l[i].innerHTML += ' (' + rvlink + ') #' + R;
}
}
//alert('reg 3r');
if (Namespace_type == 'article' && Summary_value == 1 && Revert == 'no' && Minor == 'no' && Short == 'no' && Careful == 'no')
{
if (t.search('(\\+|-|>|\\#|!)') !=-1 || t.search('(\\(no |\\(clean|\\(Clean|grammer|Grammer)') != -1 || t.search('(S|s)pelling') !=-1 || t.search('(al|ing) error') !=-1 || t.search('(W|w)ikif(y|ied)') !=-1 || t.search('ategor(y|ize)') !=-1 || t.search('(F|f)ix') !=-1 || t.search('(T|t)ypo') !=-1 || t.indexOf('{{') !=-1 || t.indexOf('[[') !=-1 || t.indexOf('(stub)') !=-1 || t.search('(M|m)ov(e|ing) ') !=-1 || t.match('( -|--)') !=-1 || t.search('(F|f|fo)rm(t|at)') !=-1 || t.search('(L|l)ink ') !=-1 || t.search('(S|s)tyle') !=-1 || t.search('( abbr|Abbr|Disambig|disambig|Dab\\.|dab\\.)') !=-1 || t.search('(M|m)odif(y|ied)') !=-1 || t.search('r(e|e-)order') !=-1 || t.search('(eword |ording | word| tag|place |bad |can |doesn)') !=-1 || t.search('(R|r)e(structure|organiz|order)') !=-1 || t.search('(L|l)ist') !=-1 || t.search('(C|c)lea(n|r)') !=-1 || t.search('(C|c)larity') !=-1 || t.search('(O|o)(O|o)ps') !=-1 || t.search('" to ') !=-1 || t.search('edir(ect|ing)') !=-1 || t.search('(M|m)ov(ed|ing) ') !=-1 || t.search('(A|a)(F|f)(D|d)') !=-1 || t.search('for (D|d)ele') !=-1 || t.search('(AWB|REDIR)') !=-1 || t.search('(N|n)eed(ed| )') !=-1 || t.search('(C|c)orrect') !=-1 || t.search('ub(cat|section)') !=-1 || t.search(' (not|NOT) ') !=-1 || t.search(' (is|IS) (not|NOT)') !=-1 || t.search('( )only( )') !=-1 || t.search('(P|p)lease ') !=-1 || t.search('(CSD|CfSD|belong|eorganize|ointless|clarif|onvert | name)') !=-1 || t.search('( )cat( )') !=-1 || t.search('(V|v)ersion') !=-1 || t.indexOf('" ') !=-1 || t.indexOf(' "') !=-1 || t.search('(E|e)asier') !=-1 || t.search('(S|s)impl') !=-1 || t.search('(S|s)mall') !=-1 || t.search('(S|s)horten') !=-1 || t.search(' (heading|title)') !=-1 || t.search('(avoid|merge |merge\\)|epair|few |small |minor |rotected|opulating)') !=-1 || t.indexOf("' ") !=-1 || t.indexOf(" '") !=-1 || t.search('(onvert|rid|Auto) ') !=-1 || t.search('(T|t)his ') !=-1 || t.search('(is|auto) ') !=-1 || t.search(" conver(t|sion)") !=-1)
{
Minor_nonrv = 1;
Minor = 'yes';
}
}
//alert('reg 4r');
else if (Namespace_type != 'talk' && Namespace_type != 'article' && Summary_value == 1 && Revert == 'no' && Minor == 'no')
{
if (t.search('(minor\\)|\\(m\\)| m\\)|sp\\)|gr\\)|\\#)') !=-1 || t.search('(grammar|spelling|Fix|fix|typo|al error|g errors|sign |minor )')!=-1 || t.indexOf('(+') !=-1|| t.indexOf('sig.') !=-1 || t.indexOf('(-') !=-1 || t.indexOf('ikify)') !=-1 || t.indexOf('(clean') !=-1 || t.indexOf('(Protect') !=-1 || t.indexOf('(Unprotect') !=-1 || t.search('(opulating |move |format | word|frmt|style|tag)') !=-1 || t.indexOf('{{') !=-1 || t.indexOf('>') !=-1 || t.search('style') !=-1 || t.indexOf('dab.') !=-1 || t.search('(clear|larity|clarif|clean|eword |ording | word)') !=-1 || t.search('estructure') !=-1 || t.search('(O|o)(O|o)ps') !=-1 || t.indexOf('" to ') !=-1 || t.search('epair') !=-1 || t.indexOf('(move') !=-1 || t.indexOf('(Move') !=-1 || t.search('ub(cat|section)') !=-1 || t.search('(S|s)horten') !=-1 || t.search(' heading') !=-1 || t.search('small (e|c|a)') !=-1)
{
Minor_nonrv = 1;
Minor = 'yes';
}
}
if (Namespace_type == 'article')
{
ArticleE = ArticleE + 1;
if (Minor_or_sum == -1){Minor = 'no'}
if (Short == 'yes' && Revert == 'no' && Minor == 'no')
{
Minor = 'yes';
Minor_nonrv = 1;
}
//article edit summary use percent stuff
if (Marked_as_minor == 'no' && i<1000)
{
sumart_edits += 1;
Article_major_edits = Article_major_edits + 1;
if (Summary_value == 1){Major_article_sum = Major_article_sum + 1;}
}
else if (Marked_as_minor == 'yes' && i<1000)
{
sumart_edits += 1;
Article_minor_edits = Article_minor_edits + 1;
if (Summary_value == 1){Minor_article_sum = Minor_article_sum + 1;}
}
//sig. article edits
if (Minor == 'no' && Revert == 'no' && Summary_value == 1 && Marked_as_minor == 'no')
{
ArtSig = ArtSig + 1;
l[i].innerHTML += ' (' + alink + ') #' + ArtSig;
}
else if (Minor == 'no' && Revert == 'no' && Summary_value == 1 && Marked_as_minor == 'yes')
{
ArtSig = ArtSig + 1;
l[i].innerHTML += ' (' + malink + ') #' + ArtSig;
}
}
//overall for edit percent usage (up 1000 only)
if (Marked_as_minor == 'yes' && i<1000)
{
sum_edits += 1;
Is_minor = Is_minor + 1;
if (Summary_value == 1)
{Minor_withsum = Minor_withsum + 1;}
}
else if (Marked_as_minor == 'no' && i<1000)
{
sum_edits += 1;
Not_minor = Not_minor + 1;
if (Summary_value == 1)
{Major_withsum = Major_withsum + 1;}
}
//done
if (Minor_nonrv == 1)
{
M = M + 1;
if (Marked_as_minor == 'yes')
{l[i].innerHTML += ' (' + mslink + ') #' + M;}
else if (Marked_as_minor == 'no')
{l[i].innerHTML += ' (' + mamlink + ') #' + M; MAM = MAM + 1; }
}
}
//END of FOR loop
j=i-1;
var yearloc = l[j].innerHTML.split('action=history')[0];
if (yearloc.indexOf('January ') != -1)
{var LMonth = 'January'; var LMval = 1; var LDay = yearloc.split('January ')[1].split(',')[0]; var LYear = yearloc.split('January ')[1].split(', ')[1]; var LTime = yearloc.split(', January ')[0];}
else if (yearloc.indexOf('February ') != -1)
{var LMonth = 'February'; var LMval = 2; var LDay = yearloc.split('February ')[1].split(',')[0]; var LYear = yearloc.split('February ')[1].split(', ')[1]; var LTime = yearloc.split(', February ')[0];}
else if (yearloc.indexOf('March ') != -1)
{var LMonth = 'March'; var LMval = 3; var LDay = yearloc.split('March ')[1].split(',')[0]; var LYear = yearloc.split('March ')[1].split(', ')[1]; var LTime = yearloc.split(', March ')[0];}
else if (yearloc.indexOf('April ') != -1)
{var LMonth = 'April'; var LMval = 4; var LDay = yearloc.split('April ')[1].split(',')[0]; var LYear = yearloc.split('April ')[1].split(', ')[1]; var LTime = yearloc.split(', April ')[0];}
else if (yearloc.indexOf('May ') != -1)
{var LMonth = 'May'; var LMval = 5; var LDay = yearloc.split('May ')[1].split(',')[0]; var LYear = yearloc.split('May ')[1].split(', ')[1]; var LTime = yearloc.split(', May ')[0];}
else if (yearloc.indexOf('June ') != -1)
{var LMonth = 'June'; var LMval = 6; var LDay = yearloc.split('June ')[1].split(',')[0]; var LYear = yearloc.split('June ')[1].split(', ')[1]; var LTime = yearloc.split(', June ')[0];}
else if (yearloc.indexOf('July ') != -1)
{var LMonth = 'July'; var LMval = 7; var LDay = yearloc.split('July ')[1].split(',')[0]; var LYear = yearloc.split('July ')[1].split(', ')[1]; var LTime = yearloc.split(', July ')[0];}
else if (yearloc.indexOf('August ') != -1)
{var LMonth = 'August'; var LMval = 8; var LDay = yearloc.split('August ')[1].split(',')[0]; var LYear = yearloc.split('August ')[1].split(', ')[1]; var LTime = yearloc.split(', August ')[0];}
else if (yearloc.indexOf('September ') != -1)
{var LMonth = 'September'; var LMval = 9; var LDay = yearloc.split('September ')[1].split(',')[0]; var LYear = yearloc.split('September ')[1].split(', ')[1]; var LTime = yearloc.split(', September ')[0];}
else if (yearloc.indexOf('October ') != -1)
{var LMonth = 'October'; var LMval = 10; var LDay = yearloc.split('October ')[1].split(',')[0]; var LYear = yearloc.split('October ')[1].split(', ')[1]; var LTime = yearloc.split(', October ')[0];}
else if (yearloc.indexOf('November ') != -1)
{var LMonth = 'November'; var LMval = 11; var LDay = yearloc.split('November ')[1].split(',')[0]; var LYear = yearloc.split('November ')[1].split(', ')[1]; var LTime = yearloc.split(', November ')[0];}
else if (yearloc.indexOf('December ') != -1)
{var LMonth = 'December'; var LMval = 12; var LDay = yearloc.split('December ')[1].split(',')[0]; var LYear = yearloc.split('December ')[1].split(', ')[1]; var LTime = yearloc.split(', December ')[0];}
var lpoint = LTime.length - 5;
LTimenum = LTime.substring(lpoint);
LSimpletime = 1*(LTimenum.split(":")[0]);
var LTimeM = (LTimenum.split(":")[1]);
LTime = LSimpletime + (LTimeM/60);
var E = i;
LYear = LYear.split(' ')[0].split('</a>')[0];
var mothr = Day - 1 + (Time/24);
var mothl = 30.42 - (LDay - 1 + LTime/24);
if (Year == LYear)
{
var mdiff = 30.42*(Mval - LMval - 1);
var totdays = mothr + mothl + mdiff;
if (Mval == LMval)
{totdays = Day - 1 + Time/24 - (LDay - 1 + LTime/24);}
var average = E/totdays;
var rvaverage = R/totdays;
var nonrvave = average - rvaverage;
var Daylength = Math.round((1)*totdays)/1;
if (Daylength == 0)
{
Daylength = 1;
}
}
else if (Year != LYear)
{
var ydiff = 365*(Year - LYear - 1);
var yearr = 30.42*(Mval - 1) + mothr;
var yearl = 30.42*(12 - LMval - 1) + mothl;
var totdays = yearr + ydiff + yearl;
var average = E/totdays;
var rvaverage = R/totdays;
var nonrvave = average - rvaverage;
var Daylength = Math.round((1)*totdays)/1;
if (Daylength == 0)
{
Daylength = 1;
}
}
ave_tot = i;
//Check up to 500 edits, may redefine average edits/day
if (E>500)
{
yearloc = l[499].innerHTML.split('action=history')[0];
//alert(yearloc);
if (yearloc.indexOf('January ') != -1)
{var ECMonth = 'January'; var ECMval = 1; var ECDay = yearloc.split('January ')[1].split(',')[0]; var ECYear = yearloc.split('January ')[1].split(', ')[1]; var ECTime = yearloc.split(', January ')[0];}
else if (yearloc.indexOf('February ') != -1)
{var ECMonth = 'February'; var ECMval = 2; var ECDay = yearloc.split('February ')[1].split(',')[0]; var ECYear = yearloc.split('February ')[1].split(', ')[1]; var ECTime = yearloc.split(', February ')[0];}
else if (yearloc.indexOf('March ') != -1)
{var ECMonth = 'March'; var ECMval = 3; var ECDay = yearloc.split('March ')[1].split(',')[0]; var ECYear = yearloc.split('March ')[1].split(', ')[1]; var ECTime = yearloc.split(', March ')[0];}
else if (yearloc.indexOf('April ') != -1)
{var ECMonth = 'April'; var ECMval = 4; var ECDay = yearloc.split('April ')[1].split(',')[0]; var ECYear = yearloc.split('April ')[1].split(', ')[1]; var ECTime = yearloc.split(', April ')[0];}
else if (yearloc.indexOf('May ') != -1)
{var ECMonth = 'May'; var ECMval = 5; var ECDay = yearloc.split('May ')[1].split(',')[0]; var ECYear = yearloc.split('May ')[1].split(', ')[1]; var ECTime = yearloc.split(', May ')[0];}
else if (yearloc.indexOf('June ') != -1)
{var ECMonth = 'June'; var ECMval = 6; var ECDay = yearloc.split('June ')[1].split(',')[0]; var ECYear = yearloc.split('June ')[1].split(', ')[1]; var ECTime = yearloc.split(', June ')[0];}
else if (yearloc.indexOf('July ') != -1)
{var ECMonth = 'July'; var ECMval = 7; var ECDay = yearloc.split('July ')[1].split(',')[0]; var ECYear = yearloc.split('July ')[1].split(', ')[1]; var ECTime = yearloc.split(', July ')[0];}
else if (yearloc.indexOf('August ') != -1)
{var ECMonth = 'August'; var ECMval = 8; var ECDay = yearloc.split('August ')[1].split(',')[0]; var ECYear = yearloc.split('August ')[1].split(', ')[1]; var ECTime = yearloc.split(', August ')[0];}
else if (yearloc.indexOf('September ') != -1)
{var ECMonth = 'September'; var ECMval = 9; var ECDay = yearloc.split('September ')[1].split(',')[0]; var ECYear = yearloc.split('September ')[1].split(', ')[1]; var ECTime = yearloc.split(', September ')[0];}
else if (yearloc.indexOf('October ') != -1)
{var ECMonth = 'October'; var ECMval = 10; var ECDay = yearloc.split('October ')[1].split(',')[0]; var ECYear = yearloc.split('October ')[1].split(', ')[1]; var ECTime = yearloc.split(', October ')[0];}
else if (yearloc.indexOf('November ') != -1)
{var ECMonth = 'November'; var ECMval = 11; var ECDay = yearloc.split('November ')[1].split(',')[0]; var ECYear = yearloc.split('November ')[1].split(', ')[1]; var ECTime = yearloc.split(', November ')[0];}
else if (yearloc.indexOf('December ') != -1)
{var ECMonth = 'December'; var ECMval = 12; var ECDay = yearloc.split('December ')[1].split(',')[0]; var ECYear = yearloc.split('December ')[1].split(', ')[1]; var ECTime = yearloc.split(', December ')[0];}
var lpoint = ECTime.length - 5;
ECTimenum = ECTime.substring(lpoint);
ECSimpletime = 1*(ECTimenum.split(":")[0]);
var ECTimeM = ECTimenum.split(":")[1];
ECTime = ECSimpletime + (ECTimeM/60);
ECYear = ECYear.split(' ')[0].split('</a>')[0];
var mothEC = 30.42 - (ECDay - 1 + ECTime/24);
//alert(ECTime + '|' + ECYear + '|' + mothEC);
if (Year == ECYear)
{
var ECmdiff = 30.42*(Mval - ECMval - 1);
var ECtotdays = mothr + mothEC + ECmdiff;
if (Mval == ECMval)
{ECtotdays = Day - 1 + Time/24 - (ECDay - 1 + ECTime/24);}
average = 500/ECtotdays;
}
else if (Year != ECYear)
{
var ECydiff = 365*(Year - ECYear - 1);
var yearEC = 30.42*(12 - ECMval - 1) + mothEC;
var ECtotdays = yearr + ECydiff + yearEC;
average = 500/ECtotdays;
}
ave_tot = 500;
}
//
average = Math.round((100)*average)/100;
var avenotice = '';
//wow..statistics people
var caverage = Math.round((1000)*caverage)/1000;
if (location.href.split("&offset=")[1] != undefined)
{
if (location.href.split("&offset=0")[1] != undefined)
{
var offset = 'no';
}
else
{
average = '<strong>[Value unknown]*</strong>';
avenotice = '<strong>*Average edits per day not shown because the most recent edit to this page is not visable</strong><br>';
var offset = 'yes';
}
}
var U_edits = E-EX;
var S_edits = EX-M-R;
var FAQ = '<a href="http://en.wikipedia.org/wiki/User:Voice_of_All/History_analysis_JS_Definitions_and_FAQ" title="HistoryFAQ"> <span style="color:blue;">(FAQ)</span></a>';
oldbody = document.getElementById('bodyContent').innerHTML;
document.getElementById('bodyContent').innerHTML = '<span style="color:darkblue;"><strong>--Viewing contribution data for ' + theusername + status + ' <span style="color:darkblue;">(over the </span>' + i + ' <span style="color:darkblue;">edit(s) shown on this page)--</span></strong> ' + FAQ + '<br>' + '<span style="color:blue;"><strong>Time range:</span> ' + Daylength + ' approximate day(s) of edits on this page</strong></span><br> ' + 'Most recent edit on: ' + Simpletime + 'hr (UTC) -- ' + Day + ', ' + Month + ', ' + Year + '<br>' + 'Oldest edit on: ' + LSimpletime + 'hr (UTC) -- ' + LDay + ', ' + LMonth + ', ' + LYear + '<br>' + '<span style="color:darkblue;"><strong>Overall edit summary use (last</span> ' + sum_edits + ' <span style="color:darkblue;">edits): </span>' + ' Major edits: ' + Math.round((100)*(100*(Major_withsum/Not_minor)))/100 + '</strong>% ' + ' <strong>Minor edits: </span>' + Math.round((100)*(100*(Minor_withsum/Is_minor)))/100 + '</strong>%<br>' + '<span style="color:darkblue;"><strong>Article edit summary use (last</span> ' + sumart_edits + ' <span style="color:darkblue;">edits) : </span>' + ' Major article edits: ' + Math.round((100)*(100*(Major_article_sum/Article_major_edits)))/100 + '</strong>% ' + ' <strong>Minor article edits: </span>' + Math.round((100)*(100*(Minor_article_sum/Article_minor_edits)))/100 + '</strong>%<br>' + '<strong>Average edits per day: ' + average + ' </strong>(for last ' + ave_tot + ' edit(s))<strong><br>' + 'Marked notable article edits (creation/expansion/rewrites/sourcing): ' + Math.round((100)*(100*(ArtSig)/E))/100 + '</strong>% (' + ArtSig + ')<br>' + '<strong>Unique pages edited: ' + Unique_pages + ' <span style="color:darkblue;">|</span> ' + 'Average edits per page: ' + Math.round(100*E/Unique_pages)/100 + ' <span style="color:darkblue;">|</span> ' + 'Edits on top: ' + Math.round((100)*(100*(TE)/E))/100 + '</strong>%<br>' + '<span style="color:darkblue;"><strong>Breakdown of all edits:</strong></span><br>' + '<strong>Significant edits (non-minor/reverts): ' + Math.round((100)*(100*(EX-M-R)/E))/100 + '</strong>% (' + S_edits + ' edit(s))<br>' + '<strong>Minor edits (non-reverts): ' + Math.round((100)*(100*(M)/E))/100 + '</strong>% (' + M + ' edit(s))<br>' + '<span style="color:darkred;"><strong>Marked reverts:</span> ' + Math.round((100)*(100*(R)/E))/100 + '</strong>% (' + R + ' edit(s))<br>' + '<span style="color:purple;"><strong>Unmarked edits:</span> ' + Math.round((100)*(100*(E-EX)/E))/100 + '</strong>% (' + U_edits + ' edit(s))<br>' + '<span style="color:blue;"><strong>Edits by Wikipedia namespace:</span><br>' + 'Article: ' + Math.round((100)*(100*(ArticleE)/E))/100 + '</strong>% (' + ArticleE + ') <strong><span style="color:darkblue;">|</span> Article talk: ' + Math.round((100)*(100*(Talk)/E))/100 + '</strong>% (' + Talk + ')<br>' + '<strong>User: ' + Math.round((100)*(100*(User)/E))/100 + '</strong>% (' + User + ') <strong><span style="color:darkblue;">|</span> User talk: ' + Math.round((100)*(100*(Usertalk)/E))/100 + '</strong>% (' + Usertalk + ') <br>' + '<strong>Wikipedia: ' + Math.round((100)*(100*(Wikipedia)/E))/100 + '</strong>% (' + Wikipedia + ') <strong><span style="color:darkblue;">|</span> Wikipedia talk: ' + Math.round((100)*(100*(Wikipediatalk)/E))/100 + '</strong>% (' + Wikipediatalk + ')<br>' + '<strong>Image: ' + Math.round((100)*(100*(Image)/E))/100 + '</strong>% (' + Image + ')<br>' + '<strong>Template: ' + Math.round((100)*(100*(Template)/E))/100 + '</strong>% (' + Template + ')<br>' + '<strong>Category: ' + Math.round((100)*(100*(Category)/E))/100 + '</strong>% (' + Category + ')<br>' + '<strong>Portal: ' + Math.round((100)*(100*(Portal)/E))/100 + '</strong>% (' + Portal + ')<br>' + '<strong>Help: ' + Math.round((100)*(100*(Help)/E))/100 + '</strong>% (' + Help + ')<br>' + '<strong>MediaWiki: ' + Math.round((100)*(100*(Mediawiki)/E))/100 + '</strong>% (' + Mediawiki + ')<br>' + '<strong>Other talk pages: ' + Math.round((100)*(100*(OTalk)/E))/100 + '</strong>% (' + OTalk + ')<br>' + avenotice + oldbody;
return;
}
//END
//Vandal and IP stats
function histstats()
{
alert("Analyzing this page's edit history." + "\n" + "This may take a while if there is a large number of edits shown on this page." + "\n" + "If this fails to generate a report, please make sure that you time preferences are" + "\n" + "set to show dates like '09:12, April 8, 2001'.");
if (document.getElementById('bodyContent').innerHTML.split("Viewing article modification statistics (from the")[1] != undefined || document.getElementById('bodyContent').innerHTML.split("There are no article modification statistics to show since there is only one edit.")[1] != undefined)
{
alert("Results already shown.");
return;
}
var firstbody = document.getElementById('bodyContent').innerHTML;
var botlink = '<span style="color:purple;"><strong>bot</strong></span>';
var syslink = '<span style="color:blue;"><strong>sysop</strong></span>';
var rvlink = '<span style="color:darkred;"><strong>rv</strong></span>';
var nulink = '<strong>blank userpage</strong>';
var iplink = '<strong>IP edit</strong>';
var vanlink = '<span style="color:red;"><strong>likely vandal rv</strong></span>';
var nslink = '<strong>no summary</strong>';
var oldloc = location.href;
var R = 0;
var V = 0;
var IP = 0;
var NU = 0;
var NS = 0;
var SYS = 0;
var BOT = 0;
var undelete = 'no';
var username = '';
var c = document.getElementById('contentSub');
var a = c.getElementsByTagName('a');
l = document.getElementById('bodyContent').getElementsByTagName('li');
if (location.href.indexOf('http://en.wikipedia.org/wiki/Special:Undelete/') != -1)
{
undelete = 'yes';
var suslink = '<span style="color:red;"><strong>suspicious</strong></span>';
l = document.getElementById('bodyContent').getElementsByTagName('ul')[1].getElementsByTagName('li');
nulink = '<strong><span style="color:red;">blank userpage</span></strong>';
iplink = '<strong><span style="color:red;">IP edit</span></strong>';
}
var now = new Date();
var timeValue = now.toUTCString().replace(/GMT/, "UTC");
if (timeValue.split('Jan ')[1] != undefined)
{var CMonth = 'Jan'; var CMval = 1; var CDay = timeValue.split(' Jan')[0].split(', ')[1]; var CYear = timeValue.split('Jan ')[1].split(' UTC')[0].split(' ')[0]; var CTime = timeValue.substring(17,22);}
else if (timeValue.split('Feb ')[1] != undefined)
{var CMonth = 'Feb'; var CMval = 2; var CDay = timeValue.split(' Feb')[0].split(', ')[1]; var CYear = timeValue.split('Feb ')[1].split(' UTC')[0].split(' ')[0]; var CTime = timeValue.substring(17,22);}
else if (timeValue.split('Mar ')[1] != undefined)
{var CMonth = 'Mar'; var CMval = 3; var CDay = timeValue.split(' Mar')[0].split(', ')[1]; var CYear = timeValue.split('Mar ')[1].split(' UTC')[0].split(' ')[0]; var CTime = timeValue.substring(17,22);}
else if (timeValue.split('Apr ')[1] != undefined)
{var CMonth = 'Apr'; var CMval = 4; var CDay = timeValue.split(' Apr')[0].split(', ')[1]; var CYear = timeValue.split('Apr ')[1].split(' UTC')[0].split(' ')[0]; var CTime = timeValue.substring(17,22);}
else if (timeValue.split('May ')[1] != undefined)
{var CMonth = 'May'; var CMval = 5; var CDay = timeValue.split(' May')[0].split(', ')[1]; var CYear = timeValue.split('May ')[1].split(' UTC')[0].split(' ')[0]; var CTime = timeValue.substring(17,22);}
else if (timeValue.split('Jun ')[1] != undefined)
{var CMonth = 'Jun'; var CMval = 6; var CDay = timeValue.split(' Jun')[0].split(', ')[1]; var CYear = timeValue.split('Jun ')[1].split(' UTC')[0].split(' ')[0]; var CTime = timeValue.substring(17,22);}
else if (timeValue.split('jul ')[1] != undefined)
{var CMonth = 'jul'; var CMval = 7; var CDay = timeValue.split(' jul')[0].split(', ')[1]; var CYear = timeValue.split('jul ')[1].split(' UTC')[0].split(' ')[0]; var CTime = timeValue.substring(17,22);}
else if (timeValue.split('Aug ')[1] != undefined)
{var CMonth = 'Aug'; var CMval = 8; var CDay = timeValue.split(' Aug')[0].split(', ')[1]; var CYear = timeValue.split('Aug ')[1].split(' UTC')[0].split(' ')[0]; var CTime = timeValue.substring(17,22);}
else if (timeValue.split('Sep ')[1] != undefined)
{var CMonth = 'Sep '; var CMval = 9; var CDay = timeValue.split(' Sep')[0].split(', ')[1]; var CYear = timeValue.split('Sep ')[1].split(' UTC')[0].split(' ')[0]; var CTime = timeValue.substring(17,22);}
else if (timeValue.split('Oct ')[1] != undefined)
{var CMonth = 'Oct'; var CMval = 10; var CDay = timeValue.split(' Oct')[0].split(', ')[1]; var CYear = timeValue.split('Oct ')[1].split(' UTC')[0].split(' ')[0]; var CTime = timeValue.substring(17,22);}
else if (timeValue.split('Nov ')[1] != undefined)
{var CMonth = 'Nov'; var CMval = 11; var CDay = timeValue.split(' Nov')[0].split(', ')[1]; var CYear = timeValue.split('Nov ')[1].split(' UTC')[0].split(' ')[0]; var CTime = timeValue.substring(17,22);}
else if (timeValue.split('Dec ')[1] != undefined)
{var CMonth = 'Dec'; var CMval = 12; var CDay = timeValue.split(' Dec')[0].split(', ')[1]; var CYear = timeValue.split('Dec ')[1].split(' UTC')[0].split(' ')[0]; var CTime = timeValue.substring(17,22);}
CSimpletime = 1*(CTime.split(":")[0]);
var CTimeM = (CTime.split(":")[1]);
CTime = CSimpletime + (CTimeM/60);
for (i = 0; i < l.length; i++)
{
var sysop = 'no';
var Summary_value = -1;
if (l[i] != undefined)
{
t = l[i].innerHTML;
if (i == 0)
{
if (l[i].getElementsByTagName('a')[2] != undefined)
{
username = l[i].getElementsByTagName('a')[2].innerHTML;
}
}
else if (l[i].getElementsByTagName('a')[3] != undefined)
{
username = l[i].getElementsByTagName('a')[3].innerHTML;
}
if (location.href.indexOf('http://en.wikipedia.org/wiki/Special:Undelete/') != -1)
{
username = l[i].getElementsByTagName('a')[1].innerHTML;
}
for (k = 0 ; k < 3; k++)
{
if (l[i].getElementsByTagName('span')[k] != undefined)
{
if (l[i].getElementsByTagName('span')[k].className == 'minor')
{
Summary_value = -1;
}
else if (l[i].getElementsByTagName('span')[k].className == 'autocomment')
{
if (l[i].getElementsByTagName('span')[k].innerHTML.split(" -")[1] != undefined)
{
Summary_value = 1;
}
else
{
Summary_value = -1;
}
}
else if (l[i].getElementsByTagName('span')[k].className == 'comment')
{
Summary_value = 1;
}
}
}
if (Summary_value == -1)
{
NS = NS + 1;
l[i].innerHTML += ' (' + nslink + ') #' + NS;
}
if (theadminlist.indexOf('.' + username + '|') != -1)
{
SYS = SYS + 1;
sysop = 'yes';
l[i].innerHTML += ' (' + syslink + ') #' + SYS;
}
if (thervbotlist.indexOf(username + '|') != -1)
{
BOT = BOT + 1;
l[i].innerHTML += ' (' + botlink + ') #' + BOT;
}
if (t.indexOf('(rvv') != -1 || t.indexOf('(Rvv') != -1 || t.indexOf('(RVV') != -1 ||t.indexOf('(RvV') != -1 || t.indexOf('rm vandalism') != -1 || t.indexOf('(RV V') != -1 || t.indexOf('(Reverted edits') != -1 || t.indexOf('(Popups assisted reversion') != -1 || t.indexOf('(Revert to revision') != -1 || t.indexOf('rmv graffitti') != -1 || t.indexOf('rm graffitti') != -1 || t.indexOf('rv graffitti') != -1 || t.indexOf('BOT - rv') != -1 || t.indexOf('(reverted vandalism') != -1 || t.indexOf('(Reverted vandalism') != -1 || t.indexOf('BOT - Reverted') != -1 || t.indexOf('(RVV') != -1 || t.indexOf('rm nonsense') != -1 || t.indexOf('rm nonsense') != -1 || t.indexOf('remove nonsense') != -1 || t.indexOf('to last version by') != -1 || t.indexOf('(rm test') != -1 || t.indexOf('vandal edit') != -1 || t.indexOf('remove vandalism') != -1 || t.indexOf('removed vandalism') != -1 || t.indexOf('not compromise the integrity') != -1 || t.indexOf('(fixed vandalism') != -1 || t.indexOf('(Revert vandal') != -1 || t.indexOf('(revert vandal') != -1 || t.indexOf('delete vandalism') != -1 || t.indexOf('Delete vandalism') != -1 || t.indexOf('deleted vandalism') != -1 || t.indexOf('Deleted vandalism') != -1 || t.indexOf('Deleted vandalism') != -1 || t.indexOf('rev vandal') != -1 || t.indexOf('Rev vandal') != -1 || t.indexOf('rv vandalism') != -1 || t.indexOf('Rv vandalism') != -1 || t.indexOf('Reverting vandal') != -1 || t.indexOf('reverting vandal') != -1 || t.indexOf('(rv/v') != -1 || t.indexOf('inkspam') != -1 || t.indexOf('restore ') != -1)
{
V = V + 1;
l[i].innerHTML += ' (' + vanlink + ') #' + V;
R = R + 1;
l[i].innerHTML += ' (' + rvlink + ') #' + R;
}
else if (t.indexOf('(Reverted ') != -1 || t.indexOf('(rv') != -1 || t.indexOf('(revert') != -1 || t.indexOf('(Revert') != -1 || t.indexOf('Revert ') != -1 || t.indexOf('revert ') != -1 || t.indexOf('(rv') != -1 || t.indexOf('(Rv') != -1 || t.indexOf('(RV') != -1 || t.indexOf('rv.') != -1 || t.indexOf('( rv') != -1 || t.indexOf('Reverting ') != -1 || t.indexOf('(Restoring ') != -1 || t.indexOf('restore ') != -1 || t.indexOf('(restoring ') != -1 || t.indexOf('(Removed') != -1 || t.indexOf('removed ') != -1 || t.indexOf('Rm ') != -1 || t.indexOf('(rm ') != -1 || t.indexOf('einstated ') != -1 || t.indexOf('rmv') != -1 || t.indexOf('einstate ') != -1 || t.indexOf('delete ') != -1 || t.indexOf('deleted ') != -1 || t.indexOf('emoved ') != -1 || t.indexOf('rm ') != -1 || t.indexOf('emove ') != -1 || t.indexOf('eleted ') != -1 || t.indexOf('einstated') != -1 || t.indexOf('einstate ') != -1 || t.indexOf('rmv') != -1 || t.indexOf('restored ') != -1 || t.indexOf('ollback ') != -1 || t.indexOf('andalism ') != -1 || t.indexOf(' vandal') != -1 || t.indexOf('Restore ') != -1 || t.indexOf('Restored ') != -1 || t.indexOf('ecessary ') != -1 || t.indexOf('unnecess') != -1)
{
R = R + 1;
l[i].innerHTML += ' (' + rvlink + ') #' + R;
}
if (undelete == 'yes' && sysop == 'no')
{
if (t.indexOf('(umber') != -1 || t.indexOf('home') != -1 || t.indexOf('(ddress') != -1 || t.indexOf('reet') != -1 || t.indexOf('ives ') != -1 || t.indexOf('-1') != -1 || t.indexOf('-2') != -1 || t.indexOf('-3') != -1 || t.indexOf('-4') != -1 || t.indexOf('-5') != -1 || t.indexOf('-6') != -1 || t.indexOf('-7') != -1 || t.indexOf('-8') != -1 || t.indexOf('-9') != -1 || t.indexOf('-0') != -1 || t.indexOf('!') != -1 || t.indexOf('___') != -1 || t.indexOf('ersonal') != -1 || t.indexOf('I ') != -1 || t.indexOf('You') != -1 || t.indexOf('YOU') != -1 || t.indexOf('YOu') != -1 || t.indexOf('YoU') != -1 || t.indexOf('He') != -1 || t.indexOf('HE') != -1 || t.indexOf('he ') != -1 || t.indexOf('WoW') != -1 || t.indexOf('WILLY') != -1 || t.indexOf('Willy') != -1 || t.indexOf('uck') != -1 || t.indexOf('UCK') != -1 || t.indexOf('enis') != -1 || t.indexOf('PEN') != -1 || t.indexOf('ock') != -1 || t.indexOf('OCK') != -1 || t.indexOf('LOL') != -1)
{
l[i].innerHTML += ' (' + suslink + ')';
}
}
if (l[i].getElementsByTagName('a')[3] != undefined)
{
if (l[i].getElementsByTagName('a')[3].href.indexOf('title=Special:Contributions') != -1)
{
IP = IP + 1;
l[i].innerHTML += ' (' + iplink + ') #' + IP;
}
if (l[i].getElementsByTagName('a')[3].href.indexOf('&action=edit') != -1 && sysop == 'no')
{
NU = NU + 1;
l[i].innerHTML += ' (' + nulink + ') #' + NU;
}
}
else if (l[i].getElementsByTagName('a')[2] != undefined)
{
if (l[i].getElementsByTagName('a')[2].href.indexOf('title=Special:Contributions') != -1)
{
IP = IP + 1;
l[i].innerHTML += ' (' + iplink + ') #' + IP;
}
if (l[i].getElementsByTagName('a')[2].href.indexOf('&action=edit') != -1 && sysop == 'no')
{
NU = NU + 1;
l[i].innerHTML += ' (' + nulink + ') #' + NU;
}
}
else if (l[i].getElementsByTagName('a')[1] != undefined)
{
if (l[i].getElementsByTagName('a')[1].href.indexOf('title=Special:Contributions') != -1)
{
IP = IP + 1;
l[i].innerHTML += ' (' + iplink + ') #' + IP;
}
if (l[i].getElementsByTagName('a')[1].href.indexOf('&action=edit') != -1 && sysop == 'no')
{
NU = NU + 1;
l[i].innerHTML += ' (' + nulink + ') #' + NU;
}
}
}
else
{
break;
}
}
var oldbody = document.getElementById('bodyContent').innerHTML;
if (document.title.indexOf('View and restore deleted pages') != -1)
{var lt = l[0].getElementsByTagName('a')[0].innerHTML;}
else if (location.href.indexOf('&offset=') != -1 && location.href.indexOf('&offset=0') == -1)
{var lt = l[0].getElementsByTagName('a')[2].innerHTML;}
else if (l[0].getElementsByTagName('a')[1])
{var lt = l[0].getElementsByTagName('a')[1].innerHTML;}
else if (l[0].getElementsByTagName('a')[0])
{var lt = l[0].getElementsByTagName('a')[0].innerHTML;}
if (lt.indexOf('January ') != -1)
{var Month = 'January'; var Mval = 1; var Day = lt.split('January ')[1].split(',')[0]; var Year = lt.split('January ')[1].split(', ')[1]; var Time = lt.split(', January ')[0];}
else if (lt.indexOf('February ') != -1)
{var Month = 'February'; var Mval = 2; var Day = lt.split('February ')[1].split(',')[0]; var Year = lt.split('February ')[1].split(', ')[1]; var Time = lt.split(', February ')[0];}
else if (lt.indexOf('March ') != -1)
{var Month = 'March'; var Mval = 3; var Day = lt.split('March ')[1].split(',')[0]; var Year = lt.split('March ')[1].split(', ')[1]; var Time = lt.split(', March ')[0];}
else if (lt.indexOf('April ') != -1)
{var Month = 'April'; var Mval = 4; var Day = lt.split('April ')[1].split(',')[0]; var Year = lt.split('April ')[1].split(', ')[1]; var Time = lt.split(', April ')[0];}
else if (lt.indexOf('May ') != -1)
{var Month = 'May'; var Mval = 5; var Day = lt.split('May ')[1].split(',')[0]; var Year = lt.split('May ')[1].split(', ')[1]; var Time = lt.split(', May ')[0];}
else if (lt.indexOf('June ') != -1)
{var Month = 'June'; var Mval = 6; var Day = lt.split('June ')[1].split(',')[0]; var Year = lt.split('June ')[1].split(', ')[1]; var Time = lt.split(', June ')[0];}
else if (lt.indexOf('July ') != -1)
{var Month = 'July'; var Mval = 7; var Day = lt.split('July ')[1].split(',')[0]; var Year = lt.split('July ')[1].split(', ')[1]; var Time = lt.split(', July ')[0];}
else if (lt.indexOf('August ') != -1)
{var Month = 'August'; var Mval = 8; var Day = lt.split('August ')[1].split(',')[0]; var Year = lt.split('August ')[1].split(', ')[1]; var Time = lt.split(', August ')[0];}
else if (lt.indexOf('September ') != -1)
{var Month = 'September'; var Mval = 9; var Day = lt.split('September ')[1].split(',')[0]; var Year = lt.split('September ')[1].split(', ')[1]; var Time = lt.split(', September ')[0];}
else if (lt.indexOf('October ') != -1)
{var Month = 'October'; var Mval = 10; var Day = lt.split('October ')[1].split(',')[0]; var Year = lt.split('October ')[1].split(', ')[1]; var Time = lt.split(', October ')[0];}
else if (lt.indexOf('November ') != -1)
{var Month = 'November'; var Mval = 11; var Day = lt.split('November ')[1].split(',')[0]; var Year = lt.split('November ')[1].split(', ')[1]; var Time = lt.split(', November ')[0];}
else if (lt.indexOf('December ') != -1)
{var Month = 'December'; var Mval = 12; var Day = lt.split('December ')[1].split(',')[0]; var Year = lt.split('December ')[1].split(', ')[1]; var Time = lt.split(', December ')[0];}
var point = Time.length - 5;
Timenum = Time.substring(point);
Simpletime = 1*(Timenum.split(":")[0]);
var TimeM = (Timenum.split(":")[1]);
Time = Simpletime + (TimeM/60);
j=i-1;
if (l[j].innerHTML.indexOf('January ') != -1)
{var LMonth = 'January'; var LMval = 1; var LDay = l[j].innerHTML.split('January ')[1].split(',')[0]; var LYear = l[j].innerHTML.split('January ')[1].split(', ')[1]; var LTime = l[j].innerHTML.split(', January ')[0];}
else if (l[j].innerHTML.indexOf('February ') != -1)
{var LMonth = 'February'; var LMval = 2; var LDay = l[j].innerHTML.split('February ')[1].split(',')[0]; var LYear = l[j].innerHTML.split('February ')[1].split(', ')[1]; var LTime = l[j].innerHTML.split(', February ')[0];}
else if (l[j].innerHTML.indexOf('March ') != -1)
{var LMonth = 'March'; var LMval = 3; var LDay = l[j].innerHTML.split('March ')[1].split(',')[0]; var LYear = l[j].innerHTML.split('March ')[1].split(', ')[1]; var LTime = l[j].innerHTML.split(', March ')[0];}
else if (l[j].innerHTML.indexOf('April ') != -1)
{var LMonth = 'April'; var LMval = 4; var LDay = l[j].innerHTML.split('April ')[1].split(',')[0]; var LYear = l[j].innerHTML.split('April ')[1].split(', ')[1]; var LTime = l[j].innerHTML.split(', April ')[0];}
else if (l[j].innerHTML.indexOf('May ') != -1)
{var LMonth = 'May'; var LMval = 5; var LDay = l[j].innerHTML.split('May ')[1].split(',')[0]; var LYear = l[j].innerHTML.split('May ')[1].split(', ')[1]; var LTime = l[j].innerHTML.split(', May ')[0];}
else if (l[j].innerHTML.indexOf('June ') != -1)
{var LMonth = 'June'; var LMval = 6; var LDay = l[j].innerHTML.split('June ')[1].split(',')[0]; var LYear = l[j].innerHTML.split('June ')[1].split(', ')[1]; var LTime = l[j].innerHTML.split(', June ')[0];}
else if (l[j].innerHTML.indexOf('July ') != -1)
{var LMonth = 'July'; var LMval = 7; var LDay = l[j].innerHTML.split('July ')[1].split(',')[0]; var LYear = l[j].innerHTML.split('July ')[1].split(', ')[1]; var LTime = l[j].innerHTML.split(', July ')[0];}
else if (l[j].innerHTML.indexOf('August ') != -1)
{var LMonth = 'August'; var LMval = 8; var LDay = l[j].innerHTML.split('August ')[1].split(',')[0]; var LYear = l[j].innerHTML.split('August ')[1].split(', ')[1]; var LTime = l[j].innerHTML.split(', August ')[0];}
else if (l[j].innerHTML.indexOf('September ') != -1)
{var LMonth = 'September'; var LMval = 9; var LDay = l[j].innerHTML.split('September ')[1].split(',')[0]; var LYear = l[j].innerHTML.split('September ')[1].split(', ')[1]; var LTime = l[j].innerHTML.split(', September ')[0];}
else if (l[j].innerHTML.indexOf('October ') != -1)
{var LMonth = 'October'; var LMval = 10; var LDay = l[j].innerHTML.split('October ')[1].split(',')[0]; var LYear = l[j].innerHTML.split('October ')[1].split(', ')[1]; var LTime = l[j].innerHTML.split(', October ')[0];}
else if (l[j].innerHTML.indexOf('November ') != -1)
{var LMonth = 'November'; var LMval = 11; var LDay = l[j].innerHTML.split('November ')[1].split(',')[0]; var LYear = l[j].innerHTML.split('November ')[1].split(', ')[1]; var LTime = l[j].innerHTML.split(', November ')[0];}
else if (l[j].innerHTML.indexOf('December ') != -1)
{var LMonth = 'December'; var LMval = 12; var LDay = l[j].innerHTML.split('December ')[1].split(',')[0]; var LYear = l[j].innerHTML.split('December ')[1].split(', ')[1]; var LTime = l[j].innerHTML.split(', December ')[0];}
var lpoint = LTime.length - 5;
LTimenum = LTime.substring(lpoint);
LSimpletime = 1*(LTimenum.split(":")[0]);
var LTimeM = (LTimenum.split(":")[1]);
LTime = LSimpletime + (LTimeM/60);
var E = i;
var RU = E-IP;
var OU = E-IP-NU-SYS-BOT;
var UN = IP+NU;
var ESUM = 100*(E - NS)/E;
Year = Year.split(' ')[0].split('</a>')[0];
LYear = LYear.split(' ')[0].split('</a>')[0];
var cmothr = CDay - 1 + (CTime/24);
var mothr = Day - 1 + (Time/24);
var mothl = 30.42 - (LDay - 1 + LTime/24);
if (CYear == LYear)
{
var cmdiff = 30.42*(CMval - LMval - 1);
var ctotdays = cmothr + mothl + cmdiff;
if (CMval == LMval)
{ctotdays = CDay - 1 + CTime/24 - (LDay - 1 + LTime/24);}
var caverage = E/ctotdays;
}
if (CYear != LYear)
{
var cydiff = 365*(CYear - LYear - 1);
var cyearr = 30.42*(CMval - 1) + cmothr;
var yearl = 30.42*(12 - LMval - 1) + mothl;
var ctotdays = cyearr + cydiff + yearl;
var caverage = E/ctotdays;
}
if (Year == LYear)
{
var mdiff = 30.42*(Mval - LMval - 1);
var totdays = mothr + mothl + mdiff;
if (Mval == LMval)
{totdays = Day - 1 + Time/24 - (LDay - 1 + LTime/24);}
var average = E/totdays;
var rvaverage = R/totdays;
var nonrvave = average - rvaverage;
}
if (Year != LYear)
{
var ydiff = 365*(Year - LYear - 1);
var cydiff = 365*(CYear - LYear - 1);
var yearr = 30.42*(Mval - 1) + mothr;
var cyearr = 30.42*(CMval - 1) + cmothr;
var yearl = 30.42*(12 - LMval - 1) + mothl;
var totdays = yearr + ydiff + yearl;
var ctotdays = cyearr + cydiff + yearl;
var average = E/totdays;
var caverage = E/ctotdays;
var rvaverage = R/totdays;
var nonrvave = average - rvaverage;
}
var Daylength = Math.round((1)*totdays)/1;
if (totdays < 1)
{
Daylength = 1;
}
if (i == 1)
{
document.getElementById('bodyContent').innerHTML = '<span style="color:blue;"><strong>There are no article modification statistics to show since there is only one edit.</span></strong><br>' + firstbody;
return;
}
var avenotice = '';
//wow..statistics people
var caverage = Math.round((1000)*caverage)/1000;
if (location.href.split("&offset=")[1] != undefined)
{
if (location.href.split("&offset=0")[1] != undefined)
{
var offset = 'no';
}
else
{
caverage = '<strong>[Value unknown]*</strong>';
avenotice = '<strong>*Average edits per day not shown because the most recent edit to this page is not visable</strong><br>';
var offset = 'yes';
}
}
document.getElementById('bodyContent').innerHTML = '<span style="color:blue;"><strong>Viewing article modification statistics (from the </span>' + E + ' <span style="color:blue;">edits shown on this page):</span>' + '<br>' + Math.round((100)*R/E*100)/100 + '%<span style="color:darkred;"> marked reverts (any)</span></strong> (' + R + ' edit(s))<strong>' + '<br>'+ Math.round((100)*V/E*100)/100 + '%<span style="color:red;"> probable reverts of vandalism</span></strong> (' + V + ' edit(s))<br>' + '<span style="color:blue;"><strong>User statistics for these edits:</span><br> ' + Math.round((100)*IP/E*100)/100 + '% <span style="color:darkred;">IP/anon edits </span></strong> (' + IP + ' edit(s))<br><strong>' + Math.round((100)*NU/E*100)/100 + '% likely new user edits </strong> (' + NU + ' edit(s))<br><strong>' + Math.round((100)*(OU)/E*100)/100 + '%<span style="color:darkblue;"> likely older user edits (non-admin/bot) </strong></span> (' + (OU) + ' edit(s))<br><strong>' + Math.round((100)*SYS/E*100)/100 + '%<span style="color:blue;"> administrator edits </strong></span> (' + SYS + ' edit(s))<br><strong>' + Math.round((100)*BOT/E*100)/100 + '%<span style="color:purple;"> bot edits </strong></span> (' + BOT + ' edit(s))<br>' + '<span style="color:blue;"><strong>Time range:</span><br>' + Daylength + ' approximate day(s) of edits on this page</strong></span><br> ' + 'Most recent edit on: ' + Simpletime + 'hr (UTC) -- ' + Day + ', ' + Month + ', ' + Year + '<br>' + 'Oldest edit on: ' + LSimpletime + 'hr (UTC) -- ' + LDay + ', ' + LMonth + ', ' + LYear + '<br>' + 'Current time: ' + CSimpletime + 'hr (UTC) -- ' + CDay + ', ' + CMonth + ', ' + CYear + '<br>' + '<span style="color:blue;"><strong>Averages:</span><br> ' + Math.round((100)*ESUM)/100 + '% edit summary usage<br>' + caverage + ' edit(s) per day (current)<br>' + Math.round((1000)*average)/1000 + ' edit(s) per day (since last active)<br>' + Math.round((1000)*rvaverage)/1000 + '<span style="color:darkred;"> marked revert(s) per day (since last active)</strong></span><br>' + '<strong>1<span style="color:darkred;"> : </span>' + Math.round((100)*rvaverage/nonrvave)/100 + '<span style="color:darkred;"> regular edit to marked revert ratio (RE:RV)</strong></span><br>' + avenotice + oldbody;
return;
}
//END
//From User:JesseW/monobook.js
function addSinceTab()
{
var tabs = document.getElementById('p-cactions').getElementsByTagName('ul')[0];
if (window.location.href.indexOf("&limit=200&action=history&gotosince=true")!=-1)
{
do_since_I_last_edited()
}
else if (location.href.indexOf("&action=history") != -1)
{
var thetitle=document.title.slice(0, String(document.title).indexOf(" - "));
thetitle = thetitle.replace('&','%26').replace('&','%26').replace('&','%26').replace('&','%26');
var l=addlilink(tabs, "/w/index.php?title="+thetitle+"&limit=200&action=history&gotosince=true", 'since', '');
l.lastChild.title="Changes since I last edited";
}
}
//END
function do_since_I_last_edited()
{
var undefined;
var csub=document.getElementById("contentSub");
var msg=document.createElement("p");
msg.appendChild(document.createTextNode
("Parsing history... please wait..."));
msg.className="error";
csub.insertBefore(msg, csub.firstChild)
var go = 'no';
var username = document.getElementById('pt-userpage').getElementsByTagName('a')[0].innerHTML;
var hists = document.getElementById('bodyContent').getElementsByTagName('li');
var findcheck = document.getElementById('bodyContent');
if (hists[0].getElementsByTagName('a')[2].innerHTML == username)
{msg.replaceChild(document.createTextNode("You were the last person to edit this page!"),msg.firstChild);; return;}
for (var n=0; n<hists.length; n++)
{
if (hists[n].getElementsByTagName('a')[3])
{
if (hists[n].getElementsByTagName('a')[3].innerHTML == username)
{
hists[n].getElementsByTagName('input')[0].checked=true;
if (n == 0){msg.replaceChild(document.createTextNode
("You were the last person to edit this page!"),
msg.firstChild);; return;}
location.href = hists[n].getElementsByTagName('a')[0].href;
return;
}
}
else if (hists[n].getElementsByTagName('a')[2])
{
if (hists[n].getElementsByTagName('a')[2].innerHTML == username)
{
if (n == 0){msg.replaceChild(document.createTextNode
("You were the last person to edit this page!"),
msg.firstChild);;}
return;
}
}
}
msg.replaceChild(document.createTextNode
("You have not recently edited this page!"),
msg.firstChild);
}
//END
//</nowiki></pre>