﻿function getFileName(url) {
    var m = url.toString().match(/.*(\/.+\..*)/);
    return m && m.length > 1 ? m[1] : "";
}

function logger(filename) {
    if (typeof urchinTracker == "function") {
        urchinTracker(filename);
    }
    else if (pageTracker && pageTracker._trackPageview && typeof pageTracker._trackPageview == "function") {
        pageTracker._trackPageview(filename);
    }
    return true;
}

function setClickListener(obj, func, param) {
    if (obj.addEventListener) {
        obj.addEventListener("click", function () { logger(param); }, false);
    }
    else {
        obj.attachEvent("onclick", function () { logger(param); });
    }
}

function logger_init() {
    var allLinks = document.getElementsByTagName("a")
    for (var i = 0; i < allLinks.length; i++) {
        var lnk = allLinks[i];
        var linkURL = lnk.href;
        var indexOfQuestionmark = linkURL.indexOf('?');
        // If there is a questionmark, then arguments are enclosed. Remove them.
        if (indexOfQuestionmark >= 0)
            linkURL = linkURL.substr(0, indexOfQuestionmark);
        // Check if the link (potentially to a file) does have an extension. If not skip to next link.
        var lastIndexOfDot = linkURL.lastIndexOf('.');
        if (lastIndexOfDot < 0)
            continue;

        var filetype = linkURL.substr(lastIndexOfDot, linkURL.length - lastIndexOfDot);
        if (filetype == ".pdf" || filetype == ".doc" || filetype == ".docx") {
            setClickListener(lnk, logger, getFileName(linkURL))
        }
    }
}

if (window.addEventListener)
    window.addEventListener("load", logger_init, false);
else
    window.attachEvent("onload", logger_init);




