var docIdentifier  = '/download';
  
function listenToClicks() { 

  var fileTypes  = [".doc",".xls",".exe",".zip",".pdf",".mp3",".ppt",".pptx",".docx",".xlsx"];
    
	if (document.getElementsByTagName) {
    var aTags = document.getElementsByTagName('a'); 

    
    ANCHOR:
    for (var i = 0; i < aTags.length; i++) { 
      if (aTags[i]=="")                                         {continue ANCHOR; }
      if (typeof aTags[i].hostname == "undefined")              {continue ANCHOR; }
      if (aTags[i].protocol.indexOf("javascript") != -1)        {continue ANCHOR; }
      
      if (aTags[i].hostname.indexOf(window.location.href)) {
       
        FILE:
        // look for a file extension
        for (k = 0; k < fileTypes.length; k++){
          if (aTags[i].pathname.indexOf(fileTypes[k]) != -1) {
            startListening(aTags[i],"click",trackDocuments);  continue ANCHOR; } // file extension was found, go to next anchor
        }
      }
    }    
	}
}

function startListening (obj,evnt,func) { 
  if (obj.addEventListener) { 
    obj.addEventListener(evnt,func,false);
  } else if (obj.attachEvent) { 
    obj.attachEvent("on" + evnt,func);
  }
}



// trackDocuments:  calls _trackPageview before downloading a file
function trackDocuments (evnt) { 
  var url = (evnt.srcElement) ? "/" + evnt.srcElement.pathname : this.pathname; 
  url = docIdentifier + url;
  if (typeof(pageTracker) == "object") {
	  pageTracker._trackPageview(url);
  }

}

startListening(window, 'load', listenToClicks); // register an event listener to run the script when the load event fires.
