User:Splarka/contribtools.js

// if(wgCanonicalSpecialPageName == 'Contributions' && !window.ContribToolsLoaded) addOnloadHook(contribtools) var ContribToolsLoaded = true; //prevent duplication

function contribtools { if(wgCanonicalSpecialPageName!="Contributions") return var ug = wgUserGroups.join(' '); var cs = document.getElementById('contentSub'); // poorman contribs type finder. -1 = existing user try { var ctype = cs.getElementsByTagName('a')[0].href.indexOf('User_talk'); } catch(e) { var ctype = -1; } var inputs = document.getElementsByTagName('input'); var targ for(var i=0;i -1)&&(ctype==-1)) insertContentSubContribLink('http://www.wikia.com/wiki/Special:LookupUser?&target=' + targ,'LookupUser')

//checkuser: staff/checkuser, logged in/anon if(ug.indexOf('staff') + ug.indexOf('checkuser') > -2) { if(ctype==-1) { insertContentSubContribLink('/wiki/Special:CheckUser?subuser=OK&user=' + targ,'CheckUser'); } else { insertContentSubContribLink('/wiki/Special:CheckUser?subipusers=OK&ip=' + targ,'CheckUser'); } }

//multilookup (global checkuser): staff, anon if((ug.indexOf('staff') > -1)&&(ctype!=-1)) insertContentSubContribLink('http://www.wikia.com/wiki/Special:MultiLookup?wpIP=' + targ,'MultiLookup')

//regexblock: staff, logged in if((ug.indexOf('staff') > -1)&&(ctype==-1)) insertContentSubContribLink('http://www.wikia.com/wiki/Special:Regexblock?wpRegexBlockedReason=' + targ,'RegexBlock')

//deleted contribs (global checkuser): staff/sysop, anon if((ug.indexOf('staff') + ug.indexOf('sysop') > -2)&&(ctype!=-1)) insertContentSubContribLink('/wiki/Special:DeletedContributions/' + targ,'DeletedContributions')

var botlink = document.location.href; if(botlink.indexOf('?')==-1) { insertContentSubContribLink(document.location.href + '?bot=1','&bot=1'); } else { insertContentSubContribLink(document.location.href + '&bot=1','&bot=1'); } }

function insertContentSubContribLink(link,text) { var cs = document.getElementById('contentSub'); var icssep = document.createTextNode(' | '); var ics = document.createElement('a'); ics.href = link; ics.setAttribute('title', ics.href); ics.appendChild(document.createTextNode(text)); try { cs.insertBefore(icssep,cs.childNodes[cs.childNodes.length-1]); cs.insertBefore(ics,cs.childNodes[cs.childNodes.length-1]); } catch(e) { cs.appendChild(document.createTextNode('(Error: contentSub still empty! Inserting... '));   cs.appendChild(ics);  } } //