function submit_tickets(form, use_ssl){
	$(form).find('li.error').removeClass('error').find('p.error').remove();
	if($('input.package_select:checked').length==0){
		$(form).find('ul').prepend('<li class="error"><p class="error">You must select at least one ticket package</p></li>');
		return false;
	}
	input_valid=true;
	$('input.package_select:checked').each(function(){
		var id=this.id.split(/_/);
		id=id[id.length-1];
		if($('input#field_package_qty_'+id).val()=='' || 
		   parseInt($('input#field_package_qty_'+id).val())<1 || 
		   !$('input#field_package_qty_'+id).val().match(/^\d+$/)
		){
			$(this).closest('li').addClass('error').append('<p class="error">You must enter a quantity greater than 1 for each selected package.</p>');
			input_valid=false;
		}
	});
	if(!input_valid){
		return false;
	}
	var target='http';
	if(use_ssl)
		target += 's';
	target += '://'+window.location.hostname+'/include/cart/ticket_select.php';
	$('div#ecommerce_area').load(target,$(form).serializeArray());
	return false;
}

function submit_customer(form, use_ssl){
	$(form).find('li.error').removeClass('error').find('p.error').remove();
	input_valid=true;
	if(!$('input#field_first').val().match(/[a-zA-Z]+/)){
		$('input#field_first').closest('li').addClass('error').append('<p class="error">You Must Enter a First Name</p>');
		input_valid=false;
	}
	if(!$('input#field_last').val().match(/[a-zA-Z]+/)){
		$('input#field_last').closest('li').addClass('error').append('<p class="error">You must enter a last name</p>');
		input_valid=false;
	}
	if(!$('input#field_addrl1').val().match(/[a-zA-Z]+/)){
		$('input#field_addrl1').closest('li').addClass('error').append('<p class="error">You must enter an address</p>');
		input_valid=false;
	}
	if(!$('input#field_city').val().match(/[a-zA-Z]+/)){
		$('input#field_city').closest('li').addClass('error').append('<p class="error">You must enter a city</p>');
		input_valid=false;
	}
	if(!$('input#field_state').val().match(/^[a-zA-Z]{2}$/)){
		$('input#field_state').closest('li').addClass('error').append('<p class="error">You must enter a state</p>');
		input_valid=false;
	}
	if(!$('input#field_zip').val().match(/^\d{5}(\-\d{4})?$/)){
		$('input#field_zip').closest('li').addClass('error').append('<p class="error">You must enter a valid US zip code</p>');
		input_valid=false;
	}
	if(!$('input#field_phone').val().match(/^[\(]?\d{3}[\-\)\s\.]*\d{3}[\-\s\.]*\d{4}$/)){
		$('input#field_phone').closest('li').addClass('error').append('<p class="error">You must enter your phone number in xxx-xxx-xxxx format</p>');
		input_valid=false;
	}
	if(!$('input#field_email').val().match(/^[a-zA-Z0-9_\-\.]+@[a-zA-Z0-9_\-\.]+\.[a-zA-Z]{2,4}$/)){
		$('input#field_email').closest('li').addClass('error').append('<p class="error">You must enter your a valid email address</p>');
		input_valid=false;
	}
	if(!$('input#field_email').val()!=!$('input#field_email_confirm').val()){
		$('input#field_email').closest('li').addClass('error');
		$('input#field_email_confirm').closest('li').addClass('error').append('<p class="error">Email Addresses do not match</p>');
		input_valid=false;
	}

	if(!input_valid){
		return false;
	}
	var target='http';
	if(use_ssl)
		target += 's';
	target += '://'+window.location.hostname+'/include/cart/cust_info.php';
	$('div#ecommerce_area').load(target,$(form).serializeArray());
	return false;
}
function submit_billing(form, use_ssl){
	$(form).find('li.error').removeClass('error').find('p.error').remove();
	input_valid=true;

	if($('select#field_card_type').val()=='visa' && !$('input#field_cc_num').val().match(/^4\d{15}$/)){
		$('input#field_cc_num').closest('li').addClass('error').append('<p class="error">This is not a valid Visa card number.</p>');
		input_valid=false;
	}

	if($('select#field_card_type').val()=='mc' && !$('input#field_cc_num').val().match(/^5[1-5]\d{14}$/)){
		$('input#field_cc_num').closest('li').addClass('error').append('<p class="error">This is not a valid Mastercard number.</p>');
		input_valid=false;
	}

	if(!$('input#field_csc').val().match(/\d{3}/)){
		$('input#field_csc').closest('li').addClass('error').append('<p class="error">Please enter the 3 digit security code located on the back of your card</p>');
		input_valid=false;
	}

	if(!$('input#field_first_on_card').val().match(/[a-zA-Z]+/)){
		$('input#field_first_on_card').closest('li').addClass('error').append('<p class="error">You must enter your first name as it appears on your card/billing statement</p>');
		input_valid=false;
	}

	if(!$('input#field_last_on_card').val().match(/[a-zA-Z]+/)){
		$('input#field_last_on_card').closest('li').addClass('error').append('<p class="error">You must enter your last name as it appears on your card/billing statement</p>');
		input_valid=false;
	}

	if(!$('input#field_billing_addr').val().match(/[a-zA-Z]+/)){
		$('input#field_billing_addr').closest('li').addClass('error').append('<p class="error">You must enter the address found on your credit card billing statement</p>');
		input_valid=false;
	}

	if(!$('input#field_billing_city').val().match(/[a-zA-Z]+/)){
		$('input#field_billing_city').closest('li').addClass('error').append('<p class="error">You must enter a city</p>');
		input_valid=false;
	}

	if(!$('input#field_billing_state').val().match(/^[a-zA-Z]{2}$/)){
		$('input#field_billing_state').closest('li').addClass('error').append('<p class="error">You must enter a state</p>');
		input_valid=false;
	}

	if(!$('input#field_billing_zip').val().match(/^\d{5}(\-\d{4})?$/)){
		$('input#field_billing_zip').closest('li').addClass('error').append('<p class="error">You must enter a valid US zip code</p>');
		input_valid=false;
	}

	if(!$('select#field_exp_mo').val().match(/^\d{2}$/)){
		$('select#field_exp_mo').closest('li').addClass('error').append('<p class="error">Please select the month and year of your credit card\'s expiration date</p>');
		input_valid=false;
	}

	if(!$('select#field_exp_yr').val().match(/^\d{4}$/)){
		$('select#field_exp_yr').closest('li').addClass('error').append('<p class="error">Please select the month and year of your credit card\'s expiration date</p>');
		input_valid=false;
	}


	if(!input_valid){
		return false;
	}
	var target='http';
	if(use_ssl)
		target += 's';
	target += '://'+window.location.hostname+'/include/cart/billing_info.php';
	$('div#ecommerce_area').load(target,$(form).serializeArray());
	return false;
}

function tickets_update_totals(){
	var ticket_total=0;
	var cost_total=0;
	$('input.package_select:checked').each(function(){
		var id=this.id.split(/_/);
		id=id[id.length-1];
		if($('input#field_package_qty_'+id).length && $('input#field_package_qty_'+id).val().match(/^\d+$/)){
			ticket_total += parseInt($('input#field_package_qty_'+id).val());
			cost_total += parseInt($('input#field_package_qty_'+id).val())*parseFloat($('input#field_package_price_'+id).val());
		}
	});
	$('p#disp_ticket_total').text('Number of tickets: '+ticket_total);
	$('p#disp_cost_total').text('Order SubTotal: $'+cost_total.toFixed(2));
	return ticket_total;
}

function toggle_package_select(field){
	var id=field.id.split(/_/);
	id=id[id.length-1];
	if(field.checked){
		$('li#fieldset_qty_'+id).show();
		if($('input#field_package_qty_'+id).val()==''){
			$('input#field_package_qty_'+id).val(1);
		}
	}else{
		$('li#fieldset_qty_'+id).hide();
	}
	tickets_update_totals();
}