﻿var submitted = 0;
function CheckRequiredFields() {
	if (submitted) {
		alert("Form already submitted, please be patient");
		return false;
	}
	var errormessage = new String();
	var Today = new Date();
	var ThisYear = Today.getFullYear();
	var ThisMonth = Today.getMonth() + 1;
	var cardM = document.form1.Expiry_Date_Month.selectedIndex
	var cardY = document.form1.Expiry_Date_Year.selectedIndex
	var cardYear = document.form1.Expiry_Date_Year.options[cardY].value;
	var cardMonth = document.form1.Expiry_Date_Month.options[cardM].value;
	var cardType = document.form1.Credit_Card_Type.selectedIndex
	if(WithoutContent(document.form1.First_Name.value))	{errormessage += "\n\nPlease enter your first name.";}
	if(WithoutContent(document.form1.Surname.value))	{errormessage += "\n\nPlease enter your surname.";}
	if(WithoutContent(document.form1.Address1.value))	{errormessage += "\n\nPlease enter your address.";}
	if(WithoutContent(document.form1.Town_City.value))	{errormessage += "\n\nPlease enter your town or city.";}
	if(WithoutContent(document.form1.Postcode.value))	{errormessage += "\n\nPlease enter your postcode.";}
	if(WithoutContent(document.form1.Telephone_Number.value))	{errormessage += "\n\nPlease enter your telephone number.";}
	if(WithoutContent(document.form1.Email.value))	{errormessage += "\n\nPlease enter your email address.";}
	if(NoneWithCheck(document.form1.HP))	{errormessage += "\n\nAre you a health professional?";}
	if(getCheckedValue(document.form1.HP) == 'Yes'){
		if(WithoutSelectionValue(document.form1.HP_Area)) {errormessage += "\n\nPlease tell us what area you work in.";}
	}
	
	if(!WithoutContent(document.form1.Grandtotal.value)){
		if(WithoutSelectionValue(document.form1.Credit_Card_Type))	{errormessage += "\n\nPlease enter the credit card type.";}
		if(document.form1.Credit_Card_Type.options[cardType].value == "switch_solo_maestro"){
			if(WithoutContent(document.form1.Issue_Number.value) && WithoutSelectionValue(document.form1.Start_Date_Month) && WithoutSelectionValue(document.form1.Start_Date_Year))	{errormessage += "\n\nPlease enter your credit card issue number or start date.";} 
			else {
				if(WithoutContent(document.form1.Issue_Number.value)){
					if(WithoutSelectionValue(document.form1.Start_Date_Month) || WithoutSelectionValue(document.form1.Start_Date_Year)){errormessage += "\n\nPlease enter your credit card start date.";}
				}
			}
		}
		if(WithoutContent(document.form1.Credit_Card_Number.value))	{errormessage += "\n\nPlease enter the credit card number.";}
		if(!isCreditCard(document.form1.Credit_Card_Number.value))	{errormessage += "\n\nPlease check the credit card number.";}
		if(WithoutSelectionValue(document.form1.Expiry_Date_Month))	{errormessage += "\n\nPlease select the credit card expiry month.";}
		if(WithoutSelectionValue(document.form1.Expiry_Date_Year))	{errormessage += "\n\nPlease select the credit card expiry year.";}
		if (cardYear < ThisYear){errormessage += "\n\nYour card appears to have expired.";}
		if (cardYear <= ThisYear && cardMonth < ThisMonth){errormessage += "\n\nYour card appears to have expired.";}
		if(WithoutContent(document.form1.Security_Code.value))	{errormessage += "\n\nPlease enter the credit card security code.";}
		if(WithoutContent(document.form1.Name_on_Card.value))	{errormessage += "\n\nPlease enter the name on the credit card.";}
		if(WithoutContent(document.form1.Billing_Postcode.value))	{errormessage += "\n\nPlease enter credit card billing postcode.";}
		if(WithoutContent(document.form1.Telephone_Number_Card_Holder.value))	{errormessage += "\n\nPlease enter the credit card telephone number.";}
	}
	if(WithoutSelectionValue(document.form1.How_did_you_hear_about_WCRF_UK_Resources))	{errormessage += "\n\nHow did you hear about WCRF UK Resources?";}
	
	if(errormessage.length > 2) {
		alert('NOTE:' + errormessage);
		return false;
		}	
	return true;
	if (!submitted) {
		form.submitit.disabled=true;
		submitted = 1;
		form.submit();
	}
} 
function getCheckedValue(radioObj) {
	if(!radioObj)
		return "";
	var radioLength = radioObj.length;
	if(radioLength == undefined)
		if(radioObj.checked)
			return radioObj.value;
		else
			return "";
	for(var i = 0; i < radioLength; i++) {
		if(radioObj[i].checked) {
			return radioObj[i].value;
		}
	}
	return "";
}


function WithoutContent(ss) {
if(ss.length > 0) { return false; }
return true;
}

function NoneWithContent(ss) {
for(var i = 0; i < ss.length; i++) {
	if(ss[i].value.length > 0) { return false; }
	}
return true;
}

function NoneWithCheck(ss) {
for(var i = 0; i < ss.length; i++) {
	if(ss[i].checked) { return false; }
	}
return true;
}

function WithoutCheck(ss) {
if(ss.checked) { return false; }
return true;
}

function WithoutSelectionValue(ss) {
for(var i = 0; i < ss.length; i++) {
	if(ss[i].selected) {
		if(ss[i].value.length) { return false; }
		}
	}
return true;
}
function isCreditCard( CC ) {                         
if (CC.length > 19)	return (false);
sum = 0; mul = 1; l = CC.length;
for (i = 0; i < l; i++) {
   digit = CC.substring(l-i-1,l-i);
   tproduct = parseInt(digit ,10)*mul;
   if (tproduct >= 10)
		sum += (tproduct % 10) + 1;
   else
		sum += tproduct;
   if (mul == 1)
		mul++;
   else
		mul--;
}
if ((sum % 10) == 0)              
	return (true);
else
   return (false);
}

function DeselectRadio(form){
	for (var i = 0; i < document.form1.Donation_Amount.length; i++){
		document.form1.Donation_Amount[i].checked = false
	}
}

function calc(){
	var v01 = parseFloat(document.form1.Qty_01.value * 4.00);
	document.form1.Qty_01.value = parseInt(document.form1.Qty_01.value - 0);
	document.form1.Cost_01.value = formatCurrency(v01);
		
	var v02 = parseFloat(document.form1.Qty_02.value * 4.0);
	document.form1.Qty_02.value = parseInt(document.form1.Qty_02.value - 0);
	document.form1.Cost_02.value = formatCurrency(v02);
	
	var v03 = parseFloat(document.form1.Qty_03.value * 6.80);
	document.form1.Qty_03.value = parseInt(document.form1.Qty_03.value - 0);
	document.form1.Cost_03.value = formatCurrency(v03);

	var v04 = parseFloat(document.form1.Qty_04.value * 8.00);
	document.form1.Qty_04.value = parseInt(document.form1.Qty_04.value - 0);
	document.form1.Cost_04.value = formatCurrency(v04);
	
	var v05 = parseFloat(document.form1.Qty_05.value * 6.80);
	document.form1.Qty_05.value = parseInt(document.form1.Qty_05.value - 0);
	document.form1.Cost_05.value = formatCurrency(v05);
	
	var v06 = parseFloat(document.form1.Qty_06.value * 8.00);
	document.form1.Qty_06.value = parseInt(document.form1.Qty_06.value - 0);
	document.form1.Cost_06.value = formatCurrency(v06);
	
	var v07 = parseFloat(document.form1.Qty_07.value * 4.00);
	document.form1.Qty_07.value = parseInt(document.form1.Qty_07.value - 0);
	document.form1.Cost_07.value = formatCurrency(v07);
	
	var v08 = parseFloat(document.form1.Qty_08.value * 5);
	document.form1.Qty_08.value = parseInt(document.form1.Qty_08.value - 0);
	document.form1.Cost_08.value = formatCurrency(v08);
	
	var v09 = parseFloat(document.form1.Qty_09.value * 6.50);
	document.form1.Qty_09.value = parseInt(document.form1.Qty_09.value - 0);
	document.form1.Cost_09.value = formatCurrency(v09);
	
	var v10 = parseFloat(document.form1.Qty_10.value * 6.50);
	document.form1.Qty_10.value = parseInt(document.form1.Qty_10.value - 0);
	document.form1.Cost_10.value = formatCurrency(v10);
	
	var v11 = parseFloat(document.form1.Qty_11.value * 6.50);
	document.form1.Qty_11.value = parseInt(document.form1.Qty_11.value - 0);
	document.form1.Cost_11.value = formatCurrency(v11);
	
	var v12 = parseFloat(document.form1.Qty_12.value * 1.30);
	document.form1.Qty_12.value = parseInt(document.form1.Qty_12.value - 0);
	document.form1.Cost_12.value = formatCurrency(v12);
	
	var v13 = parseFloat(document.form1.Qty_13.value * 7);
	document.form1.Qty_13.value = parseInt(document.form1.Qty_13.value - 0);
	document.form1.Cost_13.value = formatCurrency(v13);
	
	var v14 = parseFloat(document.form1.Qty_14.value * 9);
	document.form1.Qty_14.value = parseInt(document.form1.Qty_14.value - 0);
	document.form1.Cost_14.value = formatCurrency(v14);
	
	var v15 = parseFloat(document.form1.Qty_15.value * 8);
	document.form1.Qty_15.value = parseInt(document.form1.Qty_15.value - 0);
	document.form1.Cost_15.value = formatCurrency(v15);

	var v16 = parseFloat(document.form1.Qty_16.value * 5.25);
	document.form1.Qty_16.value = parseInt(document.form1.Qty_16.value - 0);
	document.form1.Cost_16.value = formatCurrency(v16);
	
	var v17 = parseFloat(document.form1.Qty_17.value * 8);
	document.form1.Qty_17.value = parseInt(document.form1.Qty_17.value - 0);
	document.form1.Cost_17.value = formatCurrency(v17);
	
	var v18 = parseFloat(document.form1.Qty_18.value * 6.80);
	document.form1.Qty_18.value = parseInt(document.form1.Qty_18.value - 0);
	document.form1.Cost_18.value = formatCurrency(v18);
	
	var v19 = parseFloat(document.form1.Qty_19.value * 6.80);
	document.form1.Qty_19.value = parseInt(document.form1.Qty_19.value - 0);
	document.form1.Cost_19.value = formatCurrency(v19);
	
	var v20 = parseFloat(document.form1.Qty_20.value * 6.50);
	document.form1.Qty_20.value = parseInt(document.form1.Qty_20.value - 0);
	document.form1.Cost_20.value = formatCurrency(v20);
	
	var v21 = parseFloat(document.form1.Qty_21.value * 25);
	document.form1.Qty_21.value = parseInt(document.form1.Qty_21.value - 0);
	document.form1.Cost_21.value = formatCurrency(v21);

	var v22 = parseFloat(document.form1.Qty_22.value * 4.00);
	document.form1.Qty_22.value = parseInt(document.form1.Qty_22.value - 0);
	document.form1.Cost_22.value = formatCurrency(v22);	

	var v23 = parseFloat(document.form1.Qty_23.value * 4.00);
	document.form1.Qty_23.value = parseInt(document.form1.Qty_23.value - 0);
	document.form1.Cost_23.value = formatCurrency(v23);	

	var v24 = parseFloat(document.form1.Qty_24.value * 6.50);
	document.form1.Qty_24.value = parseInt(document.form1.Qty_24.value - 0);
	document.form1.Cost_24.value = formatCurrency(v24);	

	var v25 = parseFloat(document.form1.Qty_25.value * 11.25);
	document.form1.Qty_25.value = parseInt(document.form1.Qty_25.value - 0);
	document.form1.Cost_25.value = formatCurrency(v25);	

	var v26 = parseFloat(document.form1.Qty_26.value * 4.00);
	document.form1.Qty_26.value = parseInt(document.form1.Qty_26.value - 0);
	document.form1.Cost_26.value = formatCurrency(v26);	
	
	var v27 = parseFloat(document.form1.Qty_27.value * 4.00);
	document.form1.Qty_27.value = parseInt(document.form1.Qty_27.value - 0);
	document.form1.Cost_27.value = formatCurrency(v27);		
	
	var v28 = parseFloat(document.form1.Qty_28.value * 12.50);
	document.form1.Qty_28.value = parseInt(document.form1.Qty_28.value - 0);
	document.form1.Cost_28.value = formatCurrency(v28);		
	
	var v29 = parseFloat(document.form1.Qty_29.value * 6.50);
	document.form1.Qty_29.value = parseInt(document.form1.Qty_29.value - 0);
	document.form1.Cost_29.value = formatCurrency(v29);	

	var v30 = parseFloat(document.form1.Qty_30.value * 4.00);
	document.form1.Qty_30.value = parseInt(document.form1.Qty_30.value - 0);
	document.form1.Cost_30.value = formatCurrency(v30);	
	
	var v31 = parseFloat(document.form1.Qty_31.value * 4.00);
	document.form1.Qty_31.value = parseInt(document.form1.Qty_31.value - 0);
	document.form1.Cost_31.value = formatCurrency(v31);	
	
	var v32 = parseFloat(document.form1.Qty_32.value * 4.00);
	document.form1.Qty_32.value = parseInt(document.form1.Qty_32.value - 0);
	document.form1.Cost_32.value = formatCurrency(v32);	
	
	var v33 = parseFloat(document.form1.Qty_33.value * 10.00);
	document.form1.Qty_33.value = parseInt(document.form1.Qty_33.value - 0);
	document.form1.Cost_33.value = formatCurrency(v33);	
	
	var v34 = parseFloat(document.form1.Qty_34.value * 6.50);
	document.form1.Qty_34.value = parseInt(document.form1.Qty_34.value - 0);
	document.form1.Cost_34.value = formatCurrency(v34);	
	
	var v35 = parseFloat(document.form1.Qty_35.value * 4.00);
	document.form1.Qty_35.value = parseInt(document.form1.Qty_35.value - 0);
	document.form1.Cost_35.value = formatCurrency(v35);	
	
	var v36 = parseFloat(document.form1.Qty_36.value * 2.50);
	document.form1.Qty_36.value = parseInt(document.form1.Qty_36.value - 0);
	document.form1.Cost_36.value = formatCurrency(v36);	
	
	var v37 = parseFloat(document.form1.Qty_37.value * 6.50);
	document.form1.Qty_37.value = parseInt(document.form1.Qty_37.value - 0);
	document.form1.Cost_37.value = formatCurrency(v37);	
	
	var v38 = parseFloat(document.form1.Qty_38.value * 12.50);
	document.form1.Qty_38.value = parseInt(document.form1.Qty_38.value - 0);
	document.form1.Cost_38.value = formatCurrency(v38);	
	
	var S = 
	parseFloat(v01) + 
	parseFloat(v02) + 
	parseFloat(v03) +  
	parseFloat(v04) + 
	parseFloat(v05) + 
	parseFloat(v06) + 
	parseFloat(v07) + 
	parseFloat(v08) + 
	parseFloat(v09) + 
	parseFloat(v10) + 
	parseFloat(v11) + 
	parseFloat(v12) + 
	parseFloat(v13) + 
	parseFloat(v14) + 
	parseFloat(v15) + 
	parseFloat(v16) + 
	parseFloat(v17) + 
	parseFloat(v18) + 
	parseFloat(v19) + 
	parseFloat(v20) + 
	parseFloat(v21) + 
	parseFloat(v22) + 
	parseFloat(v23) + 
	parseFloat(v24) + 
	parseFloat(v25) + 
	parseFloat(v26) + 
	parseFloat(v27) + 
	parseFloat(v28) + 
	parseFloat(v29) + 
	parseFloat(v30) + 
	parseFloat(v31) + 
	parseFloat(v32) + 
	parseFloat(v33) + 
	parseFloat(v34) + 
	parseFloat(v35) +
	parseFloat(v36) +
	parseFloat(v37) +
	parseFloat(v38);
	
	document.form1.Subtotal.value = formatCurrency(S);
	
	  
	var qty1 =
	parseInt(document.form1.Qty_01.value) + 
	parseInt(document.form1.Qty_02.value) + 
	parseInt(document.form1.Qty_03.value) + 
	parseInt(document.form1.Qty_04.value) + 	
	parseInt(document.form1.Qty_05.value) + 
	parseInt(document.form1.Qty_06.value) + 
	parseInt(document.form1.Qty_07.value) + 
	parseInt(document.form1.Qty_08.value) + 
	parseInt(document.form1.Qty_09.value) + 
	parseInt(document.form1.Qty_10.value) + 
	parseInt(document.form1.Qty_11.value) + 
	parseInt(document.form1.Qty_12.value) + 
	parseInt(document.form1.Qty_13.value) + 
	parseInt(document.form1.Qty_14.value) + 
	parseInt(document.form1.Qty_15.value) + 
	parseInt(document.form1.Qty_16.value) + 
	parseInt(document.form1.Qty_17.value) + 
	parseInt(document.form1.Qty_18.value) + 
	parseInt(document.form1.Qty_19.value) + 
	parseInt(document.form1.Qty_20.value) + 
	parseInt(document.form1.Qty_21.value) + 
	parseInt(document.form1.Qty_22.value) + 
	parseInt(document.form1.Qty_23.value) + 
	parseInt(document.form1.Qty_24.value) + 
	parseInt(document.form1.Qty_25.value) + 
	parseInt(document.form1.Qty_26.value) + 
	parseInt(document.form1.Qty_27.value) + 
	parseInt(document.form1.Qty_28.value) + 
	parseInt(document.form1.Qty_29.value) + 
	parseInt(document.form1.Qty_30.value) + 
	parseInt(document.form1.Qty_32.value) + 
	parseInt(document.form1.Qty_33.value) + 
	parseInt(document.form1.Qty_34.value) + 
	parseInt(document.form1.Qty_35.value) +
	parseInt(document.form1.Qty_36.value) +
	parseInt(document.form1.Qty_37.value) +
	parseInt(document.form1.Qty_38.value);
	
	var qty2 =
	parseInt(document.form1.Qty_31.value);
	 
	 
	if (qty1 > 0) {
		var P1 = qty1 - 1 + 3.50
	} else {
		var P1 = 0
	} 
	 
	if (qty2 > 0) {
		var P2 = qty2 * 1.00
	} else {
		var P2 = 0
	}
	
	if (P1 + P2 > 72.50) {
		var P3 = 72.50
	} else {
		var P3 = P1 + P2
	}
	
	document.form1.Postage.value = formatCurrency(P3);
	
	var d1 = new Date;
	d1.setDate(31);
	d1.setMonth(7); // January = 0
	d1.setFullYear(2010); 
	
	var d2 = new Date;
	
	var dc = document.form1.Discount_Code.value;
	if (dc == 'LFBXX' && d2 < d1) { 
		var Discount2 = S * -.25;
	} else {
		var Discount2 = 0;
	}
	document.form1.Discount_Code_Calc.value = formatCurrency(Discount2);
	
	if (qty1 + qty2 > 19) {var Discount = -10.00} else {var Discount = 0}
	document.form1.Discount.value = formatCurrency(Discount);
	
	if(WithoutContent(document.form1.Donation_Amount.value)) {
		var D = parseFloat('0.00');
	}else{
		var D = parseFloat(filterNum(document.form1.Donation_Amount.value));
	}

var G = S + Discount2 + Discount + P3 + D;
var GGG = (G > 0) ? "*" : "";
document.form1.Donation_Amount.value = formatCurrency(D);
document.form1.Grandtotal.value = formatCurrency(G);

}

function formatCurrency(num) {
	num = num.toString().replace(/\$|\,/g,'');
	if(isNaN(num))
	num = "0";
	sign = (num == (num = Math.abs(num)));
	num = Math.floor(num*100+0.50000000001);
	pence = num%100;
	num = Math.floor(num/100).toString();
	if(pence<10)
	pence = "0" + pence;
	for (var i = 0; i < Math.floor((num.length-(1+i))/3); i++)
	num = num.substring(0,num.length-(4*i+3))+','+
	num.substring(num.length-(4*i+3));
	return (((sign)?'':'-') + '£' + num + '.' + pence);
}

function filterNum(str) {
	re = /^\£|,/g;
	// remove "£" and ","
	return str.replace(re, "");
}
