document.observe("dom:loaded", function() {
	updatePrice();
	validate();
		
	 $$("input").each(function(node){
                Event.observe(node,'change',function(){updatePrice();validate();});
				 Event.observe(node,'click',function(){updatePrice();validate();});
        });
	
	$$("#cp1").each(function(node){
		var form = $('form');
               Event.observe(node,'keyup',function(){
					if( form['cell_phone1'].value.length==3 ){
						form['cell_phone2'].focus();
					}
				});
		});	
	$$("#cp2").each(function(node){
		var form = $('form');
               Event.observe(node,'keyup',function(){
					if( form['cell_phone2'].value.length==3 ){
						form['cell_phone3'].focus();
					}
				});
		});
	
	
});

function validate(){
	var form = $('form');
	$('ename').update('');
	$('eage').update('');
	$('eemail').update('');
	$('eaddress').update('');
	$('ecell_phone').update('');
	$('etransponder').update('');
	$('esponsors').update('');
if(form['notransponder'].checked){
form['transponder'].value='none';
form['transponder'].disabled=1;
}
else if(form['transponder'].value=='none'){
form['transponder'].value='';
form['transponder'].disabled=0;
}
	pass = true;
	if(form['name'].value==''){ $('ename').update('<sup>* Required</sup>'); pass = false; }
	if(form['age'].value==''){ $('eage').update('<sup>* Required</sup>'); pass = false; }
	if(form['email'].value==''){ $('eemail').update('<sup>* Required</sup>'); pass = false; }
	else if (!/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(form['email'].value)){ $('eemail').update('<sup>* Invalid Email!</sup>'); pass = false; }
	if(form['address'].value==''){ $('eaddress').update('<sup>* Required</sup>'); pass = false; }
	if(form['cell_phone1'].value.length<3||form['cell_phone2'].value.length<3||form['cell_phone3'].value.length<4){ $('ecell_phone').update('<sup>* Invalid Number!</sup>'); pass = false; }
	if(isNaN(form['cell_phone1'].value)||isNaN(form['cell_phone2'].value)||isNaN(form['cell_phone3'].value)){ $('ecell_phone').update('<sup>* Invalid Number!</sup>'); pass = false; }
	if(form['cell_phone1'].value==''&&form['cell_phone2'].value==''&&form['cell_phone3'].value==''){ $('ecell_phone').update('<sup>* Required</sup>'); pass = false; }
	if(!form['notransponder'].checked){
	if(isNaN(form['transponder'].value)||form['transponder'].value.length!=7){ $('etransponder').update('<sup>* Invalid Number!</sup>'); pass = false; }
	if(form['transponder'].value==''){ $('etransponder').update('<sup>* Required</sup>'); pass = false; }
	}
	if(form['sponsors'].value==''){ $('esponsors').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['price'].value==0||form['price'].value=='')){alert('Your grand total is $0. Please select more items.'); pass = false;}
	else if(pass&&(!(form['agree'].checked))){alert('You have to agree to the Terms & Conditions before you can continue.'); 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;

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

function updatePrice(){
	var form = $('form');
	cost =
	  35 * form['v1'].checked
	+ 35 * form['v2'].checked
	+ 300 * form['v3'].checked
	+ 300 * form['e1'].checked
	+ 300 * form['e2'].checked
	+ 300 * form['e3'].checked
	+ 300 * form['e4'].checked
	+ 300 * form['e5'].checked
	+ 300 * form['e6'].checked
	+ 300 * form['e7'].checked
	+ 300 * form['e8'].checked;
	form['price'].value = cost;
	$('gt').update('<strong>Grand Total:</strong> $'+cost);
}