// Google Analytics External files
var hrefs = document.getElementsByTagName("a");
var link_path = "";

for (var l = 0; l < hrefs.length; l++) {
    try {
        var link_path = hrefs[l].pathname;
        if (document.location.host != hrefs[l].hostname) {
            addtrackerlistener(hrefs[l]);
            /*
            if (link_path.match(/\.(doc|pdf|xls|ppt|zip|txt|vsd|vxd|js|css|rar|exe|wma|mov|avi|wmv|mp3)$/)) {
                addtrackerlistener(hrefs[l]);
            }
            */
        }
    }
    catch(err) { }
}

function addtrackerlistener(obj) {
	if (obj.addEventListener) {
		obj.addEventListener('click', trackfiles, true);
	}
    else if (obj.attachEvent) {
		obj.attachEvent('onclick', trackfiles);
	}
}

function trackerGetHost(url) {
    url = /\/([^\/]+)[\/]*/.exec(url);
	if (url != null) {
        if (typeof(url[1]) == 'string') { return url[1]; }
    }
    return '';
}

function trackerGetPath(url) {
    url = /\/\/[^\/]+(\/.+)$/.exec(url);
	if (url != null) {
        if (typeof(url[1]) == 'string') { return url[1]; }
    }
    return '';
}

function trackfiles(array_element) {
	
	var file_path = "";
	var output = '';
	var thisHost;
	var myPath;

	if (typeof(array_element.srcElement) == "undefined") {
		thisHost = this.hostname;
		myPath = this.pathname;
	}
    else {
		if (array_element.srcElement.toString() == "[object]") {
			thisHost = trackerGetHost(array_element.srcElement.parentNode);
			myPath = trackerGetPath(array_element.srcElement.parentNode);
		}
        else {
			thisHost = trackerGetHost(array_element.srcElement);
			myPath = trackerGetPath(array_element.srcElement);
		}
	}
	
	if (document.location.host != thisHost) {
		file_path = "/exlinks/" + thisHost;
	}
	file_path = file_path + myPath;
	file_path = file_path.replace(/exlinks\/\//, "exlinks/", file_path);

	// alert('File Path: ' + file_path);
	pageTracker._trackPageview(file_path);
}