User:Misza13/Scripts/StubSorting

// //STUB SORTING FUNCTIONS

function TagAsStub (stubname) { //TODO: add some real content here (but that's trivial actually with Lupin's popups' autoediting) alert("This article would get tagged with ."); }

var stub_xmlhttp; var StubDiv; var StubLog;

function LoadStubMenu1 { //Create the which will hold all related stuff... var content = document.getElementById('content'); StubDiv = document.createElement('div'); StubDiv.style.padding = "10px"; content.insertBefore(StubDiv,content.firstChild); StubLog = document.createElement('div'); StubDiv.appendChild(StubLog); //Fetch the tools... StubLog.innerHTML = 'Fetching stubs...'; stub_xmlhttp = HTTPClient; if (!stub_xmlhttp) return; stub_xmlhttp.open('GET', 'http://en.wikipedia.org/w/index.php?title=User:Misza13/StubList', true); stub_xmlhttp.onreadystatechange = LoadStubMenu2; stub_xmlhttp.send(null); }

function LoadStubMenu2 { if (stub_xmlhttp.readyState != 4) return; StubLog.innerHTML += ' done. Linkifying...'; // Hack for a MediaWiki bug stub_xml = stub_xmlhttp.responseText.replace(//, ''); stub_doc = gml_XMLParse(stub_xml); var stublist = stub_doc.getElementById('StubList_div'); StubDiv.appendChild(stublist);

LIs = document.evaluate(   "//*[@class='stubLI']",    document,    null,    XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE,    null); for (i = 0; i < LIs.snapshotLength; i++) { li = LIs.snapshotItem(i); textNode = li.firstChild; linkRegex = /(.*)\|(.*)/; data = linkRegex.exec(textNode.textContent); A = document.createElement('a'); A.href = 'javascript:TagAsStub("'+data[1]+'");'; A.appendChild(document.createTextNode(data[2])); li.replaceChild(A,textNode); }

StubDiv.removeChild(StubLog); //Remove the button var stubloader = document.getElementById('stubloader'); stubloader.parentNode.removeChild(stubloader); }

$(function{ var tabs = document.getElementById('p-cactions').getElementsByTagName('ul')[0];  addlilink(tabs,'javascript:LoadStubMenu1','Load stub types','stubloader'); }); //