User:ProgrammingGeek/afc-diff.js

function getElementsByClass(searchClass, node, tag) { var classElements = new Array; if ( node == null ) node = document; if ( tag == null ) tag = '*'; var els = node.getElementsByTagName(tag); var elsLen = els.length; var pattern = new RegExp("(^|\\s)"+searchClass+"(\\s|$)"); for (i = 0, j = 0; i < elsLen; i++) { if ( pattern.test(els[i].className) ) { classElements[j] = els[i]; j++; } }  return classElements; }

function getDiff { var pathname = window.location.pathname.replace('wiki/', 'index.php?title='); var diffUri = 'https://en.wikipedia.org/'+pathname+'&action=history'; var link = getElementsByClass('mw-changeslist-date', diffUri, 'li')[0].href; var deleted = getElementsByClass('diff-deletedline', link, 'td'); var added = getElementsByClass('diff-addedline', link, 'td'); var addtext = ' '; var deltext = ' '; deleted.forEach(function(element){   deltext += '  '+element+'  ';  }); deltext += ' '; added.forEach(function(element){   addtext += '  '+element+'  ';  }); addtext += ' '; document.getElementById('contentSub').innerHTML = ' '; } addOnloadHook(function { if (location.href.match('Draft:') || location.href.match('User:')) {    getDiff;  } });