jQuery(document).ready(function($)
{
	//grab page-level constants
	
	var ab_test_version = 'MyBuysTest';
	
	var groupID = /\/g_([0-9]+?)\//i.exec(location.pathname)[1];
	
	//constants
	
	var re_qs_productID = /(?:^|&)(?:i|item)=([0-9]{3}[0-9a-z]+?)(?:&|$)/i;
	
	//event handlers
	
	/**
	 * Someone is probably starting to click in a MyBuys recommendation area.
	 */
	function mousedownMyBuys(e)
	{
		$clickedOn = $(e.target);
		$zone = $(this);
		
		//where are we?
		
		if($clickedOn.is('a'))
		{
			var $activeLink = $clickedOn;
		}
		else
		{
			var $activeLink = $clickedOn.parents('a:first');

			if($activeLink.size() !== 1) // in case we aren't actually inside a link
				return;
		}
		
		//prevent duplicates
		
		if($zone.is('.mousedown-sent')) // should never happen
			return;
		
		// harvest

		var query = $activeLink.attr('href').replace(/^.+?\?(.+)$/, '$1');
		
		var reResult = re_qs_productID.exec(query);
		
		if (reResult == null) //could not find product id
		    return;
		    
	    $zone.addClass('mousedown-sent');
		$zone.unbind('mousedown.mybuys');    
		
		var prodID = reResult[1];
		var zoneID = $zone.attr('mybuyszone');

		//delegate

		if (typeof (CreateClickMapEventAB) != "undefined")
		    CreateClickMapEventAB($activeLink.get(0), groupID, zoneID, prodID, ab_test_version); //link tracking
	}
	
	
	//triggers
	
	$('.recommendation-mybuys').children('[mybuyszone]').bind('mousedown.mybuys', mousedownMyBuys);
	
});

