// JavaScript Document

/* Calculate Line Item Sum */
function calculate(qty,price,target) {
	sum_field=document.getElementById(target);
	sum_field.value = CurrencyFormatted((qty * price));
	calculate_total();
	return true;
}

/* Calculate Monetary Sum and Format Correction */
function monetary_total(gift) {
	if(gift <0 ) {
		gift = gift * -1;	
	}
	document.golf_form.monetary_sum.value = CurrencyFormatted(gift);
	document.golf_form.monetary_amt.value = CurrencyFormatted(gift);
	calculate_total();
}

/* Calculate Total Of All Line Item Sums */
function calculate_total() {
	document.golf_form.total_sum.value = CurrencyFormatted((parseFloat(document.golf_form.all_in_one_sum.value) + parseFloat(document.golf_form.golf_dinner_sum.value) + parseFloat(document.golf_form.student_all_in_one_sum.value) + parseFloat(document.golf_form.student_golf_dinner_sum.value) + parseFloat(document.golf_form.hole_in_one_sum.value) + parseFloat(document.golf_form.corporate_sum.value) + parseFloat(document.golf_form.putting_sum.value) + parseFloat(document.golf_form.beverage_sum.value) + parseFloat(document.golf_form.hole_sum.value) + parseFloat(document.golf_form.cart_sum.value) + parseFloat(document.golf_form.monetary_sum.value)));
}

/* Format Numbers to Currency (US) */
function CurrencyFormatted(amount) {
	var i = parseFloat(amount);
	if(isNaN(i)) { i = 0.00; }
	var minus = '';
	if(i < 0) { minus = '-'; }
	i = Math.abs(i);
	i = parseInt((i + .005) * 100);
	i = i / 100;
	s = new String(i);
	if(s.indexOf('.') < 0) { s += '.00'; }
	if(s.indexOf('.') == (s.length - 2)) { s += '0'; }
	s = minus + s;
	return s;
}

/* Validate Form Input Fields */
function form_validation() {
	var error_rpt = '';
	if (document.golf_form.first_name.value.length < 1) {
		var error_msg = 'Please provide your first name.\n';
		error_rpt = error_rpt + error_msg;
	}
	
	if (document.golf_form.last_name.value.length < 1) {
		var error_msg = 'Please provide your last name.\n';
		error_rpt = error_rpt + error_msg;
	}
	
	if (document.golf_form.address.value.length < 1) {
		var error_msg = 'Please provide a street address.\n';
		error_rpt = error_rpt + error_msg;
	}
	
	if (document.golf_form.city.value.length < 1) {
		var error_msg = 'Please provide a city.\n';
		error_rpt = error_rpt + error_msg;
	}
	
	if (document.golf_form.state.value == -1) {
		var error_msg = 'Please select a state.\n';
		error_rpt = error_rpt + error_msg;
	}
	
	if (document.golf_form.zip_code.value.length < 5) {
		var error_msg = 'Please provide a zip code.\n';
		error_rpt = error_rpt + error_msg;
	}
	
	if (document.golf_form.phone.value.length < 12) {
		var error_msg = 'Please provide a telephone number.\n';
		error_rpt = error_rpt + error_msg;
	}
	
	if (document.golf_form.email.value.length < 1) {
		var error_msg = 'Please provide an email address.\n';
		error_rpt = error_rpt + error_msg;
	}
	
	if (document.golf_form.total_sum.value == 0) {
		var error_msg = 'Please complete the Golf & Dinner and Sponsorship sections to continue.';
		error_rpt = error_rpt + error_msg;
	}
	
	if (error_rpt != '') {
		alert(error_rpt);
		return false;
	} else {
		return true;
	}
}