User:DESiegel/monobook.js/addons
From Wikipedia, the free encyclopedia
// This will add an [edit top] link at the top of all pages except preview pages // by User:Pile0nades
setTimeout("editTopLink()", 0) // this is equivalent of onload function editTopLink() {
// if this is preview page or generated page, stop if(document.getElementById("wikiPreview") || window.location.href.indexOf("w/index.php?title=Special:") != -1) return;
// get the page title var pageTitle = document.title.split(" - ")[0].replace(" ", "_");
// create div and set innerHTML to link var divContainer = document.createElement("div");
divContainer.innerHTML = '
';
// insert divContainer into the DOM before the h1 document.getElementById("content").insertBefore(divContainer, document.getElementsByTagName("h1")[0]);
}
// //Add purge to tabs function addPurge(){
ta['ca-purge'] = ['g', 'Purge the internal cache for this page']; var x = document.getElementById('ca-history'); if(!x) return; if(x.children) x = x.children[0].href; else x = x.childNodes[0].href; addTab(x.replace(/=history/, "=purge"), 'purge', 'ca-purge'); akeytt();
}
if (window.addEventListener) window.addEventListener("load", addPurge, false); else if (window.attachEvent) window.attachEvent("onload", addPurge);
//
//Changes since I last edited //From http://en.wikipedia.org/w/index.php?title=User:JesseW/monobook.js&oldid=20755510 function addSinceTab() {
var tabs = document.getElementById('p-cactions').getElementsByTagName('ul')[0]; if (window.location.href.indexOf("&action=history&gotosince=true")!=-1) { do_since_I_last_edited() } else if (!/wiki\/Special:|w\/index.php?title=Special:/.test(window.location.href)) { var thetitle=document.title.slice(0, String(document.title).indexOf(" - ")); var l=addlilink(tabs, "/w/index.php?title="+thetitle+"&action=history&gotosince=true", 'since', ); l.lastChild.title="Changes since I last edited"; }
} function do_since_I_last_edited() {
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 username=document.getElementById("pt-userpage").textContent; var hists=document.getElementById("pagehistory").childNodes; for (n=0;n<hists.length;n++) { if (hists[n].getElementsByTagName("span")[0].textContent==username) { document.location=hists[n].childNodes[1].href; return; } }
msg.replaceChild(document.createTextNode ("You have not edited this page! (recently)"), msg.firstChild);
}
if (window.addEventListener) window.addEventListener("load", addSinceTab, false); else if (window.attachEvent) window.attachEvent("onload", addSinceTab);
//
// If you are editing a page, click the wikify button on your tab bar to add "Template:Wik"+"ify" to the top, set "Marked for wikification." as the edit summary, mark it as a minor edit, and submit.
function doQwikify() {
document.editform.wpTextbox1.value = "Template:Wik"+"ify\n\n" + document.editform.wpTextbox1.value; document.editform.wpSummary.value = "Marked for wikification."; document.editform.wpMinoredit.checked = true; document.editform.submit();
} function addQwikify() {
addTab("javascript:doQwikify()", "wikify", "ca-wikify", "Mark for wikification", ""); akeytt();
}
if (document.title.indexOf("Editing ") == 0) {
if (window.addEventListener) window.addEventListener("load", addQwikify, false); else if (window.attachEvent) window.attachEvent("onload", addQwikify);
}
// by raylu //
//Auto AFD script
//Please include the two following lines //Modified version of AutoVFD script to work with AFD //Script Modified by User:Jtkiefer
// This needs to change depending on skin used. function add_link(url, name) {
var na = document.createElement('a'); na.setAttribute('href', url); na.appendChild(document.createTextNode(name)); var li = document.createElement('li'); li.appendChild(na); var tabs = document.getElementById('p-cactions').getElementsByTagName('ul')[0]; tabs.appendChild(li);
}
function strip_namespace(target) {
var colon = target.indexOf(':'); if (colon != -1) { var spaces = new Array('User', 'Wikipedia', 'Image', 'MediaWiki', 'Template', 'Help', 'Category'); var ns = target.substring(0, colon); if (ns == || ns == 'Talk') return target.substring(colon + 1); else for (var i = 0; i < spaces.length; ++i) { if (ns == spaces[i] || ns == spaces[i] + '_talk') return target.substring(colon + 1); } } return target;
}
function afd() {
document.editform.wpTextbox1.value = 'Template:' + 'subst:afd\n' + document.editform.wpTextbox1.value; document.editform.wpSummary.value = 'afd'; var target = document.editform.action; target = target.substring(target.indexOf('title=') + 6, target.lastIndexOf('&action=submit')); var months = new Array('January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'); var date = new Date(); date = date.getUTCFullYear() + '_' + months[date.getUTCMonth()] + '_' + date.getUTCDate(); var pagename = strip_namespace(target); window.open('/w/index.php?title=Wikipedia:Articles_for_deletion/' + pagename + '&action=edit&fakeaction=afdsub&faketarget=' + target, 'Afd ' + unescape(target), 'status,toolbar,location,menubar,directories,resizeable,scrollbars'); window.open('/w/index.php?title=Wikipedia:Articles_for_deletion/Log/' + date + '&action=edit&fakeaction=afdlist&faketarget=' + pagename, 'AfdLog ' + unescape(target), 'status,toolbar,location,menubar,directories,resizeable,scrollbars');
}
function autoafd() {
if (document.title.indexOf('Editing ') == 0) { var action = ; var target = ; if (location.search) { var l = location.search.substring(1).split('&'); for (var i = 0; i < l.length; ++i) { var eq = l[i].indexOf('='); var name = l[i].substring(0, eq); if (name == 'fakeaction') action = l[i].substring(eq + 1); else if (name == 'faketarget') target = unescape(l[i].substring(eq + 1)).replace(/_/g, ' '); } } if (action == 'afdlist') { document.editform.wpTextbox1.value += 'Template:' + 'Wikipedia:Articles for deletion/' + target + '\n'; document.editform.wpSummary.value = 'Wikipedia:Articles for deletion/' + target + ''; } else if (action == 'afdsub') { if (document.editform.wpTextbox1.value.length > 0) { target = document.editform.action; target = unescape(target.substring(target.indexOf('title=') + 6, target.lastIndexOf('&action=submit'))).replace(/_/g, ' '); window.alert("There's an old afd at the default location already.\n\n" + 'Please either move it out of the way (and update existing links to it), or file the Afd by hand in another location (such as ' + target + ' (2)).'); } else document.editform.wpTextbox1.value += '===' + target + '===\n' + 'Reason for nomination. ~~' + '~~\n*\n*\n*\n'; } else add_link('javascript:afd()', 'Afd'); }
}
if (window.addEventListener)
window.addEventListener('load', autoafd, false);
else if (window.attachEvent)
window.attachEvent('onload', autoafd);
// **** Functions called by Modules ****
function addlilink(tabs, url, name, id, title, key){
var na = document.createElement('a'); na.href = url; na.appendChild(document.createTextNode(name)); var li = document.createElement('li'); if(id) li.id = id; li.appendChild(na); tabs.appendChild(li); if(id) { if(key && title) { ta[id] = [key, title]; } else if(key) { ta[id] = [key, ]; } else if(title) { ta[id] = [, title]; } } // re-render the title and accesskeys from existing code in wikibits.js akeytt(); return li;
}
//
function addTab(url, name, id, title, key){
var tabs = document.getElementById('p-cactions').getElementsByTagName('ul')[0]; addlilink(tabs, url, name, id, title, key);
} //