You need to be logged into the wiki to be able to edit! To login or join the wiki, click here. |
Difference between revisions of "User:Leech/vector.js"
From Kiwiki
Line 106: | Line 106: | ||
//config | //config | ||
− | welcome.edit.summary = "Welcome to | + | welcome.edit.summary = "Welcome to Kiwiki!"; |
− | welcome.edit.text = "{{ | + | welcome.edit.text = "{{Welcome}}"; |
welcome.edit.textAnon = "{{sub" + "st:Welcomeip}}" + "\n" + "~~" + "~~"; | welcome.edit.textAnon = "{{sub" + "st:Welcomeip}}" + "\n" + "~~" + "~~"; | ||
welcome.edit.button = 'wpSave'; | welcome.edit.button = 'wpSave'; |
Revision as of 01:44, 18 May 2012
<pre><nowiki> // --- ADD VARIOUS LINKS ---- if(!addToolBoxLink) { function addToolboxLink(url, name, id){ var tb = document.getElementById('p-tb').getElementsByTagName('ul')[0]; addlilink(tb, url, name, id); }} // if(!addTopLink) { function addTopLink(url, name, id){ var personal = document.getElementById('p-personal').getElementsByTagName('ul')[0]; addlilink(personal, url, name, id); }} // if(!addNavLink) { function addNavLink(url, name, id){ var navigation = document.getElementById('p-navigation').getElementsByTagName('ul')[0]; addlilink(navigation, url, name, id); }} // if(!addTab) { function addTab(url, name, id, title, key){ var tabs = document.getElementById('p-cactions').getElementsByTagName('ul')[0]; return addlilink(tabs, url, name, id, title, key); }} if(!addLink) { function addLink(where, url, name, id, title, key, after){ //* where is the id of the toolbar where the button should be added; // i.e. one of "p-cactions", "p-personal", "p-navigation", or "p-tb". // //* url is the URL which will be called when the button is clicked. // javascript: urls can be used to do more complex things. // //* name is what will appear as the name of the button. // //* id is the id of the button; it's best to define one. // Use a prefix to make sure its unique. Optional. // //* title is the tooltip title that gives a longer description // of the button; if you define a accesskey, mention it here. Optional. // //* key is the char you want for the accesskey. Optional. // //* after is the id of the button you want to follow this one. Optional. // 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); var tabs = document.getElementById(where).getElementsByTagName('ul')[0]; if(after) { tabs.insertBefore(li,document.getElementById(after)); } else { 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; }} if(!addlilink) { 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; }} </nowiki></pre> //<pre><nowiki> //Auto welcome user script written by GeorgeMoney if(welcome == undefined) { //If you would like to make your own config you have 2 options: //1:Copy the entire code to your monobook and change the config //2:Copy everything, from this line until you see 'end config', into your monobook.js, and include the module to your monobook via an import function var welcome={};welcome.edit={};welcome.link={};welcome.link.tab={};welcome.link.newUserLog={};welcome.link.redLinkTalk={};welcome.options={}; //config welcome.edit.summary = "Welcome to Kiwiki!"; welcome.edit.text = "{{Welcome}}"; welcome.edit.textAnon = "{{sub" + "st:Welcomeip}}" + "\n" + "~~" + "~~"; welcome.edit.button = 'wpSave'; welcome.link.newUserLog.defaultColor = "blue"; welcome.link.newUserLog.clickedColor = "green"; welcome.link.newUserLog.text = "[welcome]"; welcome.link.redLinkTalk.defaultColor = "blue"; welcome.link.redLinkTalk.clickedColor = "green"; welcome.link.redLinkTalk.text = "[welcome]"; welcome.link.redLinkTalk.blink = false; welcome.link.tab.text = "welcome!"; welcome.link.tab.accessKey = 'a'; welcome.options.newUserLogaddReloadButton = true; welcome.options.newUserLogEnabled = true; welcome.options.redLinkTalkEnabled = true; welcome.options.addTab = true; welcome.options.askIfPageIsNotBlank = true; welcome.options.maxLinks = 1000; welcome.options.warnIfOverMaxLinks = false; //end config } //main script if(welcome.options.newUserLogEnabled && (/Special(%3A|:)Log(\/newusers$|(.*?&|\?)type=newusers)/i).test(window.location.href)) { if(window.location.hash != "") window.location.hash = ""; else { addOnloadHook(function() { var lis = document.getElementById('bodyContent').getElementsByTagName('ul')[0].getElementsByTagName('li'); for (var i=0; i<lis.length; i++) { var li = lis[i]; var url = li.firstChild.nextSibling.nextSibling.nextSibling.href; var charao = (url.indexOf('?') != -1)?'&':'?'; url += charao+"autowelcome=true" var link = document.createElement('a'); link.appendChild(document.createTextNode(welcome.link.newUserLog.text)); link.style.color = welcome.link.newUserLog.defaultColor; monclick = function() { //this.style = { }; this.style.textDecoration = 'none'; this.style.color = welcome.link.newUserLog.clickedColor; var n = parseInt(this.name.split('_')[2]); var newhref = "#anchor_welcome_"+(n+1); this.onmouseover = function() { return false; } this.onfocus = function() { return false; } this.onclick = function() { window.open(this.href); this.onclick = function() { return false; }; return false; } this.onmousedown = function() { return false; } this.onmouseup = function() { return false; } this.onmouseout = function() { //var n = parseInt(this.name.split('_')[2]); //var newhref = "#anchor_welcome_"+(n+1); //this.href /**/+= '&hasdone=true'; //newhref; //this.href=newhref; this.href = "javascript:void(0);"; this.onmouseout = function() { return false; } }; //this.href = newhref; //this.tagName = 'SPAN'; //this.innerHTML = 'welcomed'; this.style.cursor = "default"; }; //link.onfocus = monclick; link.onmouseup = monclick; link.href = url; link.id = "id_welcome_"+i; link.name = "anchor_welcome_"+i; li.appendChild(link); } if(welcome.options.newUserLogaddReloadButton) { var h1 = document.getElementsByTagName('h1')[0]; var button = document.createElement('input'); button.onclick = function() { if(window.location.hash != "") window.location.hash = ""; location.reload(); } button.value = "reload"; button.type = "button"; h1.parentNode.insertBefore(button, h1.nextSibling); } }); } } if(welcome.options.redLinkTalkEnabled && !((/Special(%3A|:)Log(\/newusers$|(.*?&|\?)type=newusers)/i).test(window.location.href)) && ( ( (wgNamespaceNumber > -1 && wgNamespaceNumber % 2 != 0) || (wgCanonicalNamespace == "Wikipedia"||wgCanonicalNamespace == 'Special') ) || !wgIsArticle )) { addOnloadHook(function() { var alinks = document.getElementById('bodyContent').getElementsByTagName('a'); if(alinks.length > welcome.options.maxLinks) { if(welcome.options.warnIfOverMaxLinks) var ok_to_go = confirm("This page has over "+welcome.options.maxLinks+" links.\n" +"Searching for red links to add welcome links might take a while and freeze your" +" browser\nTo continue and add welcome links, press ok."); else var ok_to_go = false; } else var ok_to_go = true; if(!ok_to_go) return; for(var i=0, j=0; i<alinks.length; i++) { var lin = alinks[i]; if(lin.className == "new" && (/User([_ ]talk)?:/i).test(lin.href) && lin.href.substr('http://en.wikipedia.org/w/index.php?title='.length).indexOf('/') == -1) { var url = lin.href; url = url.replace('User:', 'User_talk:'); var charao = (url.indexOf('?') != -1)?'&':'?'; url += charao+"autowelcome=true" var nlin = document.createElement('a'); nlin.appendChild(document.createTextNode(welcome.link.redLinkTalk.text)); nlin.style.color = welcome.link.redLinkTalk.defaultColor; monclick = function() { this.style.textDecoration = 'none'; this.style.color = welcome.link.redLinkTalk.clickedColor; var n = parseInt(this.name.split('_')[2]); var newhref = "#anchor_welcome_"+(n+1); this.onmouseover = function() { return false; } this.onfocus = function() { return false; } this.onclick = function() { window.open(this.href); this.onclick = function() { return false; }; return false; } this.onmousedown = function() { return false; } this.onmouseup = function() { return false; } this.onmouseout = function() { //var n = parseInt(this.name.split('_')[2]); //var newhref = "#anchor_welcome_"+(n+1); //this.href /**/+= '&hasdone=true'; //newhref; //this.href=newhref; this.href = "javascript:void(0);"; this.onmouseout = function() { return false; } }; //this.href = newhref; //this.tagName = 'SPAN'; //this.innerHTML = 'welcomed'; this.style.cursor = "default"; }; nlin.onmouseup = monclick; nlin.href = url; nlin.id = "id_welcome_"+j; nlin.name = "anchor_welcome_"+j; if(welcome.link.redLinkTalk.blink) nlin.style.textDecoration = 'blink'; try { //alert(lin+lin.href+lin.className+lin.innerHTML+lin.nextSibling); if(lin.nextSibling) { lin.parentNode .insertBefore( nlin, lin.nextSibling ); } else { lin.parentNode .appendChild( nlin ); } j++; } catch(e) { //alert(lin+lin.href+lin.className+lin.innerHTML+lin.nextSibling); //alert(e.toString()); } } } }); } if(welcome.options.addTab && ( wgCanonicalNamespace == 'User' || wgCanonicalNamespace == 'User_talk' ) ) { addOnloadHook(function() { try { var href = document.getElementById('ca-edit').firstChild.href; var charao = (href.indexOf('?') != -1)?'&':'?'; href += charao+"autowelcome=true"; if(wgCanonicalNamespace == 'User') href = href.replace(/User:/i, 'User_talk:'); var tbs = document.getElementById('p-cactions').getElementsByTagName('ul')[0]; addlilink(tbs, href, welcome.link.tab.text, 'ca-welcome', 'Welcome '+wgTitle, welcome.link.tab.accessKey); } catch(e) { } }); } if(window.location.href.indexOf('autowelcome=true') != -1 &&window.location.href.indexOf('action=edit') == -1) { window.location.href += '&action=edit'; } if(window.location.href.indexOf('action=edit') != -1 && window.location.href.indexOf('autowelcome=true') != -1) { if(window.location.href.indexOf('hasdone=true') != -1) { location.href = location.href.split('action=edit')[0] .split('autowelcome=true')[0]; } else { addOnloadHook(function() { var text = document.getElementById('wpTextbox1').value; if(welcome.options.askIfPageIsNotBlank && text != '') { var oktogo = confirm("There was other text detected on this page\nWould you like to continue with the welcome?"); } else var oktogo = true; var newtext = text + '\n'; if((/\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}/).test(wgPageName)) newtext += welcome.edit.textAnon; else newtext += welcome.edit.text; document.getElementById('wpTextbox1').value = newtext; document.getElementById('wpSummary').value = welcome.edit.summary; if(!oktogo) return; document.getElementById(welcome.edit.button).click(); }); } } //</nowiki></pre>