
function subForm(action){
	var objForm = document.ORDER_FORM;
	var objEmailForm = document.EMAIL_FORM;
	var strError = "";
	var isError = false
	
	if(action == "CANCEL"){
		objForm.action="http://www.bodyimageworks.com/order.html"
		objForm.submit();		
	}else{
		if(objForm.realname.value == ""){
			strError += "Please enter a Contact Person.\n";
			isError = true;		
		}
		if(objForm.ADDRESS.value == ""){
			strError += "Please enter an Address.\n";
			isError = true;		
		}
		if(objForm.PHONE_NUMBER.value == ""){
			strError += "Please enter a Phone Number.\n";
			isError = true;		
		}
		if(objForm.email.value == ""){
			strError += "Please enter an Email address.\n";
			isError = true;		
		}
		if(!isError){			
			objEmailForm.action = "http://www.bodyimageworks.com/cgi-bin/formmail.pl"
			objEmailForm.recipient.value = "info@bodyimageworks.com";
			objEmailForm.subject.value = "Order";
			objEmailForm.email.value = objForm.email.value;
			objEmailForm.realname.value = objForm.realname.value;
			objEmailForm.content.value = generateEmail();
			objEmailForm.redirect.value = "http://www.bodyimageworks.com/confirmation.html" + generateRedirect();
			objEmailForm.submit();
		}else{
			alert(strError);		
		}
	}
}

function generateRedirect(){
	var objForm = document.ORDER_FORM;
	var tmpStr = "";
		
	tmpStr += "?COMPANY_NAME=" + objForm.COMPANY_NAME.value;
	tmpStr += "&CONTACT_PERSON=" + objForm.realname.value;
	tmpStr += "&EMAIL_ADDRESS=" + objForm.email.value;
	tmpStr += "&ADDRESS=" + objForm.ADDRESS.value;
	tmpStr += "&PHONE_NUMBER=" + objForm.PHONE_NUMBER.value;
	tmpStr += "&SHIPPING_ADDRESS=" + objForm.SHIPPING_ADDRESS.value;
	tmpStr += "&GRADE_1_TO_3_PRICE=" + objForm.GRADE_1_TO_3_PRICE.value;
	tmpStr += "&GRADE_1_TO_3_QUANTITY=" + objForm.GRADE_1_TO_3_QUANTITY.value;
	tmpStr += "&GRADE_1_TO_3_AMOUNT=" + objForm.GRADE_1_TO_3_AMOUNT.value;	
	tmpStr += "&GRADE_4_TO_6_PRICE=" + objForm.GRADE_4_TO_6_PRICE.value;
	tmpStr += "&GRADE_4_TO_6_QUANTITY=" + objForm.GRADE_4_TO_6_QUANTITY.value;
	tmpStr += "&GRADE_4_TO_6_AMOUNT=" + objForm.GRADE_4_TO_6_AMOUNT.value;	
	tmpStr += "&GRADE_7_TO_9_PRICE=" + objForm.GRADE_7_TO_9_PRICE.value;
	tmpStr += "&GRADE_7_TO_9_QUANTITY=" + objForm.GRADE_7_TO_9_QUANTITY.value;
	tmpStr += "&GRADE_7_TO_9_AMOUNT=" + objForm.GRADE_7_TO_9_AMOUNT.value;	
	tmpStr += "&PARENT_PRICE=" + objForm.PARENT_PRICE.value;
	tmpStr += "&PARENT_QUANTITY=" + objForm.PARENT_QUANTITY.value;
	tmpStr += "&PARENT_AMOUNT=" + objForm.PARENT_AMOUNT.value;	
	tmpStr += "&SCALE_OF_FORTUNE_PRICE=" + objForm.SCALE_OF_FORTUNE_PRICE.value;
	tmpStr += "&SCALE_OF_FORTUNE_QUANTITY=" + objForm.SCALE_OF_FORTUNE_QUANTITY.value;
	tmpStr += "&SCALE_OF_FORTUNE_AMOUNT=" + objForm.SCALE_OF_FORTUNE_AMOUNT.value;
	tmpStr += "&MIRROR_PRICE=" + objForm.MIRROR_PRICE.value;
	tmpStr += "&MIRROR_QUANTITY=" + objForm.MIRROR_QUANTITY.value;
	tmpStr += "&MIRROR_AMOUNT=" + objForm.MIRROR_AMOUNT.value;	
	tmpStr += "&MOUSE_PRICE=" + objForm.MOUSE_PRICE.value;
	tmpStr += "&MOUSE_QUANTITY=" + objForm.MOUSE_QUANTITY.value;
	tmpStr += "&MOUSE_AMOUNT=" + objForm.MOUSE_AMOUNT.value;	
	tmpStr += "&LIFE_VIDEO_PRICE=" + objForm.LIFE_VIDEO_PRICE.value;
	tmpStr += "&LIFE_VIDEO_QUANTITY=" + objForm.LIFE_VIDEO_QUANTITY.value;
	tmpStr += "&LIFE_VIDEO_AMOUNT=" + objForm.LIFE_VIDEO_AMOUNT.value;		
	tmpStr += "&SUBTOTAL=" + objForm.SUBTOTAL_AMOUNT.value;
	tmpStr += "&GST=" + objForm.GST_AMOUNT.value;
	tmpStr += "&TOTAL=" + objForm.TOTAL_AMOUNT.value;
	tmpStr += "&DEPOSIT=" + objForm.DEPOSIT_AMOUNT.value;	
	tmpStr = tmpStr.replace(/\s/g, "%20");
	return(tmpStr);
}

function generateEmail(){
	var objForm = document.ORDER_FORM;
	var tmpStr = "\n\n";
	
	tmpStr += "Company Name: " + objForm.COMPANY_NAME.value + "\n";
	tmpStr += "Contact Person: " + objForm.realname.value + "\n";
	tmpStr += "Address: " + objForm.ADDRESS.value + "\n";
	tmpStr += "Phone Number: " + objForm.PHONE_NUMBER.value + "\n";
	tmpStr += "Email: " + objForm.email.value + "\n";
	tmpStr += "Shipping Address: " + objForm.SHIPPING_ADDRESS.value +"\n\n\n";	
	tmpStr += "Body Image Works Complete Resources\n";
	tmpStr += "LEVEL \t\t\t\t PRICE \t\t QUANTITY \t TOTAL \n";
	tmpStr += "-------------------------------------------------------------------------------------------------------------\n";
	tmpStr += "Grade K-3 \t\t\t $" + formatNumber(objForm.GRADE_1_TO_3_PRICE.value) + " \t\t " + objForm.GRADE_1_TO_3_QUANTITY.value + " \t\t $" + formatNumber(objForm.GRADE_1_TO_3_AMOUNT.value) + "\n"; 
	tmpStr += "Grade 4-6 \t\t\t $" + formatNumber(objForm.GRADE_4_TO_6_PRICE.value) + " \t\t " + objForm.GRADE_4_TO_6_QUANTITY.value + " \t\t $" + formatNumber(objForm.GRADE_4_TO_6_AMOUNT.value) + "\n"; 
	tmpStr += "Grade 7-9 \t\t\t $" + formatNumber(objForm.GRADE_7_TO_9_PRICE.value) + " \t\t " + objForm.GRADE_7_TO_9_QUANTITY.value + " \t\t $" + formatNumber(objForm.GRADE_7_TO_9_AMOUNT.value) + "\n"; 
	tmpStr += "Parent \t\t\t\t $" + formatNumber(objForm.PARENT_PRICE.value) + " \t\t " + objForm.PARENT_QUANTITY.value + " \t\t $" + formatNumber(objForm.PARENT_AMOUNT.value) + "\n";
	tmpStr += "Scale Of Fortune \t\t\t $" + formatNumber(objForm.SCALE_OF_FORTUNE_PRICE.value) + " \t\t " + objForm.SCALE_OF_FORTUNE_QUANTITY.value + " \t\t $" + formatNumber(objForm.SCALE_OF_FORTUNE_AMOUNT.value) + "\n";
	tmpStr += "Mirror & Reflections \t\t $" + formatNumber(objForm.MIRROR_PRICE.value) + " \t\t " + objForm.MIRROR_QUANTITY.value + " \t\t $" + formatNumber(objForm.MIRROR_AMOUNT.value) + "\n";
	tmpStr += "Full Mouse Empty Mouse Package \t $" + formatNumber(objForm.MOUSE_PRICE.value) + " \t\t " + objForm.MOUSE_QUANTITY.value + " \t\t $" + formatNumber(objForm.MOUSE_AMOUNT.value) + "\n";
	tmpStr += "Confident For Life Video \t\t $" + formatNumber(objForm.LIFE_VIDEO_PRICE.value) + " \t\t " + objForm.LIFE_VIDEO_QUANTITY.value + " \t\t $" + formatNumber(objForm.LIFE_VIDEO_AMOUNT.value) + "\n";
	tmpStr += "-------------------------------------------------------------------------------------------------------------\n";
	tmpStr += "SUBTOTAL \t $" +  formatNumber(objForm.SUBTOTAL_AMOUNT.value) + "\n";  
	tmpStr += "GST (add 7%) \t $" +  formatNumber(objForm.GST_AMOUNT.value) + "\n"; 
	tmpStr += "TOTAL \t\t $" +  formatNumber(objForm.TOTAL_AMOUNT.value) + "\n"; 
	tmpStr += "50% Deposit \t $" +  formatNumber(objForm.DEPOSIT_AMOUNT.value) + "\n"; 
	return(tmpStr);
}

function updateValues(field){
	var objForm = document.ORDER_FORM;
	var temp = 0;

	objForm.all[field + "_AMOUNT"].value = objForm.all[field + "_PRICE"].value * objForm.all[field + "_QUANTITY"].value;
	if(objForm.all[field + "_AMOUNT"].value > 0){
		document.all[field + "_TOTAL_SPAN"].innerHTML = "$ " + formatNumber(objForm.all[field + "_AMOUNT"].value);
	}else{
		document.all[field + "_TOTAL_SPAN"].innerHTML = "$ 0.00";
	}
	
	temp =  stringToFloat(objForm.SCALE_OF_FORTUNE_AMOUNT.value);
	temp +=  stringToFloat(objForm.PARENT_AMOUNT.value);
	temp +=  stringToFloat(objForm.GRADE_7_TO_9_AMOUNT.value);	
	temp +=  stringToFloat(objForm.GRADE_4_TO_6_AMOUNT.value); 
	temp +=  stringToFloat(objForm.GRADE_1_TO_3_AMOUNT.value);
	temp +=  stringToFloat(objForm.MIRROR_AMOUNT.value);
	temp +=  stringToFloat(objForm.MOUSE_AMOUNT.value);
	temp +=  stringToFloat(objForm.LIFE_VIDEO_AMOUNT.value);
				
	objForm.SUBTOTAL_AMOUNT.value = temp;	
	if(objForm.SUBTOTAL_AMOUNT.value > 0){
		document.all.SUBTOTAL_SPAN.innerHTML = "$ " + formatNumber(objForm.SUBTOTAL_AMOUNT.value);
	}else{
		document.all.SUBTOTAL_SPAN.innerHTML = "$ 0.00";
	}
	
	temp = stringToFloat(objForm.SUBTOTAL_AMOUNT.value) * (stringToFloat(objForm.GST_PERCENT.value) / 100)
	objForm.GST_AMOUNT.value = temp;
	if(objForm.GST_AMOUNT.value > 0){
		document.all.GST_SPAN.innerHTML = "$ " + formatNumber(objForm.GST_AMOUNT.value);
	}else{
		document.all.GST_SPAN.innerHTML = "$ 0.00";
	}
	
	temp = stringToFloat(objForm.GST_AMOUNT.value) + stringToFloat(objForm.SUBTOTAL_AMOUNT.value);
	objForm.TOTAL_AMOUNT.value = temp;
	if(objForm.TOTAL_AMOUNT.value > 0){
		document.all.TOTAL_SPAN.innerHTML = "$ " + formatNumber(objForm.TOTAL_AMOUNT.value);
	}else{
		document.all.TOTAL_SPAN.innerHTML = "$ 0.00";
	}	
	
	temp = stringToFloat(objForm.TOTAL_AMOUNT.value) / 2;
	objForm.DEPOSIT_AMOUNT.value = temp;
	if(objForm.DEPOSIT_AMOUNT.value > 0){
		document.all.DEPOSIT_SPAN.innerHTML = "$ " + formatNumber(objForm.DEPOSIT_AMOUNT.value);
	}else{
		document.all.DEPOSIT_SPAN.innerHTML = "$ 0.00";
	}	
}

function validateQuantity(field){
	var objForm = document.ORDER_FORM;	
	if((stringToInt(objForm.all[field + "_QUANTITY"].value) >= 0)&&(isInt(field))){
		updateValues(field);
	}else{
		alert("Please enter a valid quantity.");
	}
}

function queryStringToCurrency(value){
	var tmpStr = stringToFloat(value);
	return("$" + formatNumber(tmpStr));
}

function stringToFloat(value){
	var temp;
	if((isNaN(value))||(value == "")){
		return parseFloat("0");
	}	
	temp = parseFloat(value);
	return(temp);
}

function stringToInt(value){
	var temp;
	if((isNaN(value))||(value == "")){
		return parseInt("0");
	}	
	temp = parseInt(value);
	return(temp);
}

function isInt(field){
	var objForm = document.ORDER_FORM;
	var num = objForm.all[field + "_QUANTITY"].value
	for (var i = 0; i < num.length; i++){
		if ((num.charAt(i) < '0') || (num.charAt(i) > '9')){
			return(false);
		}
	}
	return(true);
}

function formatNumber(input) {  
	var tmp;
	var dec;
	if (isNaN(input)) return null;
	var dollars = Math.floor(input);
	tmp = new String(input);
	dec = "" + Math.round(input * 100);
	dec = dec.substring(dec.length-2, dec.length);
	
	tmp = new String(dollars)
	dollars = ''
	for(var i=0;i<tmp.length;i++) {
		if((tmp.length - i) % 3 == 0 && i != 0) {
			dollars += ',' + tmp.charAt(i);				
		}
		else {
			dollars += tmp.charAt(i);
		}
	}	
	if(dec.length > 0)
		if(dec.length == 1){
			return dollars + "." + dec + "0";
		}else{
			return dollars + "." + dec;
		}
	else
		return dollars;
}	