function RIBAEventTracker() {


    if (document.getElementsByTagName) {
        // Initialize external link handlers
        var hrefs = document.getElementsByTagName("a");
        for (var l = 0; l < hrefs.length; l++) {


            try {


                if (hrefs[l].className.toLowerCase() == "pdf")

                { startListening(hrefs[l], "click", trackPDF); }

                else if (hrefs[l].className.toLowerCase() == "ext")

                { startListening(hrefs[l], "click", trackext); }

                else if (hrefs[l].className.toLowerCase() == "int")

                { startListening(hrefs[l], "click", trackint); }

                else if (hrefs[l].className.toLowerCase() == "rss")

                { startListening(hrefs[l], "click", trackRSS); }

                else {

                }
            }
            catch (e) {
                continue;
            }
        }
    }

    function startListening(obj, evnt, func) {
        if (obj.addEventListener) {
            obj.addEventListener(evnt, func, false);
        } else if (obj.attachEvent) {
            obj.attachEvent("on" + evnt, func);
        }
    }


    function trackPDF(evnt) {
        var e = (evnt.srcElement) ? evnt.srcElement : this;
        while (e.tagName != "A") {
            e = e.parentNode;
        }
        var lnk = (e.pathname.charAt(0) == "/") ? e.pathname : "/" + e.pathname;
        if (e.search && e.pathname.indexOf(e.search) == -1) lnk += e.search;
        if (e.hostname != location.host) lnk = "/external/" + e.hostname + lnk;
        if (typeof (pageTracker) == "object") pageTracker._trackEvent('PDF', 'click', lnk);

    }

    function trackext(evnt) {
        var e = (evnt.srcElement) ? evnt.srcElement : this;
        while (e.tagName != "A") {
            e = e.parentNode;
        }
        var lnk = (e.pathname.charAt(0) == "/") ? e.pathname : "/" + e.pathname;
        if (e.search && e.pathname.indexOf(e.search) == -1) lnk += e.search;
        if (e.hostname != location.host) lnk = "/external/" + e.hostname + lnk;
        if (typeof (pageTracker) == "object") pageTracker._trackEvent('External link', 'click', lnk);

    }

    function trackint(evnt) {
        var e = (evnt.srcElement) ? evnt.srcElement : this;
        while (e.tagName != "A") {
            e = e.parentNode;
        }

        var lnk = (e.pathname.charAt(0) == "/") ? e.pathname : "/" + e.pathname;
        if (e.search && e.pathname.indexOf(e.search) == -1) lnk += e.search;
        if (e.hostname != location.host) lnk = "/external/" + e.hostname + lnk;
        if (typeof (pageTracker) == "object") pageTracker._trackEvent('Internal link', 'click', lnk);
    }


    function trackRSS(evnt) {
        var e = (evnt.srcElement) ? evnt.srcElement : this;
        while (e.tagName != "A") {
            e = e.parentNode;
        }

        var lnk = (e.pathname.charAt(0) == "/") ? e.pathname : "/" + e.pathname;
        if (e.search && e.pathname.indexOf(e.search) == -1) lnk += e.search;
        if (e.hostname != location.host) lnk = "/external/" + e.hostname + lnk;
        if (typeof (pageTracker) == "object") pageTracker._trackEvent('RSS', 'click', lnk);
    }



}


	

 

