var target;
var ext = new Array();
var asp = "/log_downloads.aspx";
var httpRequest;

ext[0] = "doc";
ext[1] = "pdf";
ext[2] = "xls";

function init() {
	
	var anchorArray = document.getElementsByTagName('a');
	var validLink;
	var extension;
	
	for (var a=0;a<anchorArray.length;a++) {
		
		validLink = false;
		
		target = anchorArray[a].href;
		
		extension = target.substring(target.lastIndexOf(".")+1);
		
		for (var b=0;b<ext.length;b++) {
			
			if (ext[b]==extension) {
				
				validLink = true;
				b = ext.length;
			}
		}
		if (validLink) {
			var oldonclick = anchorArray[a].onclick;
			if (typeof anchorArray[a].onclick != 'function') { 
				anchorArray[a].onclick = recordClick; 
			} else { 
				anchorArray[a].onclick = function() {
					if (oldonclick) {
						oldonclick(); 
					}
					recordClick();
				}
			}
		}
	}
}	
function recordClick(e) {
	var lastSlashPos;
	var filename;
	var test = false;
	target = this.href;
	if (target) {
		lastSlashPos = target.lastIndexOf("/")+1;
		filename = target.substring(lastSlashPos);
		if (filename!='') {
			var extension = target.substring(target.lastIndexOf(".")+1);
			if (extension!='') {
				for (var a=0;a<ext.length;a++) {
					if (extension==ext[a]) {
						test = true
						a = ext.length;
	}	}	}	}	}
	if (test==true) {
		//alert('true');
		runTrack(asp + '?click=' + filename + '&rand=' + Math.floor(Math.random()*1000001));
	} else {
		//alert('false');
		runTrack();
	}
	return false;
}

function runTrack(url) {
	if (window.XMLHttpRequest) {
		httpRequest = new XMLHttpRequest();
	} else if (window.ActiveXObject) {
		httpRequest = new ActiveXObject("Microsoft.XMLHTTP")
	}
	if (!httpRequest) {
		//alert('error: cannot create an XMLHTTP instance');
		return false;
	}
	if (url!=null) {
		//alert(url);
		
		httpRequest.open('GET', url, true);
		
		httpRequest.onreadystatechange = alertContents;
		
		httpRequest.send(null);
		
		window.location = target + '?rand=' + Math.floor(Math.random()*1000001);
	
	} else {
		
		window.location = target;
	}
}

function alertContents() {
	if (httpRequest.readyState == 4) {
		if (httpRequest.status == 200) {
			//alert(httpRequest.status);
		} else {
			//alert('There was a problem with the request.');
		}
	}	
}

function addLoadEvent(func) {
	var oldonload = window.onload;
	if (typeof window.onload != 'function') { 
		window.onload = func; 
	} else { 
		window.onload = function() {
			if (oldonload) {
				oldonload(); 
			}
			func();
		}
	}
}

addLoadEvent(init);