var opts = jQuery.extend({
	external:	'/external/',
	mailto:		'/mailtos/',
	download:	'/downloads/',
	extensions: [
			'pdf','doc','xls','csv','jpg','gif', 'mp3',
			'swf','txt','ppt','zip','gz','dmg','xml'		
	]	
}, {});


// gaTracker: jQuery Google Analytics Integration
// A quicker, automated way to embed Google Analytics.
// (c)2007 Jason Huck/Core Five Creative
// Returns the given URL prefixed if it is:
//		a) a link to an external site
//		b) a mailto link
//		c) a downloadable file
// ...otherwise returns an empty string.
function decorateLink(u) {
	var trackingURL = '';
	
	if(u.indexOf('://') == -1 && u.indexOf('mailto:') != 0){
		// no protocol or mailto - internal link - check extension
		var ext = u.split('.')[u.split('.').length - 1];			
		var exts = opts.extensions
		
		for(i = 0; i < exts.length; i++){
			if(ext == exts[i]){
				trackingURL = opts.download + u;
				break;
			}
		}				
	} else {
		if(u.indexOf('mailto:') == 0){
			// mailto link - decorate
			trackingURL = opts.mailto + u.substring(7);					
		} else {
			// complete URL - check domain
			var regex = /([^:\/]+)*(?::\/\/)*([^:\/]+)(:[0-9]+)*\/?/i;
			var linkparts = regex.exec(u);
			var urlparts = regex.exec(location.href);					
			if(linkparts[2] != urlparts[2]) trackingURL = opts.external + u;
		}
	}
	
	return trackingURL;			
}

$(function() {
  $('a').each(function(){
  	var u = $(this).attr('href');
  	
  	if(typeof(u) != 'undefined'){
  		var newLink = decorateLink(u);
  
  		if(newLink.length){
  			$(this).click(function(){
  				pageTracker._trackPageview(newLink);
  			});
  		}
  	}				
  });
});