function acceptTC(givenFree, givenOptionalOrderNo)
{
	if (document.tandcform.tandc.checked == false)
	{
		alert('Please accept our Terms & Conditions.');
		return false;
	}

	if (givenFree == true)
	{
		var theUrl = '/basket/success?p_Success=Y&p_Description=&p_TransNum=00000000000&p_OpasID=0&p_AuthCode=12345678&p_Amount=0.00&p_Quantity=0&p_OrderNo='+givenOptionalOrderNo+'&p_Email=&p_CustomerId=';
		document.location.href=theUrl;
		return;
	}

	document.shoppingsubmit.submit();
}

function clearValidToInput()
{
	if (!document.getElementById) return;
	var validtoInput = document.getElementById("valid_to");

	if (validtoInput)
	{
		validtoInput.onfocus = function()
		{
			if (validtoInput.value == 'DD/MM/YYYY') validtoInput.value = '';
		}
		validtoInput.onblur = function()
		{
			if (validtoInput.value == '') validtoInput.value = 'DD/MM/YYYY';			
			datePattern = /^([0-9]{2})\/([0-9]{2})\/([0-9]{4})$/;
			if (!datePattern.test(validtoInput.value)) {
				validtoInput.value = 'DD/MM/YYYY';
			}
		}
	}
}

function imposeMaxLength(Object, MaxLen)
{
	return (Object.value.length <= MaxLen);
}

function disableAddressBoxes()
{
	if (!document.getElementById) return;
	var sameAsCompany = document.getElementById("sameAsCompany");
	
	if(sameAsCompany)
	{
		// Set some defualts if it's already checked
		if(sameAsCompany.checked == true)
		{
			document.getElementById("address").disabled = true;
			document.getElementById("town").disabled = true;
			document.getElementById("county").disabled = true;
			document.getElementById("postcode").disabled = true;
		}		
		
		// If the box is ticked...
		sameAsCompany.onchange = function()
		{
			if(sameAsCompany.checked == true)
			{
				document.getElementById("address").disabled = true;
				document.getElementById("town").disabled = true;
				document.getElementById("county").disabled = true;
				document.getElementById("postcode").disabled = true;
			}
			if(sameAsCompany.checked == false)
			{
				document.getElementById("address").disabled = false;
				document.getElementById("town").disabled = false;
				document.getElementById("county").disabled = false;
				document.getElementById("postcode").disabled = false;
			}
		}
	}
}

function updateContactFormRelease()
{
	// Reset the fields so the content gets submitted
	document.getElementById("address").disabled = false;
	document.getElementById("town").disabled = false;
	document.getElementById("county").disabled = false;
	document.getElementById("postcode").disabled = false;
	
	// Let the form submit
	return true;
}

function addLoadEvent(func)
{
	var oldonload = window.onload;
	if (typeof window.onload != 'function')
	{
		window.onload = func;
	}
	else
	{
		window.onload = function()
		{
			if (oldonload)
			{
				oldonload();
			}
			func();
		}
	}
}

addLoadEvent(clearValidToInput);
addLoadEvent(disableAddressBoxes);
