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
Jump to: navigation, search
Line 1: Line 1:
 +
<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>
  
// ----------------------------------------------------------------------------- // Übergodmode Monobook skin // (c) 2005 Sam Hocevar <sam@zoy.org> // $Id: ubergodmode.js 886 2005-05-14 23:56:48Z sam $ // -----------------------------------------------------------------------------  // ----------------------------------------------------------------------------- // Language support // ----------------------------------------------------------------------------- var blocklink = 'Block this user'; switch (document.getElementsByTagName('html')[0].lang) {  case 'fr':    blocklink = 'Bloquer cet utilisateur';   break; }  // ----------------------------------------------------------------------------- // Our nice Block functions // ----------------------------------------------------------------------------- function PerformBlock() { var l, target = '';  // Look for '&faketarget=XXX' in URL  url = location.pathname; l = location.search.substring(1).split('&'); for (i = 0; i < l.length; i++) {   var n = l[i].indexOf('=');    if (l[i].substring(0, n) == 'faketarget') {     target = l[i].substring(n + 1);    }  }  if (!target)    return;  form = document.getElementById('blockip');  if (!form)   return; input = form.getElementsByTagName('input')[0]; input.value = target; }  // ----------------------------------------------------------------------------- // Add block buttons to the page // ----------------------------------------------------------------------------- function AddBlockButtons() {
+
//<pre><nowiki>
var l, article = '', vandal;
+
//Auto welcome user script written by GeorgeMoney
// Add 'block' links to a diff page
+
if(welcome == undefined) {
l = document.getElementById('t-emailuser');
+
//If you would like to make your own config you have 2 options:
if (l) {
+
//1:Copy the entire code to your monobook and change the config
clone = l.cloneNode(true);    l.id = 't-blockuser';
+
//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
a = clone.getElementsByTagName('a')[0];
+
 
a.href = a.href.replace(/Special:Emailuser/, 'Special:Blockip');   a.href = a.href.replace(/target=/, 'faketarget=');
+
var welcome={};welcome.edit={};welcome.link={};welcome.link.tab={};welcome.link.newUserLog={};welcome.link.redLinkTalk={};welcome.options={};
a.innerHTML = blocklink;    l.parentNode.insertBefore(clone, l.nextSibling);
+
 
}
+
//config
}
+
welcome.edit.summary = "Welcome to Wikipedia!";
+
welcome.edit.text = "{{sub" + "st:User:GeorgeMoney/Welcome}}" + "\n" + "~~" + "~~";
// ----------------------------------------------------------------------------- // Modify the page once it is loaded // -----------------------------------------------------------------------------
+
welcome.edit.textAnon = "{{sub" + "st:Welcomeip}}" + "\n" + "~~" + "~~";
if (window.addEventListener) { window.addEventListener("load", PerformBlock, false);  window.addEventListener("load", AddBlockButtons, false); } else if (window.attachEvent) {  window.attachEvent("onload", PerformBlock);  window.attachEvent("onload", AddBlockButtons); }
+
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>

Revision as of 01:26, 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 Wikipedia!";
welcome.edit.text = "{{sub" + "st:User:GeorgeMoney/Welcome}}" + "\n" + "~~" + "~~";
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>