User:Raylu/monobook.js

/* */ 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); na.accesskey = key; var pref = 'alt-'; if(((clientPC.indexOf('AppleWebKit')!=-1) && (clientPC.indexOf('spoofer')==-1)) || navigator.userAgent.toLowerCase.indexOf( 'mac' ) != -1 ) pref = 'control-'; if(clientPC.indexOf('opera')!=-1) pref = 'shift-esc-'; if(key && title) na.title = title + ' [' + pref + key + ']'; else if(title) na.title = title; else if(key) na.title = '[' + pref + key + ']'; 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); }

function getPname { z=document.getElementById("content").childNodes; for (var n=0;n<z.length;n++) { if (z[n].className=="firstHeading") return z[n].textContent; }; }

// ========== Quick Wikify ========== function doQwikify { document.editform.wpTextbox1.value = '{' + '{' + 'Wikify-date|' + '{' + '{' + 'subst:CURRENTMONTHNAME}} ' + '{' + '{' + 'subst:CURRENTYEAR}}}}\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); }

// ========== Quick deWikify ========== function doDeWikify { var cText = document.editform.wpTextbox1.value; var startL = cText.indexOf('{'+'{'+'Wikify'); var endL = cText.indexOf('}'+'}', startL) + 2; while (cText.substr(endL, 1) == "\n") endL++; //remove blank lines document.editform.wpTextbox1.value = cText.substring(0, startL); document.editform.wpTextbox1.value += cText.substr(endL);

document.editform.wpSummary.value = 'Removed wikify'; document.editform.wpMinoredit.checked = true; document.editform.submit; }

addOnloadHook(function { if (mw.config.get('wgCanonicalNamespace') == "User" || mw.config.get('wgCanonicalNamespace') == "User_talk")     return;  if (document.editform) {     mw.util.addPortletLink("p-cactions", "javascript:doDeWikify", "dewikify", "ca-dewikify", "Remove wikification need", "");  } });

// ========== Quick Speedy delete ========== function doQsd { document.editform.wpTextbox1.value = "\n\n" + document.editform.wpTextbox1.value; document.editform.wpSummary.value = "Marked for speedy deletion."; document.editform.submit; } function addQsd { addTab("javascript:doQsd", "sd", "ca-sd", "Mark for speedy deletion", ""); akeytt; }

if (document.title.indexOf("Editing ") == 0) { if (window.addEventListener) window.addEventListener("load", addQsd, false); else if (window.attachEvent) window.attachEvent("onload", addQsd); }

// ========== Edit Section 0 ========== function addEditSection0 { ta['ca-edit-0'] = ['', 'Edit the zeroth section of this page']; if (!document.getElementById) return; x = document.getElementById('ca-edit'); if(!x) return; y = document.createElement('LI'); y.id = 'ca-edit-0'; if (x.className == 'selected') { if (/&action=edit&section=0$/.test(window.location.href)) { x.className = 'istalk'; y.className = 'selected'; } else { x.className = 'selected istalk'; } } else if (x.className == 'selected istalk') { if (/&action=edit&section=0$/.test(window.location.href)) { x.className = 'istalk'; y.className = 'selected istalk'; } else { y.className = 'istalk'; } } else { y.className = x.className; x.className = 'istalk'; } z = document.createElement('A'); if (x.children) { z.href = x.children[0].href + '&section=0'; z.appendChild(document.createTextNode('0')); y.appendChild(z); document.getElementById('p-cactions').children[1].insertBefore(y,x.nextSibling); } else { z.href = x.childNodes[0].href + '&section=0'; z.appendChild(document.createTextNode('0')); y.appendChild(z); document.getElementById('p-cactions').childNodes[3].insertBefore(y,x.nextSibling); } }

if (document.title.indexOf("Editing ") == -1) { if (window.addEventListener) window.addEventListener("load", addEditSection0, false); else if (window.attachEvent) window.attachEvent("onload", addEditSection0); }

// ========== Add Last Diff ==========

function doLastDiff { var nurl="http://en.wikipedia.org/w/index.php?title=" + getPname + "&diff=cur&oldid=prev"; document.location=nurl } function addLastDiff { var tabs = document.getElementById('p-cactions').getElementsByTagName('ul')[0]; var l=addlilink(tabs, "javascript:doLastDiff", 'last', ''); l.lastChild.title="Show most recent diff"; }

if (window.addEventListener) window.addEventListener("load", addLastDiff, false); else if (window.attachEvent) window.attachEvent("onload", addLastDiff); /* */