﻿
/* (c) 2008 UCB */

String.prototype.trim = function () {  return this.replace(/^\s*(\S*(\s+\S+)*)\s*$/, "$1");};

var leavingUCB = "You are leaving the www.ucb-group.com website and are about to enter the website of a third party. UCB is not responsible for and does not endorse the content of the website you are about to enter.";

function initWebTrends() {
    // The purpose of this function is to initialise the page ready for WebTrends code.
    // We need to add an onclick event to every anchor that calls dcsMultiTrack with a
    // anchor specific URI and TITLE



    function _onclick(ltype, uri, title, fn, ext) {
        return function() {
		
		return;
		
            if (!ext || confirm(leavingUCB)) {
              try {
                  dcsMultiTrack('DCS.dcsuri',uri,'WT.ti',title,'WT.cg_n',ltype,'WT.cg_s','');
                } catch(err) {
                     ignore
                }
                return (fn ? fn() : true);
            } else {
                return false;
           }
        };
    }

    function _href(h) {
        var ret;
        if (h.indexOf("index.html") == 0) {
            ret = h.substring("http://www.ucb-group.com".length);

        } else if (h.indexOf("index.html") == 0) {
            ret = h.substring("http://www.ucb-group.com".length);
        } else if (h.indexOf("http://acc.ucb.com.belbone.be/") == 0) {
            ret = h.substring("http://acc.ucb.com.belbone.be".length);
        } else if (h.indexOf("http://acc.ucb.com.belbone.be/") == 0) {
            ret = h.substring("http://acc.ucb.com.belbone.be".length);
        } else if (h.indexOf("http://hugin.info/") == 0) {
            ret = h.substring("http://hugin.info".length);
        } else if (h.indexOf("http://www.schwarzpharma.com/") == 0) {
            ret = h.substring("http://www.schwarzpharma.com".length);
        } else if (h.indexOf("http://www.ucb-pharma.com/") == 0) {
            ret = h.substring("http://www.ucb-pharma.com".length);
        } else if (h.indexOf("http://www.ucbpharma.com/") == 0) {
            ret = h.substring("http://www.ucbpharma.com".length);


        } else if (h.indexOf("http://www.ucb-group.co.jp/") == 0) {
            ret = h.substring("http://www.ucb-group.co.jp".length);
        } else if (h.indexOf("http://www.ucb.be/") == 0) {
            ret = h.substring("http://www.ucb.be".length);
        } else if (h.indexOf("http://www.kucb.co.kr/") == 0) {
            ret = h.substring("http://www.kucb.co.kr".length);
        } else if (h.indexOf("http://www.ucbthailand.com/") == 0) {
            ret = h.substring("http://www.ucbthailand.com".length);
        } else if (h.indexOf("http://www.ucb.de/") == 0) {
            ret = h.substring("http://www.ucb.de".length);
        } else if (h.indexOf("http://www.schwarzpharma.de/") == 0) {
            ret = h.substring("http://www.schwarzpharma.de".length);
        } else if (h.indexOf("http://www.ucb.hu/") == 0) {
            ret = h.substring("http://www.ucb.hu".length);
        } else if (h.indexOf("http://www.ucbpharma.nl/") == 0) {
            ret = h.substring("http://www.ucbpharma.nl".length);
        } else if (h.indexOf("http://www.connect-to-ms.com/") == 0) {
            ret = h.substring("http://www.connect-to-ms.com".length);


        } else {
            ret = h;
        }
        ret = (ret.indexOf("index.html") == 0 ? "" : "/") + ret;
        return ret;
    }

    function _ext(h) {
        if (_href(h).toLowerCase().indexOf("http://") == 1) {
            return true; // _href prepends a / if none exists...
        }
        if (_href(h).toLowerCase().indexOf("https:///") == 1) {
            return true; // _href prepends a / if none exists...
        }    
        return false;
    }

    var links = document.getElementsByTagName("A");
    
    for (var i = 0; i < links.length; i++) {
        try {
        var uri = "", title = "", ltype = "Links", link = links[i], elem = link.parentNode, debug = false;
        if (link.href) {
            if (elem && elem.nodeName == "P") {
                elem = elem.parentNode;
                if (elem && elem.nodeName == "BLOCKQUOTE") {
                    elem = elem.parentNode;
                    if (elem && elem.nodeName == "DIV" && elem.className.indexOf("quote-block") >= 0) {
// 050 - Quote Block
                        uri = "/links" + _href(location.href) + (link.target ? link.target : "_self") + _href(link.href);
                        title = "Links: " + document.title + " - " + ((link.firstChild && link.firstChild.nodeName == "#text") ? (link.firstChild.nodeValue).trim() : "Unknown");
                    }
                } else if (elem && elem.nodeName == "DIV" && elem.className == "content-block") {
// 054 - Article Link Block / In Focus / Banner Block
                    uri = "/links" + _href(location.href) + (link.target ? link.target : "_self") + _href(link.href);
                    title = "Links: " + document.title + " - "
                    elem = elem.firstChild;
                    while (elem) {
                        if (elem.nodeName == "H1" || elem.nodeName == "H2" || elem.nodeName == "H3" || (elem.nodeName == "#comment" && elem.nodeValue.indexOf("WT.ti:") > -1)) {
                            if (elem.nodeName != "#comment") elem = elem.firstChild;
                            title += elem.nodeValue.replace("WT.ti:", "").trim();
                            elem = null;
                        } else if (elem.nodeName == "DIV" && elem.className == "in-focus") {
                            elem = elem.firstChild;
                        } else {
                            elem = elem.nextSibling;
                        }
                    }
                }
            } else if (elem && elem.nodeName == "DIV" && elem.className == "intro-block") {
// 054 - Article Link Block / Intro
                uri = "/links" + _href(location.href) + (link.target ? link.target : "_self") + _href(link.href);
                title = "Links: " + document.title + " - "
                elem = link.previousSibling;
                while (elem = elem.previousSibling) {
                    if (elem.nodeName == "H1" || elem.nodeName == "H2" || elem.nodeName == "H3" || (elem.nodeName == "#comment" && elem.nodeValue.indexOf("WT.ti:") > -1)) {
                        if (elem.nodeName != "#comment") elem = elem.firstChild;
                        title += elem.nodeValue.replace("WT.ti:", "").trim();
                        elem = link.parentNode.firstChild;
                    }
                }
            } else if (elem && elem.nodeName == "DIV" && elem.className == "visual") {
// 073 Home Block
                elem = elem.parentNode;
                if (elem && elem.nodeName == "DIV" && elem.className == "home-block") {
                    uri = "/links" + _href(location.href) + (link.target ? link.target : "_self") + _href(link.href);
                    elem = elem ? elem.firstChild : elem;
                    while (elem && (elem.nodeName != "DIV" || elem.className != "text")) elem = elem.nextSibling;
                    elem = elem ? elem.firstChild : elem;
                    while (elem && elem.nodeName != "H2") elem = elem.nextSibling;
                    elem = elem ? elem.firstChild : elem;
                    while (elem && elem.nodeName != "A") elem = elem.nextSibling;
                    title = "Links: " + document.title + " - " + (elem && elem.firstChild ? elem.firstChild.nodeValue : "Unknown");
                }
            } else if (elem && elem.nodeName == "DIV") {
// 082 Flash Investors Block
// 083 Home Block SWF
                elem = elem.parentNode;
                if (elem && elem.nodeName == "DIV" && elem.className == "visual") {
                    elem = elem.parentNode;
                    if (elem && elem.nodeName == "DIV" && elem.className == "home-block") {
                        uri = "/links" + _href(location.href) + (link.target ? link.target : "_self") + _href(link.href);
                        elem = elem ? elem.firstChild : elem;
                        while (elem && (elem.nodeName != "DIV" || elem.className != "text")) elem = elem.nextSibling;
                        elem = elem ? elem.firstChild : elem;
                        while (elem && elem.nodeName != "H2") elem = elem.nextSibling;
                        elem = elem ? elem.firstChild : elem;
                        while (elem && elem.nodeName != "A") elem = elem.nextSibling;
                        title = "Links: " + document.title + " - " + (elem && elem.firstChild ? elem.firstChild.nodeValue : "Unknown");
                    }
                }
// 073 Home Block
// 082 Flash Investors Block
// 083 Home Block SWF
            } else if (elem && elem.nodeName == "H2") {
                elem = elem.parentNode;
                if (elem && elem.nodeName == "DIV" && elem.className == "text") {
                    elem = elem.parentNode;
                    if (elem && elem.nodeName == "DIV" && elem.className == "home-block") {
                        uri = "/links" + _href(location.href) + (link.target ? link.target : "_self") + _href(link.href);
                        title = "Links: " + document.title + " - " + link.firstChild.nodeValue; // #text
                    }
                }
            } else if (elem && elem.nodeName == "LI") {
// 056a Link List Object
// 068b Document List Item
                elem = elem.parentNode;
                if (elem && elem.nodeName == "UL" && elem.className.indexOf("link-list") >= 0) {
                    elem = elem.parentNode;
                    if (elem && elem.nodeName == "DIV" && elem.className == "list-block") {
                        elem = link.firstChild.nextSibling; // null or span
                        while (elem && elem.nodeName != "SPAN") elem = elem.nextSibling;
                        if (elem && elem.nodeName == "SPAN" && elem.className == "details") { // Document List Item
                            ltype = "Downloads";
                            uri = "/download" + _href(location.href) + (link.target ? link.target : "_self") + _href(link.href);
                            title = "Downloads: ";
                        } else { // Link List Object
                            uri = "/links" + _href(location.href) + (link.target ? link.target : "_self") + _href(link.href);
                            title = "Links: ";
                        }
                        elem = link.firstChild.firstChild; // span / strong|#text
                        if (elem.nodeName == "STRONG") elem = elem.firstChild; // #text
                        title += document.title + " - " + elem.nodeValue.trim();
                    }
                }
            } else if (elem && elem.nodeName == "TD") {
// 055 - Event Listing Block
                elem = elem.parentNode;
                if (elem && elem.nodeName == "TR") {
                    elem = elem.parentNode;
                    if (elem && elem.nodeName == "TBODY") {
                        elem = elem.parentNode;
                        if (elem && elem.nodeName == "TABLE" && elem.className == "agenda-table") {
                            elem = elem.parentNode;
                            if (elem && elem.nodeName == "DIV" && elem.className == "calendar-block") {
                                uri = "/links" + _href(location.href) + (link.target ? link.target : "_self") + _href(link.href);
                                title = "Links: " + document.title + " - " + (link.firstChild.firstChild ? link.firstChild.firstChild.nodeValue.trim() : link.firstChild.nodeValue.trim()); // span / #text or #text
                            }
                        }
                    }
                }
            } else if (link.firstChild && link.firstChild.nodeName == "#text") {
                uri = "/links" + _href(location.href) + (link.target ? link.target : "_self") + _href(link.href);
                title = "Links: " + document.title + " - " + link.firstChild.nodeValue.trim(); // #text
            } else if (link.firstChild && (link.firstChild.nodeName == "SPAN" || link.firstChild.nodeName == "STRONG")) {
                uri = "/links" + _href(location.href) + (link.target ? link.target : "_self") + _href(link.href);
                title = "Links: " + document.title + " - " + link.firstChild.firstChild.nodeValue.trim(); // #text
            } else {

            }
            link.onclick = _onclick(ltype, uri, title, link.onclick, _ext(link.href));
        }
        } catch(err) {
            // ignore for now
        }
    }

}
 
//Lib.addEvent(window, "load", initWebTrends);