// JavaScript Document


function Poption1(form)
{
	theForm=document.advancedSearch;
	//alert("Please select an option");
	var opt1val = theForm.option1.value;
	window.location = "advanced_search.cfm?option=" + opt1val;
	
}

function optionCats1(form)
{
	theForm=document.advancedSearch;
	//alert("Please select an option");
	var opt1val = theForm.option1.value;
	var optionCats = theForm.optionCats.value;
	window.location = "advanced_search.cfm?option=" + opt1val + "&optionCats=" + optionCats;
	
}
function optionManu1(form)
{
	theForm=document.advancedSearch;
	//alert("Please select an option");
	var opt1val = theForm.option1.value;
	var optionManu = theForm.optionManu.value;
	window.location = "advanced_search.cfm?option=" + opt1val + "&optionManu=" + optionManu;
	
}
function optionSubCats1(form)
{
	theForm=document.advancedSearch;
	//alert("Please select an option");
	var opt1val = theForm.option1.value;
	var optionCats = theForm.optionCats.value;
	var optionSubCats = theForm.optionSubCats.value;
	window.location = "advanced_search.cfm?option=" + opt1val + "&optionCats=" + optionCats + "&subcats=" + optionSubCats;
	
}

function cats1(form)
{
	theForm=document.advancedSearch;
	//alert("Please select an option");
	
	if((document.advancedSearch.cat.checked == true) &&  (document.advancedSearch.man.checked == true))
	{ 
	var ch1val = "Y";
	var ch2val = "Y";
	window.location = "advanced_search2.cfm?option1=" + ch1val + "&option2=" + ch2val;
	}
	if((document.advancedSearch.cat.checked == true) && (document.advancedSearch.man.checked == false))
	{ 
	var ch1val = "Y";
	var ch2val = "N";
	window.location = "advanced_search2.cfm?option1=" + ch1val + "&option2=" + ch2val;
	}
	if((document.advancedSearch.cat.checked == false) && (document.advancedSearch.man.checked == true))
	{ 
	var ch1val = "N";
	var ch2val = "Y";
	window.location = "advanced_search2.cfm?option1=" + ch1val + "&option2=" + ch2val;
	}
	if((document.advancedSearch.cat.checked == false) &&  (document.advancedSearch.man.checked == false))
	{ 
	var ch1val = "N";
	var ch2val = "N";
	window.location = "advanced_search2.cfm?option1=" + ch1val + "&option2=" + ch2val;
	}
	//window.location = "advanced_search2.cfm?option2=" + cat1;
	
}
function cats2(form)
{
	theForm=document.advancedSearch;
	//alert("Please select an option");
	var man1 = theForm.man.value;
	
	if(cat1 == "")
	{
	window.location = "advanced_search2.cfm?option2=" + cat1;
	}
	else if(man1 == "")
	{
	window.location = "advanced_search2.cfm?option=" + man1;	
	}
}
function submitSearchform(form)
{
	theForm=document.advancedSearch;
	//alert("Please select an option");
	var searchkeyword = theForm.skeyword.value;
	
	if(searchkeyword == "")
	{
	alert("Please write a Keyword");
	}
	else
	{
	  theForm.submit();
	}
}

function update_attr_dropdowns(form,field)
{
	var price = base_price;
	var old_price = base_old_price;
	var image_set = 0;
	var attr_sku = "";
	var attr1_val = form.attr1.value;
	var attr2_val = form.attr2.value;
	var field_name = field.name;
	
	for(i=0;i<a_attr_skus.length;i++)
	{
		if((a_attr_skus[i][1] == attr1_val) && ((a_attr_skus[i][2] == attr2_val) || attr2_val < 1))
		{
			attr_sku = a_attr_skus[i][0];
			price = a_attr_skus[i][3];
			old_price = a_attr_skus[i][4];
			image_set = a_attr_skus[i][5];
			break;
		}
	}
	
	form.prod_attr_sku.value = attr_sku;
	form.prod_price.value = price;
	form.prod_old_price.value = old_price;
	window.display_price.innerHTML = "&pound;" + price;
	if(old_price > 0)
	{
		window.display_old_price.innerHTML = "Was&nbsp;:&nbsp;&pound;" + old_price;
	}
	else
	{
		window.display_old_price.innerHTML = "";
	}
	
	if(image_set > 0)
	{
		for(i=0;i<a_images.length;i++)
		{
			if(a_images[i][0] == image_set)
			{
				document["main_image"].src = "/catalogue/images/" + a_images[i][1];
				break;
			}
		}
	}
	else
	{
		document["main_image"].src = default_image;
	}
	
	if(field_name == "attr1")
	{
		form.attr2.options.length = 0;
		form.attr2.options[0] = new Option('Select ' + attr2_desc,'0');
		var pos = 1;
		for(i=0;i<a_attr2s.length;i++)
		{
			attr2_val = a_attr2s[i];
			for(j=0;j<a_attr_skus.length;j++)
			{
				if((a_attr_skus[j][1] == attr1_val) && (a_attr_skus[j][2] == attr2_val))
				{
					form.attr2.options[pos] = new Option(attr2_val,attr2_val);
					pos++;
				}
			}
		}
	}
	
	//alert("Attr SKU: " + form.prod_attr_sku.value + "\nPrice: £" + form.prod_price.value + "\nOld price: £" + form.prod_old_price.value);
}

function add_to_basket(form)
{
	if(validate_product(form) == true)
	{
		form.submit();
	}
}

function validate_product(form)
{
	//alert("Attr SKU: " + form.prod_attr_sku.value + "\nPrice: £" + form.prod_price.value + "\nOld price: £" + form.prod_old_price.value);
	//return false;
	
	var return_value = false;
	
	if(form.attr1.value == 0)
	{
		alert("Please select a " + attr1_desc);
		form.attr1.focus();
	}
	else if(form.attr2.value == 0)
	{
		alert("Please select a " + attr2_desc);
		form.attr2.focus();
	}
	else if((parseInt(form.quantity.value) < 1) || (isNaN(parseInt(form.quantity.value))))
	{
		alert("Please enter a valid quantity");
		form.quantity.focus();
	}
	else
	{
		return_value = true;
	}
	
	return return_value;
}

function submit_ch_login(form)
{
	if(validate_ch_login(form) == true)
	{
		form.submit();
	}
}

function submit_cus_login(form)
{
	if(validate_cus_login(form) == true)
	{
		form.submit();
	}
}

function validate_ch_login(form)
{
	var return_value = false;
	var customer_type;
	
	for(i=0;i<form.customer_type.length;i++)
	{
		if(form.customer_type[i].checked == true)
		{
			customer_type = form.customer_type[i].value;
			break;
		}
	}
	
	if(customer_type == "existing")
	{
		if(is_email(form.email.value) == false)
		{
			alert("Please enter a valid email address");
			form.email.focus();
		}
		else if(form.password.value == "")
		{
			alert("Please enter your password");
			form.password.focus();
		}
		else
		{
			return_value = true;
		}
	}
	else if(is_email(form.email.value) == false)
	{
		alert("Please enter a valid email address");
		form.email.focus();
	}
	else
	{
		return_value = true;
	}
	
/*	alert(return_value);
	return false;*/

	return return_value;
}

function validate_cus_login(form)
{
	var return_value = false;
	var customer_type;
	
	for(i=0;i<form.customer_type.length;i++)
	{
		if(form.customer_type[i].checked == true)
		{
			customer_type = form.customer_type[i].value;
			break;
		}
	}
	
	if(customer_type == "existing")
	{
		if(is_email(form.email.value) == false)
		{
			alert("Please enter a valid email address");
			form.email.focus();
		}
		else if(form.password.value == "")
		{
			alert("Please enter your password");
			form.password.focus();
		}
		else
		{
			return_value = true;
		}
	}
	else if(is_email(form.email.value) == false)
	{
		alert("Please enter a valid email address");
		form.email.focus();
	}
	else
	{
		return_value = true;
	}
	
/*	alert(return_value);
	return false;*/

	return return_value;
}

function submit_ch_address(form)
{
	if(validate_ch_address(form) == true)
	{
		form.submit();
	}
}

function submit_cus_address(form)
{
	if(validate_cus_address(form) == true)
	{
		form.submit();
	}
}


function validate_ch_address(form)
{
	var return_value = false;
	
	if(form.title.value == "")
	{
		alert("Please enter your Title");
		form.title.focus();
	}
	else if(form.first_name.value == "")
	{
		alert("Please enter your First Name");
		form.first_name.focus();
	}
	else if(form.last_name.value == "")
	{
		alert("Please enter your Last Name");
		form.last_name.focus();
	}
	else if(form.addr1.value == "")
	{
		alert("Please enter your Address");
		form.addr1.focus();
	}
	else if(form.town.value == "")
	{
		alert("Please enter your Town");
		form.town.focus();
	}
	else if(form.county.value == "")
	{
		alert("Please enter your County");
		form.county.focus();
	}
	else if(form.postcode.value == "")
	{
		alert("Please enter your Postcode");
		form.postcode.focus();
	}
	else if(form.country.value == 0)
	{
		alert("Please select your Country");
		form.country.focus();
	}
	else if(form.phone.value == "")
	{
		alert("Please enter your Contact Phone Number");
		form.phone.focus();
	}
	else if(form.copy_billing_address != undefined)
	{
		if(form.copy_billing_address.checked == false)
		{
			if(form.del_addr1.value == "")
			{
				alert("Please enter your Delivery Address");
				form.del_addr1.focus();
			}
			else if(form.del_town.value == "")
			{
				alert("Please enter your Delivery Town");
				form.del_town.focus();
			}
			else if(form.del_county.value == "")
			{
				alert("Please enter your Delivery County");
				form.del_county.focus();
			}
			else if(form.del_postcode.value == "")
			{
				alert("Please enter your Delivery Postcode");
				form.del_postcode.focus();
			}
			else if(form.del_country.value == 0)
			{
				alert("Please select your Delivery Country");
				form.del_country.focus();
			}
			else
			{
				return_value = true;
			}
		}
		else
		{
			return_value = true;
		}
	}
	else
	{
		return_value = true;
	}
	
/*	alert(return_value);
	return false;*/
	
	return return_value;
}

function validate_cus_address(form)
{
	var return_value = false;
	
	if(form.title.value == "")
	{
		alert("Please enter your Title");
		form.title.focus();
	}
	else if(form.first_name.value == "")
	{
		alert("Please enter your First Name");
		form.first_name.focus();
	}
	else if(form.last_name.value == "")
	{
		alert("Please enter your Last Name");
		form.last_name.focus();
	}
	else if(form.addr1.value == "")
	{
		alert("Please enter your Address");
		form.addr1.focus();
	}
	else if(form.town.value == "")
	{
		alert("Please enter your Town");
		form.town.focus();
	}
	else if(form.county.value == "")
	{
		alert("Please enter your County");
		form.county.focus();
	}
	else if(form.postcode.value == "")
	{
		alert("Please enter your Postcode");
		form.postcode.focus();
	}
	else if(form.country.value == 0)
	{
		alert("Please select your Country");
		form.country.focus();
	}
	else if(form.phone.value == "")
	{
		alert("Please enter your Contact Phone Number");
		form.phone.focus();
	}
	else if(form.password.value == "")
	{
		alert("Please enter a Password");
		form.password.focus();
	}
	else if(form.conf_password.value == "")
	{
		alert("Please confirm your Password");
		form.conf_password.focus();
	}
	else if(form.conf_password.value != form.password.value)
	{
		alert("Your passwords do not match");
		form.conf_password.focus();
	}
	else
	{
		return_value = true;
	}
	
/*	alert(return_value);
	return false;*/
	
	return return_value;
}

function submit_ch_promo_code(form)
{
	if(validate_ch_promo_code(form) == true)
	{
		form.submit();
	}
}

function validate_ch_promo_code(form)
{
	var return_value = false;
	
	if(form.promo_code.value == "")
	{
		alert("Please enter a Promotion Code");
		form.promo_code.focus();
	}
	else
	{
		return_value = true;
	}
	
	return return_value;
}

function submit_ch_billing(form)
{
	if(validate_ch_billing(form) == true)
	{
		form.submit();
	}
}

function validate_ch_billing(form)
{
	var return_value = false;
	
	if(form.card_type.value == 0)
	{
		alert("Please select a Card Type");
		form.card_type.focus();
	}
	else if(cardval(form.card_number.value) == false)
	{
		alert("Please enter a valid Card Number");
		form.card_number.focus();
	}
	else if(form.end_month.value == 0)
	{
		alert("Please select an End Date");
		form.end_month.focus();
	}
	else if(form.end_year.value == 0)
	{
		alert("Please select an End Date");
		form.end_year.focus();
	}
	else if(form.card_name.value == "")
	{
		alert("Please enter your Name");
		form.card_name.focus();
	}
	else if(form.ts_and_cs.checked == false)
	{
		alert("Please confirm that you have read and agree to our Terms and Conditions");
		form.ts_and_cs.focus();
	}
	else
	{
		return_value = true;
	}
	
	//alert(return_value);
	//return false;
	return return_value;
}

function submit_search(form)
{
	if(validate_search(form) == true)
	{
		form.submit();
	}
}

function validate_search(form)
{
	var return_value = false;
	
	if(form.criteria.value == "")
	{
		alert("Please enter some search criteria");
		form.criteria.focus();
	}
	else
	{
		return_value = true;
	}
	
	return return_value;
}

function submit_newsletter(form)
{
	if(validate_newsletter(form) == true)
	{
		form.submit();
	}
}

function validate_newsletter(form)
{
	var return_value = false;
	
	if(form.email.value == "")
	{
		alert("Please enter some search criteria");
		form.email.focus();
	}
	else
	{
		return_value = true;
	}
	
	return return_value;
}

function cardval(s) {
// remove non-numerics
var v = "0123456789";
var w = "";
for (i=0; i < s.length; i++) {
x = s.charAt(i);
if (v.indexOf(x,0) != -1)
w += x;
}
// validate number
j = w.length / 2;
if (j < 6.5 || j > 9 || j == 7) return false;
k = Math.floor(j);
m = Math.ceil(j) - k;
c = 0;
for (i=0; i<k; i++) {
a = w.charAt(i*2+m) * 2;
c += a > 9 ? Math.floor(a/10 + a%10) : a;
}
for (i=0; i<k+m; i++) c += w.charAt(i*2+1-m) * 1;
return (c%10 == 0);
}