User:Yamakiri on Firefox/deluxe.js

addPortletLink ('p-tb', location.href+'/monobook.js', 'monobook');

addOnloadHook(autoNewSectionName); addOnloadHook(addReplyLinks);

// // Settings // var hrefUserAnonim = wgServer + '/wiki/Special:Contributions/'; var hrefUserSpaced = wgServer + '/wiki/User:'; var hrefUserSpacedNew = wgServer + '/w/index.php\\?title=User:'; var hrefUserTalkSpaced = wgServer + '/wiki/User_talk:'; var textReplyShort = 'Re:'; var textNoHeadShort = 'Ad:'; var textReplyLinkName = 'reply';

/* ===================================================== *\	Function: autoNewSectionName Inserting new section and backword link from the location string param. Params --		newsectionname - passed through the location string of the page \* ===================================================== */ function autoNewSectionName {	//	// Get input element for section name (now understood as the textbox) //	var elInput = document.getElementById('wpTextbox1'); if (elInput) {		//		// Get data send from previous page //		var reParam = new RegExp ("&newsectionname=([^&]*)", "i");	// ignoring lettercase var matches = reParam.exec(location.search); var sectxt; // append to input if all OK		if (matches) {			sectxt = decodeURIComponent(matches[1]); elInput.value += ';'+sectxt+'\n\n'; }		//		// Add some summary elInput = document.getElementById('wpSummary'); if (elInput) {			matches = /[ ](.*)\]/.exec(sectxt); // append to input if all OK			if (matches) elInput.value += decodeURIComponent(matches[1]) ;		}	} }

/* ===================================================== *\	Function: addReplyLinks Adding reply links near user links. Problemy: * nie działa dla IE (błędy kodowania UTF-8) Params --		none \* ===================================================== */ function addReplyLinks {	//	// When to run this... //	// if (!document.getElementById('t-permalink') && !document.getElementById('t-ispermalink') )	// almost always if (wgCurRevisionId==0)	// no versioning available return ;

var i;

//	// Get viewed page version link (may be something in history) //	// this one means it is a perma link (comparing versions, showing one specfic version and such) if (document.getElementById('t-ispermalink')) {		var hrefPermalink = document.location.href; }	// get latest else {		var hrefPermalink = ''; }	//	// Get some places to put this into and puting this //	var reHref = new RegExp (hrefUserSpaced + "([^/]*)$", "i");	// with ignore case var reHrefNew = new RegExp (hrefUserSpacedNew + "([^/?&]*)", "i");	// with ignore case var reHrefAnonim = new RegExp (hrefUserAnonim + "([\.0-9]*)$"); //	// getting first header name for default tags var secAbove = new Object; secAbove.id = 'bodyContent'; secAbove.text = parseSectionText(document.getElementById('content').getElementsByTagName('H1')[0].innerHTML); var secReplyText = textNoHeadShort; //	// get every link with href="http://pl.wikipedia.org/wiki/Wikipedysta:..." (no slashes in dots) var a = document.getElementById('bodyContent').getElementsByTagName('A'); for (i = 0; i < a.length; i++) { //		if (secAbove) //		{			//			// checking if this is a user link if (a[i].href != '' && a[i].getAttribute('href').indexOf('#')==-1) {				if (a[i].className=='new') {					var matches = reHrefNew.exec(a[i].href); }				else {					var matches = reHref.exec(a[i].href); }				if (!matches) {					matches = reHrefAnonim.exec(a[i].href); }

if (matches) {					//					// creating reply href // var userName = matches[1]; var hrefReply = hrefUserTalkSpaced + matches[1] + '?action=edit&section=new'; //					// and now to create and add data for the new reply section name var newSectionName = '['+hrefPermalink+'#'+secAbove.id+' '+secReplyText+secAbove.text+']'; hrefReply += '&newsectionname=' + encodeURIComponent(newSectionName); var newEl = document.createElement('small'); var newA = document.createElement('A'); newA.setAttribute('href', hrefReply); newA.setAttribute('title', textReplyShort+secAbove.text); newA.appendChild(document.createTextNode('['+textReplyLinkName+']')) newEl.appendChild(newA); insertAfterGivenElement(a[i],newEl); i++;	// a is a dynamic list }			} //		}		//		// obtaining anchor and text of the section above user links if (a[i].name != '' && wgCanonicalNamespace!="Image") // skip obtaining headers in image pages {			// going to header element text var header; if (a[i].parentNode.nextSibling.nodeType == document.TEXT_NODE) // FF				header = a[i].parentNode.nextSibling.nextSibling else // IE				header = a[i].parentNode.nextSibling ;			// check if this is the right element - if not skip if (header) if (header.nodeType == document.ELEMENT_NODE) {				secAbove.id = a[i].name; // sometimes there could be a link in the header (maybe some more) secAbove.text = parseSectionText(header.innerHTML); // should be set only once (as it is always the same), but let's leave it that way secReplyText = textReplyShort; }		}	} }

/* ===================================================== *\	Function: insertAfterGivenElement Inserting "newEl" element after given "el" element. Params --		el - element object to insert after newEl - (new) element object to insert \* ===================================================== */ function insertAfterGivenElement(el, newEl) { if (el.nextSibling) {		el.parentNode.insertBefore(newEl, el.nextSibling); }	else {		el.parentNode.appendChild(newEl); } }

/* ===================================================== *\	Function: [obsolete] stripHtmlTags Stripping HTML tags from the HTML text. Returns stripped text. Params --		html - the html text \* ===================================================== */ function stripHtmlTags(html){ return html.replace(/<\S[^<>]*>/g, ''); // with global match (all will be replaced) }

/* ===================================================== *\	Function: parseSectionText Stripping HTML tags from the HTML text and cleansing of some wikicode Returns stripped text. Params --		html - the html text \* ===================================================== */ function parseSectionText(html){ // with global match (all will be replaced) html = html.replace(/<\S[^<>]*>/g, ''); // replace cut anything in brackets [] (editing sections links and such) html = html.replace(/\^\*\]/,''); // replace wiki stuff with null html = html.replace(/[\{\}]/g,''); // trim (right,left) html = html.replace(/[ \t]*$/,).replace(/^[ \t]*/,); return html }

//

//From http://en.wikipedia.org/w/index.php?title=User:JesseW/monobook.js&oldid=20755510 function addSinceTab { if (window.location.href.indexOf("&action=history&gotosince=true")!=-1) { do_since_I_last_edited } else if (wgCanonicalNamespace != "Special") { mw.util.addPortletLink("p-cactions", "/w/index.php?title="+wgPageName+"&action=history&gotosince=true", 'since', '', "since"); } } 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").getElementsByTagName('li'); for (n=0;n<hists.length;n++) { if (hists[n].getElementsByTagName("span")[0].getElementsByTagName('a')[0].textContent==username) { document.location=hists[n].childNodes[1].href; return; } }

msg.replaceChild(document.createTextNode ("You have not edited this page! (recently)"), msg.firstChild); }

addOnloadHook(addSinceTab);

//

importScript('User:Voice_of_All/Addtabs/monobook.js'); importScript('User:Misza13/statusChanger.js');

//

// ADD UNWATCH LINKS:

addOnloadHook(function {    if (!wgCanonicalSpecialPageName || wgCanonicalSpecialPageName != "Watchlist") return;    if (!document.forms[0] || !document.forms[0].namespace) return;

//var query_prefix = "title="+encodeURIComponent(mw.config.get('wgPageName'))+"&action=submit&remove=1&id[]="; var query_prefix = "action=unwatch&title=";

// get list of all links in content: var links = document.getElementById('content').getElementsByTagName('a');

// make a static copy of the nodelist and lose the original for speed // while we're at it, prune the uninteresting links from the list var linksCopy = new Array ; for (var i = 0; i < links.length; i++) { if (/[?&]action=history([&#]|$)/.test(links[i].href)) linksCopy.push(links[i]); }   links = linksCopy;

for (var i = 0; i < links.length; i++) { // create unwatch link and append it after history link var unwatch = document.createElement('a'); unwatch.href = mw.config.get('wgServer') + mw.config.get('wgScriptPath') + "/index.php?" + query_prefix + encodeURIComponent(links[i].title); unwatch.title = "Unwatch "+links[i].title; unwatch.appendChild(document.createTextNode("unwatch")); links[i].parentNode.insertBefore(unwatch, links[i].nextSibling);

// insert a delimiter between the two links var delim = links[i].previousSibling; delimText = (delim.nodeType == 3 ? delim.nodeValue : ""); // kluge to handle case where "diff" is unlinked delim = document.createTextNode(delimText.replace(/^.*diff/, "")); links[i].parentNode.insertBefore(delim, unwatch); } });

//

addOnloadHook(function {

var x;  if (!(x = document.getElementById('ca-edit') )) return; var url; if (!(url = x.getElementsByTagName('a')[0] )) return; if (!(url = url.href )) return; var y = mw.util.addPortletLink('p-cactions', url+"&section=0", '0', 'ca-edit-0',                         'Edit the lead section of this page', '0', x.nextSibling);

y.className = x.className; // steal classes from the the edit tab... x.className = 'istalk';    // ...and make the edit tab have no right margin

// exception: don't steal the "selected" class unless actually editing section 0: if (/(^| )selected( |$)/.test(y.className)) { if (!document.editform || !document.editform.wpSection          || document.editform.wpSection.value != "0") { y.className = y.className.replace(/(^| )selected( |$)/g, "$1"); x.className += ' selected'; }  }

});

XEBOrder='A,B,C,D,F,D1,U,S,G,Q,W,K,H,R,FS,P1,R1,R2,R3,R4,Y1,'; rmEditButtons=[1,2,3]; myButtons=[]; // Script from User:MarkS/extraeditbuttons.js importScript('User:MarkS/extraeditbuttons.js'); //User:MarkS/extraeditbuttons.js

addOnloadHook(function{ document.getElementById("ca-edit").firstChild.innerHTML = "Edit";});

importScript('User:Dycedarg/easyprod.js');

importScript('User:Wikidudeman/tags.js');

var FlexiTagConfig = {}; FlexiTagConfig.autosubmit = false; FlexiTagConfig.minoredit = true; FlexiTagConfig.tabs = new Array;

FlexiTagConfig.tabs.push( { name:'Tags', namespace:['Main'], tagset:%date','See [[WP:EL'], ['ActiveDiscuss','ActiveDiscuss'], ['Advert','Advert'], ['cleanup','Adding Cleanup Tag'], ['Contradict','Section or article is contradictory'], ['Copyedit','Copyedit'], ['Disputeabout|%prompt(Point of dispute.)'], ['Merge|%prompt(Merge with)'], ['Mergeto|%prompt(Merged into)'], ['Notenglish|%prompt(language is?)'], ['Underconstruction','Underconstruction'], ['Original research','Original research'], ['POV','POV tag added'], ['POV-section','POV section tag added'], ['trivia','Adding Trivia Section'], ['Uncat','Uncat'], ['Unreferenced','Section is not referenced'], ['Wikify','Wikify needed']] } );

/* */ function welcome { // Find the edit box var txt = document.editform.wpTextbox1; //The welcome template you are wanting to use var welcome_msg = 'welcomeh' // The code to be added to the page var tag = ''; // If the edit box doesn't already have this tag... if (txt.value.indexOf(tag) == -1) { // Append the tag txt.value += tag; // Add an edit summary document.editform.wpSummary.value = 'Welcome to Wikipedia!'; // Press the Save page button document.editform.submit; }    // If the tag was already there, turn the tab background red to indicate // that the script is functioning properly, but that there is no action // to do. This doesn't interrupt the user's work like an alert would. else { document.getElementById('ca-unverified').firstChild.style.backgroundColor = "#ff4444"; document.getElementById('ca-unverified').style.backgroundColor = "#ff4444"; } }

// Create a tab that calls this function when pressed addOnloadHook(function {    if(document.title.indexOf("Editing User talk:") == 0) {        mw.util.addPortletLink('p-cactions', 'javascript:welcome', 'w', 'ca-welcome', 'Adds a welcome note to a new user', , );    } }); /* This is to keep track of who is using this extension: User:Nmajdan/welcome_newuser.js */ /* */

//

addOnloadHook(function { mw.util.addPortletLink('p-tb','/wiki/Special:Log/block','Recent blocks','t-log','Special:Log'); });

addOnloadHook(function { mw.util.addPortletLink('p-tb','/wiki/Special:Log/newusers','Creation log','t-log','Special:Log'); });

addOnloadHook(function { mw.util.addPortletLink('p-tb','/wiki/Special:Log','All logs','t-log','Special:Log'); });

addOnloadHook(function { //add to tb: var now = new Date; var url = ''; var mn = ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December']; url += mw.config.get('wgServer') + mw.config.get('wgScript') + '?title=Wikipedia:Articles_for_deletion/Log/'; url += now.getFullYear + '_' + mn[now.getMonth] + '_' + now.getDate + '&action=edit'; mw.util.addPortletLink('p-tb', url, 'AFD/today', 'ca-afd', 'AFD for today'); });

//

mw.util.addPortletLink( 'p-tb', mw.config.get('wgServer') + mw.config.get('wgArticlePath').replace( '$1', 'Wikipedia:Articles for deletion/Log/' + (new Date).getUTCFullYear + ' ' + (new Date).getUTCMonthName + ' ' + (new Date).getUTCDate ), 'del logs','t-log','Wikipedia' );

// CommonsHelper Helper (CH²) by Krimpet // Released into the public domain function ch2I18N { ch2_wplanguage = "en"; ch2_chlanguage = "en"; ch2_edittitle_Prefix = "Editing Image:"; ch2_edittitle_Postfix = ""; ch2_string_SpecifyNewName = "New Name? (leave blank to keep original):"; ch2_string_UseWikiSense = "Use WikiSense to suggest categories?"; ch2_string_StartCommonsHelper = "Start CommonsHelper"; ch2_string_FinishedUploading = "Click when finished uploading"; ch2_string_Done = "Done! Review everything below to ensure it is correct, and save this page."; ch2_string_MoveToCommons = "MC"; ch2_string_EditSummary = "Moved image to the Wikimedia Commons using CH²"; ch2_template_ncd = "subst:ncd"; ch2_templates_copy = new Array( "Copy to Wikimedia Commons", "Move to Wikimedia Commons", "Move to Commons", "Move to commons", "To Commons", "to Commons" ); ch2_templates_embed = new Array( "PD-USGov-HHS-CDC", "PD-USGov-USDA-ARS" ); } document.write(' ');

//

importScript('User:Cameltrader/All-in-one.js'); //User:Cameltrader/All-in-one.js importScript('User:Wikidudeman/morebits.js'); importScript('User:Azatoth/twinkle.js');

TwinkleConfig = { revertMaxRevisions             :       50, userTalkPageMode               :       'window', showSharedIPNotice             :       true, openTalkPage                   :       [ 'agf', 'norm', 'vand' ], openTalkPageOnAutoRevert       :       false, summaryAd                      :       " using TW", deletionSummaryAd              :       " using TW", protectionSummaryAd            :       " using TW", watchSpeedyPages               :       [], watchProdPages                 :       true, openUserTalkPageOnSpeedyDelete :       [ 'g1', 'g2', 'g10', 'g11', 'g12', 'a1', 'a7', 'i3', 'i4', 'i5', 'i6', 'i7', 'u3', 't1' ], watchRevertedPages             :       [], markRevertedPagesAsMinor       :       [], deleteTalkPageOnDelete         :       false, watchWarnings                  :       false, markAIVReportAsMinor           :       false, markSpeedyPagesAsMinor         :       false, offerReasonOnNormalRevert      :       true, orphanBacklinksOnSpeedyDelete  :       {orphan:true, exclude:['g6']} };

// User:Ais523/votesymbols.js // Code for adding icons to !votes in AfDs, RfAs, etc.. Doesn't affect the page, just // shows the icons when this code is installed. // Please see Image:Votesymbols.js-enhanced_SfD.png for copyright info on the images that are added. function lowerNoPunct(s) { return s.toLowerCase.split('.').join().split(',').join().split(':').join().split(';').join().split('+').join(''); } addOnloadHook(function { if(wgNamespaceNumber==0) return; //avoid article space, generally speaking  var vs=  "http://upload.wikimedia.org/wikipedia/commons/thumb/9/94/Symbol_support_vote.svg/15px-Symbol_support_vote.svg.png#"+  "http://upload.wikimedia.org/wikipedia/commons/thumb/d/d0/Symbol_keep_vote.svg/15px-Symbol_keep_vote.svg.png#"+  "http://upload.wikimedia.org/wikipedia/commons/thumb/7/7f/Symbol_oppose_vote.svg/15px-Symbol_oppose_vote.svg.png#"+  "http://upload.wikimedia.org/wikipedia/commons/thumb/8/89/Symbol_delete_vote.svg/15px-Symbol_delete_vote.svg.png#"+  "http://upload.wikimedia.org/wikipedia/commons/thumb/8/89/Symbol_neutral_vote.svg/15px-Symbol_neutral_vote.svg.png#"+  "http://upload.wikimedia.org/wikipedia/commons/thumb/b/b0/Symbol_merge_vote.svg/15px-Symbol_merge_vote.svg.png#"+  "http://upload.wikimedia.org/wikipedia/commons/thumb/5/50/Symbol_move_vote.svg/15px-Symbol_move_vote.svg.png#"+ "http://upload.wikimedia.org/wikipedia/commons/thumb/0/0c/Symbol_redirect_vote.svg/15px-Symbol_redirect_vote.svg.png#"+ "http://upload.wikimedia.org/wikipedia/commons/thumb/b/ba/Symbol_opinion_vote.svg/15px-Symbol_opinion_vote.svg.png#"+ "http://upload.wikimedia.org/wikipedia/commons/thumb/9/9e/Symbol_comment_vote_2.svg/15px-Symbol_comment_vote_2.svg.png#"+ "http://upload.wikimedia.org/wikipedia/commons/thumb/f/f6/Symbol_unsupport_vote.svg/15px-Symbol_unsupport_vote.svg.png#"+ "http://upload.wikimedia.org/wikipedia/commons/thumb/e/e0/Symbol_question.svg/15px-Symbol_question.svg.png#"+ "http://upload.wikimedia.org/wikipedia/commons/thumb/a/aa/Symbol_divide_vote.svg/15px-Symbol_divide_vote.svg.png#"+ "http://upload.wikimedia.org/wikipedia/commons/thumb/5/54/Symbol_wait.svg/15px-Symbol_wait.svg.png#"+ "http://upload.wikimedia.org/wikipedia/commons/thumb/b/bc/Face-grin.svg/15px-Face-grin.svg.png"; var vt=vs.split("#"); var la=new Array; la['support']=0; la['endorse']=0; la['keep']=1; la['oppose']=2; la['overturn']=2; la['object']=2; la['delete']=3; la['neutral']=4; la['merge']=5; la['upmerge']=5; la['move']=6; la['rename']=6; la['userfy']=6; la['transwiki']=6; la['redirect']=7; la['opinion']=8; la['relist']=8; la['subst']=8; la['salt']=8; la['change']=8; // Note that icon 8 on the list is often used for debate-specific !votes la['comment']=9; la['update']=9; la['note']=9; la['delist']=10; la['question']=11; la['split']=12; la['wait']=13; la['bjaodn']=14; var btc=document.body.getElementsByTagName("B"); i=btc.length; while(i--) {   var j,k; j=btc[i].innerHTML.split("<").join(" ").split(">").join(" ").split("/").join(" ").split(" "); k=0; var x=""; while(k " }     k++; }   if(x!="") btc[i].innerHTML=x+btc[i].innerHTML; } }); //

/**** afd helper ****/ document.write(' ');

/* This is to keep track of who is using this extension: User:Jnothman/afd_helper/script.js */

//  function aivlist(type) { var f = document.editform, t = f.wpTextbox1; if (t.value.length > 0) t.value += '\n'; var ip = prompt("Enter IP address", ""); var reason = prompt("Enter reason for listing", ""); t.value += "* " + reason + "--~" + "~" + "~" ; f.wpSummary.value = "Listing " + ip; f.submit; } addOnloadHook( function addaivlink {  if (document.title.indexOf("Editing Wikipedia:Administrator intervention against vandalism") != -1)  {    mw.util.addPortletLink("p-cactions", "javascript:aivlist('vandal')", "vandal", "ca-vandal", "Report a vandal", "");    mw.util.addPortletLink("p-cactions", "javascript:aivlist('ipvandal')", "ipvandal", "ca-ipvandal", "Report an ipvandal", "");  } } ); //

Script version 2.2.1 Versions 1.0-2.0 in history of User:Sceptre/monobook.js... I think function warn {   var txt = document.editform.wpTextbox1; var prefix = prompt("What is the prefix? Change if appropriate", "uw-") var type = prompt("Which standard warning do you wish to issue?", "test"); var severity = prompt("How severe is the violation?", "1"); var page = prompt("What page?"); var msgtext = "" + page + " "--~" + "~" + "~" ; if(page.length == 0) {page = "Wikipedia"} else { page = ""+page+"" }; var summary = "Your recent edits to " + page ;   document.editform.wpSummary.value = summary;    document.editform.wpMinoredit.checked = true;    if(txt.value.length > 0) txt.value += '\n';    txt.value += msgtext;    document.editform.submit; } /*

importScript('User:Cameltrader/All-in-one.js'); //User:Cameltrader/All-in-one.js importScript('User:Cameltrader/ContactList.js'); //User:Cameltrader/ContactList.js

importScript('User:Lupin/popupsdev.js'); popupQueriedRevertSummary='Reverted intermediate edits to last revision ($1) by $3 (Talk)'; popupRevertSummaryPrompt=false; popupRedlinkRemoval=true; popupFixDabs=true; popupFixDabsSummary='fixing disambiguation %s to %s'; popupRedlinkSummary='removing red-link %s';

// User:Jsimlo/shortcuts.js importScript('User:Jsimlo/shortcuts.js'); function shortcutsInit { shortcutsAddLink ('Prefix index', 'Special:Prefixindex'); }

//user:Where/usertabs

addOnloadHook(function {  if (document.title.search("/") != -1 || document.title.search("- History -") != -1) { //no subpages or history      return;   }   if (document.title.indexOf("User:") == 0 || document.title.indexOf("User talk:") == 0) {      username_a = document.URL.match(/:.*:(.*)/);      username=username_a[1];      addTab("http://en.wikipedia.org/wiki/Special:Contributions/" + username, "contrib", "ca-contrib", "contribs", "");      addTab("http://en.wikipedia.org/w/index.php?title=Special%3ALog&type=move&user=" + username, "page moves", "ca-pagemoves", "page moves", "");      addTab("http://en.wikipedia.org/w/index.php?title=Special%3ALog&type=block&user=" + username, "block log", "ca-blog", "blog", "");      addTab("http://tools.wikimedia.de/~interiot/cgi-bin/count_edits?dbname=enwiki_p&user=" + username, "edit count", "ca-kate", "kate", "");   } }); addOnloadHook(function {  if (document.title.search("/") != -1 || document.title.search("- History -") != -1) { //no subpages or history      return;   }   if (document.title.indexOf("User:") == 0 || document.title.indexOf("User talk:") == 0) {      username_a = document.URL.match(/:.*:(.*)/);      username=username_a[1];      addTab("http://en.wikipedia.org/wiki/Special:Contributions/" + username, "contrib", "ca-contrib", "contribs", "");      addTab("http://en.wikipedia.org/w/index.php?title=Special%3ALog&type=move&user=" + username, "page moves", "ca-pagemoves", "page moves", "");      addTab("http://en.wikipedia.org/w/index.php?title=Special%3ALog&type=block&user=" + username, "block log", "ca-blog", "blog", "");      addTab("http://tools.wikimedia.de/~interiot/cgi-bin/count_edits?dbname=enwiki_p&user=" + username, "edit count", "ca-kate", "kate", "");   } });

if (wgAction == 'history') //add a link to call histComb.js addOnloadHook(function{ var pagehis = document.getElementById('pagehistory'); if (!pagehis) return; var lnk = document.createElement('a'); lnk.style.marginLeft = '10px'; lnk.href = '#'; lnk.appendChild(document.createTextNode('Improve…')); lnk.onclick=function{this.parentNode.removeChild(this);importScript('User:Alex_Smotrov/histcomb.js')} pagehis.parentNode.insertBefore(lnk, pagehis); })

winc('User:Quarl/rollback.js');

//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'); }

importScript('User:Voice_of_All/replacetxt.js'); //wierd stuff importScript('User:Voice_of_All/Specialadmin/monobook.js'); //crat stuff importScript('User:Voice_of_All/Bureaucrat/monobook.js'); importScript('User:Voice_of_All/History/monobook.js'); //Protection stuff importScript('User:Steel359/protection.js'); //rollback importScript('User:Voice_of_All/Revert.js'); //New pages tools importScript('User:Voice_of_All/Sleeper/monobook.js'); importScript('User:Voice_of_All/Adminwarnings/monobook.js'); importScript('User:Voice_of_All/Deletion/monobook.js'); importScript('User:Voice_of_All/Google/monobook.js'); importScript('User:Voice of All/Addtabs/monobook.js'); function addtoolboxlinks {   var tb = document.getElementById('p-tb').getElementsByTagName('ul')[0]; addlilink(tb, '/wiki/Special:Newpages', 'New pages', ''); addlilink(tb, '/wiki/Special:Log/newusers', 'New users', ''); addlilink(tb, '/wiki/WP:PP', 'Protected pages', ''); } addOnloadHook(addtoolboxlinks); importScript('User:Ais523/votesymbols.js');

importScript('User:TheJosh/Scripts/NewPagePatrol.js');

/**** afd helper ****/ document.write(' ');

/* This is to keep track of who is using this extension: User:Jnothman/afd_helper/script.js */

addOnloadHook(function { // if this is a user, show the logs for the user rather than the page if ( wgCanonicalNamespace == "User" || wgCanonicalNamespace == "User_talk" ) {  url = wgServer + "/w/index.php?title=Special:Log&user=" + wgTitle.split("/")[0]; } else if ( wgCanonicalNamespace == "Special" ) {  // don't display link for special pages  return; } else {  url = wgServer + "/w/index.php?title=Special:Log&page=" + wgPageName; } mw.util.addPortletLink("p-tb", url, "Logs", "pt-logs");

});

importScript('User:Ais523/contribcalendar.js'); importScript('User:Ioeth/friendly.js'); /*

Utility funcs
//function getValueOf(varName) {defaultize(varName); //                             return eval(varName);}; function getGetParamValue (param) { window.location.href.match('[\?&]' + param + '[^&]*)');    return RegExp.$1; } /*

Selection funcs
function sel_mode_DPL (linkHTML) { return !(linkHTML.toLowerCase.indexOf( ' (redirect page' ) == -1 &&           ( linkHTML.indexOf( 'href="/wiki/Talk:' ) != -1 ||              linkHTML.indexOf( 'href="/wiki/Category_talk:' ) != -1 ||              linkHTML.indexOf( 'href="/wiki/Template_talk:' ) != -1 ||              linkHTML.indexOf( 'href="/wiki/Help_talk:' ) != -1 ||              linkHTML.indexOf( 'href="/wiki/Image:' ) != -1 ||              linkHTML.indexOf( 'href="/wiki/Image_talk:' ) != -1 ||              linkHTML.indexOf( 'href="/wiki/Portal:' ) != -1 ||              linkHTML.indexOf( 'href="/wiki/Portal_talk:' ) != -1 ||              linkHTML.indexOf( 'href="/wiki/Wikipedia:' ) != -1 ||             linkHTML.indexOf( 'href="/wiki/Wikipedia_talk:' ) != -1 ||             linkHTML.indexOf( 'href="/wiki/User:' ) != -1 ||             linkHTML.indexOf( 'href="/wiki/User_talk:' ) != -1 ||             linkHTML.indexOf( 'href="/wiki/MediaWiki:' ) != -1 ||             linkHTML.indexOf( 'href="/wiki/MediaWiki_talk:' ) != -1

)    ) }

function sel_mode_Template (linkHTML) { return linkHTML.indexOf( 'href="/wiki/Template:' ) != -1  }

function sel_mode_Portal (linkHTML) { return linkHTML.indexOf( 'href="/wiki/Portal:' ) != -1          ||  linkHTML.indexOf( 'href="/wiki/Template:' ) != -1 || linkHTML.indexOf( 'href="/wiki/Category:' ) != -1          ||  linkHTML.indexOf( 'href="/wiki/Image:' ) != -1 }

function sel_mode_User (linkHTML) { return linkHTML.indexOf( 'href="/wiki/User:' ) != -1          ||  linkHTML.indexOf( 'href="/wiki/User_talk:' ) != -1 }

function sel_mode_Wiki (linkHTML) { return linkHTML.indexOf( 'href="/wiki/Wikipedia:' ) != -1          ||  linkHTML.indexOf( 'href="/wiki/Wikipedia_talk:' ) != -1 }

function sel_mode_Redir (linkHTML) { return linkHTML.toLowerCase.indexOf( ' (redirect page' ) != -1 }

function sel_mode_All (linkHTML) { return true } /*

Da Main func
function select_pages(select_this, mode_name){ body = document.getElementById('bodyContent'); if( !body ){ return; } banner = document.getElementById('dpl_banner') if (banner && banner.innerHTML.indexOf(mode_name) != -1) { open(document.URL, "_self"); //refresh the page return; } lists = body.getElementsByTagName( "ul" ); for( j=0; j<lists.length; j++ ){ lists[j].style.listStyleType = 'decimal'; } links = body.getElementsByTagName( "li" ); dpl_in = 0; dpl_ex = 0; for( i=0; i<links.length; i++ ){ if( select_this(links[i].innerHTML) ) { links[i].style.display = '';      // clear prior style dpl_in++; } else { links[i].style.display = 'none';  // hide dpl_ex++; } } window.wlhCt = window.wlhCt || 0; window.wlhCt ++; banner_text = "Select Mode: " + mode_name + " ("     + dpl_in.toFixed + " shown/" + dpl_ex.toFixed + " hidden)";

if (banner) { banner.innerHTML = banner_text; banner = document.getElementById('dpl_footer'); banner.innerHTML = banner_text; }else{ banner = document.createElement("div"); banner.id = "dpl_banner"; banner.style.backgroundColor = "yellow"; banner.style.fontSize = 'larger'; banner.innerHTML = banner_text; body.insertBefore(banner,body.childNodes[0]); body = document.getElementById('footer'); if( !body ){ return; } banner = document.createElement("div"); banner.id = "dpl_footer"; banner.style.backgroundColor = "yellow"; banner.style.fontSize = 'larger'; banner.innerHTML = banner_text; body.insertBefore(banner,body.childNodes[0]); } }/* end function select_pages

Da tabbar fiddler
addOnloadHook(function {    if (wgPageName != 'Special:Whatlinkshere') { return; }        // only add toolbox link on 'whatlinkshere' pages     target = document.getElementById('p-cactions').getElementsByTagName( "ul" );     if( target.length == 0 ){ return; } //no action bar to hook into     wlhCmd = getGetParamValue ('wlhCmd');     if( wlhCmd == 'r' ) select_pages(sel_mode_Redir,"Redirect (auto)");     target = target[0];     newTool = document.createElement("li");     target.appendChild( newTool );     function ptool(btn,func,desc){         return '' + btn + ''     }     newTool.innerHTML = 'Filter mode:'          + ptool ('All', 'All',        'Show all')         + ptool ('DPL', 'DPL',        'Main Space and Template')         + ptool ('T',   'Template',   'Template Only') + ptool ('PTCI','Portal',    'Portal, Template, Category, Image') + ptool ('R',  'Redir',      'Redirect') + ptool ('W',  'Wiki',       'Wikipedia') + ptool ('U',  'User',       'User and User Talk') ;

document.getElementById('bodyContent').innerHTML .match(/href="([^"]*)&amp;limit=500/); url500 = RegExp.$1; mw.util.addPortletLink('p-cactions',url500 + '&limit=5000'            ,'5000',null,'Show up to 5000 links'); mw.util.addPortletLink('p-cactions',url500 + '&limit=5000&wlhCmd=r'            ,'All Redirects',null,'Show ALL Redirects (up to 5000 links)'); }); var body; // shortcut for body node var xmlhttp; // XMLHTTPRequest object var startNode; // div that includes section header and edit link var editSec; // edit link var editForm; // spliced edit form var preview; // spliced preview or diff content var oldContent; // original content of section var xmlhttpDone = false; // kludge to prevent multiple calls to callback importScript("User:Supadawg/util.js"); function inc(path) { var lt = String.fromCharCode(60);  var gt = String.fromCharCode(62);  document.writeln(lt+'script type="text/javascript" src="/w/index.php?title='+path+'&action=raw&ctype=text/javascript&dontcountme=s"'+gt+lt+'/script'+gt); } function initSecEdit {  body = document.getElementsByTagName("body")[0];  // apply to all divs of class "editsection"  var editSecs = document.getElementsByTagName("span");  var secCount = 1;  var pagetitleRe=/\/(wiki\/|w\/index\.php\?title=)([^&?]*)/; // from [Wikipedia:WikiProject User scripts/Techniques] for ( var i = 0; i < editSecs.length; i++ ) { if ( editSecs[i].getAttribute("class") == "editsection" ) { for ( var k = 0; k < editSecs[i].childNodes.length; k++ ) { if ( editSecs[i].childNodes[k].nodeName == "A" ) { // grab editing uri, escape it, then put it back in         var editURI = "http://en.wikipedia.org/w/index.php?title="+encodeURIComponent2(pagetitleRe.exec(decodeURI(editSecs[i].childNodes[k].getAttribute("href")))[2]).replace(/\"/gi, "%22").replace(/\'/gi, "%27")+"&action=edit&section="+secCount;          // give it a unique id          editSecs[i].childNodes[k].setAttribute( "id", "editSection"+secCount );          // swap the href with a function call, passing the original href as the second parameter          editSecs[i].childNodes[k].setAttribute( "href", "javascript:editSection( document.getElementById('editSection" + secCount + "'), '"+editURI+"' );" );          secCount++;        }      }    }  } } // called on click of section edit link function editSection( elem, editURI ) {  cancelEdit; // get rid of any other sections being edited  editSec = elem;  startNode = elem.parentNode.parentNode; // initiate xmlhttprequest for section edit page xmlhttpDone = false; xmlhttp = null // kludge xmlhttp = createXMLHTTP( "GET", editURI, stateChange ); } // put raw input returned from XMLHTTPRequest into a div so we can grab specific elements function makeDiv( rawHTML ) { var div = createNode( body, "div", {style: "visibility: hidden; position: absolute;"} ); div.innerHTML = rawHTML.replace(/]*><\/script>/gi, ""); // if script tags are placed into the DOM, they force reload of files, and nasty things happen return div; } function isHTag( node ) { return node.nodeName.charAt(0) == 'H' && !isNaN( parseInt( node.nodeName.charAt(1) ) ); } // callback for onclick of an edit link function stateChange { if ( xmlhttp && xmlhttp.readyState == 4 ) { if ( xmlhttp.status == 200 ) { if ( xmlhttpDone ) return; xmlhttpDone = true; // store old content of section - loop until we hit header of same spot in hierarchy if ( !oldContent ) { oldContent = makeDiv(""); var curElem = startNode.nextSibling; while ( curElem ) { var hitSiblingSection = false; if ( isHTag( curElem ) ) { for ( var i = 0; i < curElem.childNodes.length; i++ ) { if ( curElem.childNodes[i].nodeName == "SPAN"                  && curElem.childNodes[i].getAttribute("class") == "editsection"                   && parseInt( curElem.nodeName.charAt(1) ) <= parseInt( startNode.nodeName.charAt(1) ) ) hitSiblingSection = true; }         }          else if ( curElem.nodeName == "DIV" && curElem.getAttribute("class") == "printfooter" ) break; if ( hitSiblingSection ) break; var nextElem = curElem.nextSibling; oldContent.appendChild( curElem ); curElem = nextElem; }     }      else removeNode( oldContent ); var div = makeDiv( xmlhttp.responseText ); editForm = $("editform"); // change onclick of preview and diff buttons to our function $("wpPreview").setAttribute( "type", "button" ); $("wpPreview").setAttribute( "onclick", "javascript:getEditData( previewChanged, $('wpPreview') );" ); $("wpDiff").setAttribute( "type", "button" ); $("wpDiff").setAttribute( "onclick", "javascript:getEditData( diffChanged, $('wpDiff') );" ); insertAfter( editForm, startNode ); removeNode( div ); editSec.setAttribute( "oldHref", editSec.getAttribute("href") ); editSec.setAttribute( "href", "javascript:cancelEdit;" ); editSec.innerHTML = "cancel"; }   else alert("Problem retrieving data - status: "+xmlhttp.status); } } // firefox hack, not sure if this is a problem in other browsers function encodeURIComponent2( content ) { // from content = content.replace(/\&lt\;/gi, "<"); content = content.replace(/\&gt\;/gi, ">"); content = content.replace(/\&quot\;/gi, "\""); content = content.replace(/\&amp\;/gi, "&");  return encodeURIComponent( content ); } // encode differently based on type of form element function field2Post( node, allowButton ) {  var reqBody = "";  switch ( node.nodeName ) {    case "TEXTAREA":      reqBody += "&"+node.getAttribute("name")+"="+encodeURIComponent2( node.value );      break;    case "INPUT":      var inputType = node.getAttribute("type");      if ( inputType == "checkbox" ) {        if ( node.checked )          reqBody += "&"+node.getAttribute("name")+"=on"      }      else if ( allowButton || (inputType != "submit" && inputType != "button") )        reqBody += "&"+node.getAttribute("name")+"="+encodeURIComponent2( node.value );      break;    case "DIV":      reqBody += form2Post( node, false );      break;  }  return reqBody; } // manually encodes a form element for XMLHTTPRequest function form2Post( node ) { var reqBody = ""; for ( var i = 0; i < node.childNodes.length; i++ ) reqBody += field2Post( node.childNodes[i], false ); return reqBody; } // get preview or diff data function getEditData( callback, clickedBut ) { xmlhttpDone = false; xmlhttp = null; // kludge var action = editForm.getAttribute("action"); xmlhttp = createXMLHTTP( "POST", "http://en.wikipedia.org"+action, callback, {   body: form2Post( editForm ) + field2Post( clickedBut, true ),    headers: {      "Content-Type": "application/x-www-form-urlencoded",      "Referer": "http://en.wikipedia.org" + action.substring( 0, action.indexOf('&') ) + "&action=edit&section="+(parseInt(editSec.getAttribute("id").substring(11))+1)    }  } ); } // callback for preview data function previewChanged { if ( xmlhttp && xmlhttp.readyState == 4 ) { if ( xmlhttp.status == 200 ) { if ( xmlhttpDone ) return; xmlhttpDone = true; var div = makeDiv( xmlhttp.responseText ); if ( preview ) removeNode( preview ); preview = $("wikiPreview"); insertAfter( preview, startNode ); removeNode( div ); }   else alert("Problem retrieving data - status: "+xmlhttp.status); } } // callback for diff data function diffChanged { if ( xmlhttp && xmlhttp.readyState == 4 ) { if ( xmlhttp.status == 200 ) { if ( xmlhttpDone ) return; xmlhttpDone = true; var div = makeDiv( xmlhttp.responseText ); if ( preview ) removeNode( preview ); preview = $("wikiDiff"); insertAfter( preview, startNode ); removeNode( div ); }   else alert("Problem retrieving data - status: "+xmlhttp.status); } } // remove form and preview or diff data function cancelEdit { if ( preview ) removeNode( preview ); preview = null; if ( editForm ) removeNode( editForm ); editForm = null; if ( oldContent ) { oldContent.setAttribute( "style", "position: static; visibility: visible;" ); insertAfter( oldContent, startNode ); } oldContent = null; if ( editSec ) { editSec.setAttribute( "href", editSec.getAttribute("oldHref") ); editSec.innerHTML = "edit"; } } addEventListener( "load", initSecEdit, false );