document.observe("dom:loaded", function() {
	$('n1').hide();
	$('n2').hide();
	$('n3').hide();
	$('n4').hide();
	$('n5').hide();
	var form = $('form');
	form['addfm'].selectedIndex=0;
	form['name1'].value=='';
	form['name2'].value=='';
	form['name3'].value=='';
	form['name4'].value=='';
	form['name5'].value=='';
	updatePrice();
	validate();
		
	 $$("select").each(function(node){
                Event.observe(node,'change',function(){updatePrice();validate();});
        });		
	
	 $$("input").each(function(node){
                Event.observe(node,'change',function(){updatePrice();validate();});
        });

	 $$("input").each(function(node){
                Event.observe(node,'click',function(){updatePrice();validate();});
        });
	
	
});

function validate(){
	var form = $('form');
	$('ename').update('');
	$('eemail').update('');
	$('eaddress').update('');
	$('ecity').update('');
	$('estate').update('');
	$('ezip').update('');
	$('ename1').update('');
	$('ename2').update('');
	$('ename3').update('');
	$('ename4').update('');
	$('ename5').update('');

	pass = true;
	if(form['name'].value==''){ $('ename').update('<sup>* Required</sup>'); pass = false; }
	if(form['email'].value==''){ $('eemail').update('<sup>* Required</sup>'); pass = false; }
	if(form['address'].value==''){ $('eaddress').update('<sup>* Required</sup>'); pass = false; }
	if(form['city'].value==''){ $('ecity').update('<sup>* Required</sup>'); pass = false; }
	if(form['state'].value==''){ $('estate').update('<sup>* Required</sup>'); pass = false; }
	if(form['zip'].value==''){ $('ezip').update('<sup>* Required</sup>'); pass = false; }
	
	if(form['addfm'].selectedIndex>=1&&form['name1'].value==''){ $('ename1').update('<sup>* Required</sup>'); pass = false; }
	if(form['addfm'].selectedIndex>=2&&form['name2'].value==''){ $('ename2').update('<sup>* Required</sup>'); pass = false; }
	if(form['addfm'].selectedIndex>=3&&form['name3'].value==''){ $('ename3').update('<sup>* Required</sup>'); pass = false; }
	if(form['addfm'].selectedIndex>=4&&form['name4'].value==''){ $('ename4').update('<sup>* Required</sup>'); pass = false; }
	if(form['addfm'].selectedIndex>=5&&form['name5'].value==''){ $('ename5').update('<sup>* Required</sup>'); pass = false; }
	return pass;
}

function docheck(){
	var form = $('form');
	pass = validate();
	if(!pass){alert('Please fill in all the required fields!');}
	if(pass&&!form['agree'].checked){alert('Please click the checkbox to agree to the terms!'); pass = false;}
	if(pass&&(form['price'].value==0||form['price'].value=='')){alert('Your grand total is $0. Please select more items.'); pass = false;}
	
	if(pass){pass=confirm('Please confirm that all information is correct. No further changes can be made after this step.')}
	if(pass){form['submit'].disabled=true;form['submit'].value='Please wait...';}
	return pass;

}

function updateFM(num){
	$('n1').hide();
	$('n2').hide();
	$('n3').hide();
	$('n4').hide();
	$('n5').hide();
	if(num>=1) $('n1').show();
	if(num>=2) $('n2').show();
	if(num>=3) $('n3').show();
	if(num>=4) $('n4').show();
	if(num>=5) $('n5').show();
	if(num>=4&&!$('fp').checked){$('fp').checked=true;alert('The family access pass has been added to the shopping cart.');}
	if(num<4&&$('fp').checked){$('fp').checked=false;alert('The family access pass has been removed from the shopping cart.');}
}

function updatePrice(){
	var form = $('form');
	familypass=0;
	enduro=0;
	if(form['enduro_challenge'].selectedIndex!=0)enduro=1
	if(form['familypass'].checked)familypass=1
	cost =
	  30 * form['ridingpermit'].value
	+ 05 * form['eventpass'].value
	+ 20 * familypass
	+ 15 * form['shirt_s'].value
	+ 15 * form['shirt_m'].value
	+ 15 * form['shirt_l'].value
	+ 15 * form['shirt_xl'].value
	+ 15 * form['shirt_xxl'].value
	+ 15 * form['shirt_youth'].value
	+ 15 * form['brimstone_shirt'].value
	+ 15 * form['sidex_shirt'].value
	+ 15 * form['hat1'].value
	+ 15 * form['hat2'].value
	+ 45 * enduro
	+ 01 * form['raffle1'].value
	+ 10 * form['raffle15'].value
	+ 20 * form['raffle40'].value
	+ 40 * form['raffle100'].value;
	form['price'].value = cost;
	$('gt').update('<strong>Grand Total:</strong> $'+cost);
}