dojo.require("dojo.parser");
dojo.require("dijit.Dialog");
dojo.require("dijit.form.Button");

var items = 0;
function add_to_cart( id )
{
	if( items > 0 )
		dojo.byId('cart_empty').style.display = 'none';
	
	if( id == 'shirt' )
		jersey_in_cart();
	else if( id == '1' )
		race_in_cart( 13, 'Cross Country', 'June 13, 2009', '$35.00' );
	else if( id == '2' )
		race_in_cart( 14, 'Super D', 'June 13, 2009', '$25.00' );
	else if( id == '3' )
	{
		race_in_cart( 13, 'Cross Country', 'June 13, 2009', '$35.00' );
		race_in_cart( 14, 'Super D', 'June 13, 2009', '$25.00' );
		discount_cart( 13, 'Discount - $5 off' );
	}
	else if( id == '4' )
		race_in_cart( 15, 'Cross Country', 'July 4, 2009', '$35.00' );
	else if( id == '5' )
		race_in_cart( 16, 'Super D', 'July 4, 2009', '$25.00' );
	else if( id == '6' )
	{
		race_in_cart( 15, 'Cross Country', 'July 4, 2009', '$35.00' );
		race_in_cart( 16, 'Super D', 'July 4, 2009', '$25.00' );
		discount_cart( 15, 'Discount - $5 off' );
	}
	else if( id == '7' )
		race_in_cart( 17, 'Cross Country', 'August 15, 2009', '$35.00' );
	else if( id == '8' )
		race_in_cart( 18, 'Super D', 'August 15, 2009', '$25.00' );
	else if( id == '9' )
	{
		race_in_cart( 17, 'Cross Country', 'August 15, 2009', '$35.00' );
		race_in_cart( 18, 'Super D', 'August 15, 2009', '$25.00' );
		discount_cart( 17, 'Discount - $5 off' );
	}
	else if( id == '10' )
		race_in_cart( 19, 'Cross Country', 'September 26, 2009', '$35.00' );
	else if( id == '11' )
		race_in_cart( 20, 'Super D', 'September 26, 2009', '$25.00' );
	else if( id == '12' )
	{
		race_in_cart( 19, 'Cross Country', 'September 26, 2009', '$35.00' );
		race_in_cart( 20, 'Super D', 'September 26, 2009', '$25.00' );
		discount_cart( 19, 'Discount - $5 off' );
	}
	else if( id == '13' )
	{
		race_in_cart( 21, 'Cyclocross', 'September 27, 2009, 10:15 A', '$25.00' );
	}
	else if( id == '14' )
	{
		race_in_cart( 22, 'Cyclocross', 'September 27, 2009, 11:00 A', '$25.00' );
	}
	else if( id == '15' )
	{
		race_in_cart( 25, 'Cyclocross', 'September 27, 2009, 12:00 P', '$25.00' );
	}
	else if( id == '16' )
	{
		race_in_cart( 26, 'Cyclocross', 'September 27, 2009, 1:00 P', '$25.00' );
	}
	else if( id == '17' )
	{
		race_in_cart( 27, 'Cyclocross', 'September 27, 2009, 2:15 P', '$25.00' );
	}
}

function race_in_cart( id, race_name, date, price )
{
	var error = 0;
	// make sure race is not already in cart
	var race_ids = document.getElementsByName('race_id[]');
	for( var i = 0; i < race_ids.length; i++ )
	{
		var node = race_ids[i];
		if( node.value == id )
		{
			dojo.byId('raceName').innerHTML = race_name;
			dijit.byId('alreadyInCart').show();
			error = 1;
		}
	}
	
	if( !error )
	{
		var div = document.createElement('DIV');
			div.id = 'item_'+items;
			div.className = 'item';
		var p = document.createElement('P');
		var strong = document.createElement('STRONG');
			strong.appendChild( document.createTextNode(race_name) );
			p.appendChild( strong );
			p.appendChild( document.createElement('BR') );
		var em = document.createElement('EM');
			em.appendChild( document.createTextNode(date) );
			p.appendChild( em );
			p.appendChild( document.createElement('BR') );
			p.appendChild( document.createTextNode(price) );
			p.appendChild( document.createElement('BR') );
		var link = document.createElement('A');
			link.href = "javascript:remove_from_cart("+items+")";
			link.appendChild( document.createTextNode("Remove from Cart") );
		var hidden = document.createElement('INPUT');
			hidden.type = 'hidden';
			hidden.name = 'race_id[]';
			hidden.id	= 'race_'+items;
			hidden.value = id;
			p.appendChild(hidden);
			
		p.appendChild( link );
		div.appendChild( p );
		
		var cart_contents = dojo.byId('cart_contents');
			cart_contents.appendChild( div );
			
		items++;
		
		if( !dojo.byId('reminder').checked )
		{
			dojo.byId('productType').innerHTML = 'race';
			dijit.byId('addedToCart').show();
		}
	}
}

function jersey_in_cart()
{
	var price 	= '$25.00';
	var colors 	= dojo.byId('color');
	var sizes 	= dojo.byId('size');
	var error	= 0;
	
	if( colors.value == '' && sizes.value == '' )
	{
		dojo.byId('jerseyMessage').innerHTML = "Hey! You forgot to choose a jersey <strong>size</strong> and <strong>color</strong>!";
		dijit.byId("jerseyError").show();
		error = 1;
	}
	else if( colors.value == '' && sizes.value != '' )
	{
		dojo.byId('jerseyMessage').innerHTML = "Hey! You forgot to choose a jersey <strong>size</strong>!";
		dijit.byId("jerseyError").show();
		error = 1;
	}
	else if( colors.value != '' && sizes.value == '' )
	{
		dojo.byId('jerseyMessage').innerHTML = "Hey! You forgot to choose a jersey <strong>color</strong>!";
		dijit.byId("jerseyError").show();
		error = 1;
	}
	
	if( !error )
	{
		var div = document.createElement('DIV');
			div.id = 'item_'+items;
			div.className = 'item';
		var p = document.createElement('P');
		var strong = document.createElement('STRONG');
			strong.appendChild( document.createTextNode("Jersey") );
			p.appendChild( strong );
			p.appendChild( document.createElement('BR') );
		var em = document.createElement('EM');
			em.appendChild( document.createTextNode(sizes.value+" - "+colors.value) );
			p.appendChild( em );
			p.appendChild( document.createElement('BR') );
			p.appendChild( document.createTextNode(price) );
			p.appendChild( document.createElement('BR') );
		var link = document.createElement('A');
			link.href = "javascript:remove_from_cart("+items+")";
			link.appendChild( document.createTextNode("Remove from Cart") );
		var isize = document.createElement('INPUT');
			isize.type = 'hidden';
			isize.name = 'size[]';
			isize.value = sizes.value;
			p.appendChild(isize);
		var icolor = document.createElement('INPUT');
			icolor.type = 'hidden';
			icolor.name = 'color[]';
			icolor.value = colors.value;
			p.appendChild(icolor);
			
		p.appendChild( link );
		div.appendChild( p );
		
		var cart_contents = dojo.byId('cart_contents');
			cart_contents.appendChild( div );
			
		items++;
		
		size.value = '';
		color.value = '';
		
		if( !dojo.byId('reminder').checked )
		{
			dojo.byId('productType').innerHTML = 'jersey';
			dijit.byId('addedToCart').show();
		}
	}
}

function discount_cart( race_id, discount )
{
	if( race_id == 13 || race_id == 14 )
		id = 1;
	if( race_id == 15 || race_id == 16 )
		id = 2;
	if( race_id == 17 || race_id == 18 )
		id = 3;
	if( race_id == 19 || race_id == 20 )
		id = 4;
	
	var div = document.createElement('DIV');
			div.id = 'discount_'+id;
			div.className = 'item';
	var p = document.createElement('P');
		p.appendChild( document.createTextNode(discount) );
	var cart_contents = dojo.byId('discounts');
			cart_contents.appendChild( p );
}

function remove_from_cart( id )
{
	// check for discounts
	if( dojo.byId('race_'+id) != undefined )
	{
		var race_id = dojo.byId('race_'+id).value;
		
		if( race_id == 13 || race_id == 14 )
			var d_id = 1;
		if( race_id == 15 || race_id == 16 )
			var d_id = 2;
		if( race_id == 17 || race_id == 18 )
			var d_id = 3;
		if( race_id == 19 || race_id == 20 )
			var d_id = 4;
		
		if( dojo.byId('discount_'+d_id) != undefined ){
			dojo.byId('discounts').removeChild( dojo.byId('discount_'+d_id) );
		}
	}
	
	var cart_contents = dojo.byId('cart_contents');
	var div	= dojo.byId('item_'+id);
	cart_contents.removeChild( div );
	
	if( dojo.byId('cart_contents') == '' ){
		dojo.byId('cart_empty').style.display = 'block';
		items = 0;
	}
}

function checkout()
{
	if( dojo.byId('cart_contents').innerHTML == '' )
	{
		dijit.byId('emptyCart').show();
		return false;
	}
	else
	{
		return true;
	}
}