var fileTypes = (".doc",".xls",".exe",".zip",".pdf");
var debug = '';
var extIdentifier = '/out-ap/';
if (document.getElementsByTagName) {
 var hrefs = document.getElementsByTagName('a');
 for (var l = 0; l < hrefs.length; l++) {
  //protocol, host, hostname, port, pathname, search, hash
  if (hrefs[l].href.indexOf("http://"+location.host)==0) {
   var path = hrefs[l].pathname;
   if (path.indexOf(fileTypes) != -1) startListening(hrefs[l],"click",trackDocuments);
   else if (path.indexOf("redirect.aspx")!=-1) startListening(hrefs[l],"click",trackExternalLinks);
  } else {
   startListening(hrefs[l],"click",trackExternalLinks);
  }
 }
}
function startListening (obj,evnt,func) {
 if (obj.protocol != "http:") return;
 if (obj.addEventListener) {
  obj.addEventListener(evnt,func,false);
 } else if (obj.attachEvent) {
  obj.attachEvent("on" + evnt,func);
 }
}
function trackDocuments (evnt) {
 var url = (evnt.srcElement) ? "/" + evnt.srcElement.pathname : this.pathname;
 if (typeof(urchinTracker) == "function") {
  if (!debug) {
   urchinTracker(url);
  } else {
   alert(url);
   return false;
  }
 }
}
function trackExternalLinks (evnt) {
 var lnk;
 if (evnt.srcElement) {
  var elmnt = evnt.srcElement;
  while (elmnt.tagName != "A") {
   var newelmnt = elmnt.parentNode;
   elmnt = newelmnt;
  }
 } else {
  elmnt = this;
 }
 var path = elmnt.pathname;
 if (path != "" && path.indexOf("/") != 0) path = "/"+path;
 if (path.indexOf("redirect.aspx")!=-1 && elmnt.search.indexOf("an=")==-1) {
  lnk = extIdentifier + elmnt.innerHTML;
 } else {
  lnk = extIdentifier + elmnt.hostname + path + elmnt.search;
 }
 lnk = lnk.replace("www.tandem-piazza.org/redirect.aspx","redirect.aspx");
 if (typeof(urchinTracker) == "function") {
  if (!debug) {
   urchinTracker(lnk);
  } else {
   alert("e:"+lnk);
   return false;
  }
 }
}
