// JavaScript Documentfunction 
var reg_field_ids=new Array(); 
var reg_box_ids=new Array(); 
var reg_msg_ids=new Array(); 
var reg_img_ids=new Array();

var xmlHttp = createXmlHttpRequestObject();
var response;
var form_complete=false;
var cache = new Array();
var input_red='input-warn';
var input_green='input-ok';

function init_reg_form(){
	reg_field_ids['pickup'] =document.getElementById('pickup');
	 reg_field_ids['pickup'].onfocus=pickup; 
	reg_field_ids['delivered'] =document.getElementById('delivered');
	reg_field_ids['delivered'].onfocus=delivered; 
	reg_field_ids['checkout-bt'] =document.getElementById('checkout-bt');
	//alert(reg_field_ids['delivered'].value);
	
	
	reg_field_ids['postcode'] =document.getElementById('postcode');
	//reg_field_ids['postcode'].onblur=check_postcode; 
	reg_field_ids['freight-costs'] =document.getElementById('freight-costs');
	reg_field_ids['total_cart'] =document.getElementById('total-cart');
	reg_field_ids['total_freight'] =document.getElementById('total-freight');
	reg_field_ids['total_freight'].style.display = "none";

}

function getObj(name)
{
  if (document.getElementById)
  {
    return document.getElementById(name).style;
  }
  else if (document.all)
  {
    return document.all[name].style;
  }
  else if (document.layers)
  {
    return document.layers[name];
  }
  else return false;
}

function getElementsByClass(searchClass,node,tag) {
	var classElements = new Array();
	if ( node == null )
		node = document;
	if ( tag == null )
		tag = '*';
	var els = node.getElementsByTagName(tag);
	var elsLen = els.length;
	var pattern = new RegExp("(^|\\s)"+searchClass+"(\\s|$)");
	for (i = 0, j = 0; i < elsLen; i++) {
		if ( pattern.test(els[i].className) ) {
			classElements[j] = els[i];
			j++;
		}
	}
	return classElements;
}

function pickup(){  reg_field_ids['delivered'].checked=false;
ck = getObj('checkout-bt');  
	if(reg_field_ids['pickup'].value==1){
		ck.visibility = 'visible'; 
		var el = getElementsByClass('freight-charge');
		for (var i=0; i < el.length; i++){
			el[i].style.display =  "none";
		}
	}
	reg_field_ids['total_freight'].style.display = "none";
	reg_field_ids['total_cart'].style.display = "block"; 
	document.getElementById('pickup-checkout').value=1;
	
}
function delivered(){ 
	//alert(reg_field_ids['postcode'].value);
	if(!reg_field_ids['postcode'].value){ 
		ck = getObj('checkout-bt'); 
		ck.visibility = 'hidden';
	}
	var el = getElementsByClass('freight-charge');
		for (var i=0; i < el.length; i++){
			el[i].style.display =  "block";
		} 	
	reg_field_ids['total_freight'].style.display = "block";
	reg_field_ids['total_cart'].style.display = "none";
document.getElementById('pickup-checkout').value=2;
//	reg_field_ids['checkout-bt'].style.visibility = "visible";
//	reg_field_ids['checkout-bt'].style.visibility = "show";
}
function check_postcode(){
   	var error_found='';
	var code = document.getElementById("postcode").value;
	 if(isNaN(reg_field_ids['postcode'].value) ){
   		error_found+="Postocde must be numreric value"+"<br />";
 	}	
 	var url = "check_postcode.php?postcode="+code; 
				xmlHttp.open("GET", url, true);
				xmlHttp.onreadystatechange = handleRequestStateChange;
				xmlHttp.send(null); 
	
		//if(!response){ 
			//setTimeout("check_group()", 2000); 
	if(error_found){
		reg_msg_ids['postcode'].innerHTML = error_found;
		reg_box_ids['postcode'].style.display='block';	
		//reg_img_ids['postcode'].src="images"+'/aff_cross.gif';
		reg_field_ids['postcode'].value='';
		return false;
	}else{
		reg_box_ids['postcode'].style.display='none';		
		//reg_img_ids['postcode'].src="images"+'/aff_tick.gif';
			
		return true;
	}
	
}
function createXmlHttpRequestObject()
{
// will store the reference to the XMLHttpRequest object
	var xmlHttp;
// this should work for all browsers except IE6 and older
try
{
// try to create XMLHttpRequest object
	xmlHttp = new XMLHttpRequest();
}
catch(e)
{
// assume IE6 or older
	var XmlHttpVersions = new Array("MSXML2.XMLHTTP.6.0",
		"MSXML2.XMLHTTP.5.0",
		"MSXML2.XMLHTTP.4.0",
		"MSXML2.XMLHTTP.3.0",
		"MSXML2.XMLHTTP",
		"Microsoft.XMLHTTP");
	// try every prog id until one works
	for (var i=0; i<XmlHttpVersions.length && !xmlHttp; i++)
	{
		try
		{
		// try to create XMLHttpRequest object
			xmlHttp = new ActiveXObject(XmlHttpVersions[i]);
		}
		catch (e) {}
		}
	}
	// return the created object or display an error message
	if (!xmlHttp)
		alert("Error creating the XMLHttpRequest object.");
	else
		return xmlHttp;
}



// function that handles the HTTP response
function handleRequestStateChange()
{
	//var response='';
	// display the status of the request
	if (xmlHttp.readyState == 4)
	{
	// continue only if HTTP status is "OK"
		if (xmlHttp.status == 200)
		{
			try
			{
				// read the message from the server
					response = xmlHttp.responseText;
				//	alert(response);
					return response; 
			}
			catch(e)
			{
				// display error message
				alert("Error reading the response: " + e.toString());
			}
		}
		else
		{
			// display status message
			alert("There was a problem retrieving the data:\n" +
			xmlHttp.statusText);
		}
	}
}

function checkNumeric(FV)
{	
	if(isNaN(FV.value))
	{
		alert("must be a numeric value");
		FV.value="";
		FV.select();
	}
	
}

function MM_goToURL() { 
  var i, args=MM_goToURL.arguments; document.MM_returnValue = false;
  for (i=0; i<(args.length-1); i+=2) eval(args[i]+".location='"+args[i+1]+"'");
}
function goBack() 
{ 
window.history.back();
}
function checkQty(FV)
{	
	if(isNaN(FV.value))
	{
		alert("must be a numeric value");
		FV.value="";
		FV.select();
	}
	else if(FV.value <= 0 )
	{
		alert("value must be greater than zero");
		FV.value="";
		FV.select();
	}
	
}

function checkOptions()
{
var correct = true
if (document.add.grip.value == "" && correct == true) {correct = false; alert("Please select a grip!")}
if (document.add.shaft.value == "" && correct == true) {correct = false; alert("Please select an iron shaft.")}
if (document.add.stiffness.value == "" && correct == true) {correct = false; alert("Please select a shaft stiffness.")}
if (document.add.hand.value == "" && correct == true) {correct = false; alert("Please select your handed.")}
if (correct){}
return correct
}
function checkCredit()
{
var correct = true
if (document.complete.accountNumber.value == "" && correct == true) {correct = false; alert("Please enter your account number.")}
if (document.complete.mm.value == "" && correct == true) {correct = false; alert("Please enter a month.")}
if (document.complete.yy.value == "" && correct == true) {correct = false; alert("Please enter a year.")}
if (document.complete.cardType.value == "" && correct == true) {correct = false; alert("Please select a card type.")}
if (document.complete.cardName.value == "" && correct == true) {correct = false; alert("Please enter the account name.")}
if (correct){
	document.complete.action="checkout.php?complete=1";
	document.complete.submit();
	}
return correct
}
function checkDetails()
{
var correct = true
if (document.customerDetails.name.value == "" && correct == true) 
{
	correct = false; 
	alert("Please enter your name")
}
if (document.customerDetails.surname.value == "" && correct == true) {correct = false; alert("Please enter your surname.")}
if (document.customerDetails.address.value == "" && correct == true) {correct = false; alert("Please enter your address.")}
if (document.customerDetails.suburb.value == "" && correct == true) {correct = false; alert("Please enter a suburb.")}
if (document.customerDetails.postcode.value == "" && correct == true) {correct = false; alert("Please enter a postcode.")}
if (document.customerDetails.state.value == "" && correct == true) {correct = false; alert("Please enter a state.")}
if (document.customerDetails.phone.value == "" && correct == true) {correct = false; alert("Please enter a phone number.")}
if (document.customerDetails.email.value == "" && correct == true) {correct = false; alert("Please enter a email.")}
if (correct){}
return correct
}

function checkDetailsR()
{
var correct = true;
if(document.register.username.value.length < 6 || document.register.username.value.length > 12){correct = false; alert("Username must be between 6-12 charcters")}
if(document.register.password.value.length < 6 || document.register.password.value.length > 12){correct = false; alert("Password must be between 6-12 charcters")}
if(document.register.password.value != document.register.password2.value){correct = false; alert("Please make sure that your password is correct")}
if (document.register.username.value == "" && correct == true) {correct = false; alert("Please must enter a username")}
if (document.register.password.value == "" && correct == true) {correct = false; alert("Please must enter a password")}
if (document.register.name.value == "" && correct == true) {correct = false; alert("Please enter your name")}
if (document.register.surname.value == "" && correct == true) {correct = false; alert("Please enter your surname.")}
if (document.register.address.value == "" && correct == true) {correct = false; alert("Please enter your address.")}
if (document.register.suburb.value == "" && correct == true) {correct = false; alert("Please enter a suburb.")}
if (document.register.postcode.value == "" && correct == true) {correct = false; alert("Please enter a postcode.")}
if (document.register.state.value == "" && correct == true) {correct = false; alert("Please enter a state.")}
if (document.register.phone.value == "" && correct == true) {correct = false; alert("Please enter a phone number.")}
if (document.register.email.value == "" && correct == true) {correct = false; alert("Please enter a email.")}
if(document.register.email.value.search("@") < 0){correct = false; alert("Please enter a correct email address.")};

if (correct){}
return correct
}

function checkForgot()
{
var correct = true;
if(document.register.username.value.length < 6 || document.register.username.value.length > 12){correct = false; alert("Username must be between 6-12 charcters")}
if (document.register.email.value == "" && correct == true) {correct = false; alert("Please enter a email.")}
if(document.register.email.value.search("@") < 0){correct = false; alert("Please enter a correct email address.")};

if (correct)
{
	document.register.action="register.php?action=send_password";
	document.register.submit();
}
return correct
}
function register()
{
var correct = true;
if (document.register.company_name.value == "" && correct == true) {correct = false; alert("Please enter a company name")}
if (document.register.contact_name.value == "" && correct == true) {correct = false; alert("Please enter a contact name.")}
if (document.register.ABN.value == "" && correct == true) {correct = false; alert("Please enter a ABN.")}
if (document.register.address.value == "" && correct == true) {correct = false; alert("Please enter your address.")}
if (document.register.suburb.value == "" && correct == true) {correct = false; alert("Please enter a suburb.")}
if (document.register.postcode.value == "" && correct == true) {correct = false; alert("Please enter a postcode.")}
if (document.register.state.value == "" && correct == true) {correct = false; alert("Please enter a state.")}
if (document.register.contact_phone.value == "" && correct == true) {correct = false; alert("Please enter a phone number.")}
if (document.register.email.value == "" && correct == true) {correct = false; alert("Please enter a email.")}
if (correct){
document.register.submit();

}

}

function checkout_cart(){
	
	document.shopping_cart.action="checkout.php?action=step1";
		document.shopping_cart.submit();	
	
}	
function update_cart(){
	
	document.shopping_cart.action="basket.php?update=1";
	document.shopping_cart.submit();

}	
function checkout_step2(){
	document.customerDetails.action="checkout.php?action=step2";
	document.customerDetails.submit();
}


function editDetails()
{
	document.editDetails.action="register.php?action=edit_details";
	document.editDetails.submit();
}	
function submit()
{
	document.add.submit();
}
function checkout(dL)
{
	if(confirm ("Are you sure you want to check out your shopping cart?"))
	{
		window.location=dL;	
	}

}
function empty(dL)
{
	if(confirm ("Are you sure you want to empty your shopping cart?"))
	{
		window.location=dL;	
	}

}

function DoDelete(dL)
{
	if(confirm ("Are you sure you want to delete this item?"))
	{
		window.location=dL;	
	}

	
}	











