// Cross-browser implementation of element.addEventListener()  
function addListener(element, type, expression, bubbling)  
{  
  bubbling = bubbling || false;  

  if(window.addEventListener)    { // Standard  
    element.addEventListener(type, expression, bubbling);  
    return true;  
  } else if(window.attachEvent) { // IE  
    element.attachEvent('on' + type, expression);  
    return true;  
  } else return false;  
}  
  
// Returns the domain portion from an url
function links_getDomain(url) {
	var i = url.indexOf("://");

	if (i == -1) {
		return "";
	}
	
	url = url.substring(i + 3, url.length);

	i = url.indexOf("/");
	if (i != -1) {
		url = url.substring(0, i);

	}
	return url;
}  
  
//This is what i want to do whenever someone clicks on the page  
function itHappened(evt){  
  //Get the clicket element 
  var tg = (window.event) ? evt.srcElement : evt.target;  
  //If it is an A element  
  if (tg.nodeName != 'A' && tg.parentNode.nodeName == 'A') tg = tg.parentNode;
  if(tg.nodeName == 'A'){  
    //And it is not an internal link  
    if(tg.href.indexOf(location.host) == -1 || tg.href.indexOf(location.host) > 14){  
      //Replace all odd characters, so that it works with Analytics Niavgation analysis  
      var url = tg.href.replace(/[^a-z|A-Z]/g, "_");    
      var txt = tg.innerHTML.replace(/[^a-z|A-Z]/g, "_");  
      var str = '/home/outgoinglink/-' + txt + '-' + url;  
      try{  
        //Track it  
        //pageTracker(str); 

        var currentDomain = links_getDomain("" + window.location);		
		var timeStamp = new Date();   //remove from below -- escape(text) +
		var reportUrl = "http://" + currentDomain + str;
		//"http://" + currentDomain + "/" + clicky_text_url_arg +  clicky_link_url_arg + escape(url) + clicky_stamp_url_arg + timeStamp.valueOf();
		var image = new Image();
		image.src = str; //reportUrl;
		
		links_image_load_pause_msecs = 750;

		// loop for a bit to let the image load
		var now = new Date();
		var stopTime = now.getTime() + links_image_load_pause_msecs;
		while(now.getTime() < stopTime) {
			now = new Date();
		} 
      }  
      catch(err){  
        //alert('error: ' + err);  
      }  
    }  
  }  
}  
  
//Add the click listener to the document  
addListener(document, 'click', itHappened);  
