// JavaScript Document

var item;
var cartItems=new Array();
var items=new Array();
var total=0;
var DELIVERY=7.80






function addItem(id){
	var myItem=getItem(id);
	if(myItem==null){
		alert("Error finding item");
	}
	addItemToCart(myItem);
	setCartItem();
	document.getElementById("btn_checkout").className="enabled";
	document.getElementById("btn_checkout").disabled=false;
	if(cartItems.length==0){
		document.getElementById("btn_checkout").disabled=true;
		document.getElementById("btn_checkout").className="disabled";	
	}
}

function checkout(){
	document.getElementById("detailsForm").style.display="block";
	document.getElementById("items").style.display="none";
	document.getElementById("cart_wrap").style.display="none";
	//hiding the 
	var members=false;
	
	for(i=0;i<cartItems.length;i++){
		
		if(cartItems[i].att1=="MEM"){
			members=true;
		}		 
	}
	if(!members){
		document.getElementById("dob_li").style.display="none";
		document.getElementById("dob").style.display="none";
		document.getElementById("passholder_li").style.display="none";	
	}
}
var err;
function validate(){
	err=new Array();
	isEmpty("firstName","First Name");
	isEmpty("lastName","Last Name");
	isEmpty("email","Email");
	isEmpty("phone","Phone");
	
	// address
	isEmpty("street","Street");
	isEmpty("suburb","Suburb");
	isEmpty("town","City/Town");
	isEmpty("postcode","postcode");
	
	// del address
	isEmpty("delName","Delivery Name");
	isEmpty("delStreet","Delivery Street");
	isEmpty("delSuburb","Delivery Suburb");
	isEmpty("delTown","Delivery City/Town");
	isEmpty("delPostcode","Delivery Postcode");
	
	isChecked("terms","Terms and Conditions");
	
	if(err.length>0){
		alert("Please complete:\n"+err.join('\n'));	
		return false;
	}

	document.getElementById("shop").submit();
}




function isEmpty(id,error){
	if(document.getElementById(id).value.length==0){
		
		err.push(error);
	}	
}
function isChecked(id,error){
	if(!document.getElementById(id).checked){
	
		err.push(error);
	}	
}
function setShippingAddress(){
	var copyAddress=document.getElementById("shipppingIsBilling").checked
	if(copyAddress){
		document.getElementById("delName").value=document.getElementById("firstName").value+" "+document.getElementById("lastName").value;
		document.getElementById("delStreet").value=document.getElementById("street").value
		document.getElementById("delSuburb").value=document.getElementById("suburb").value
		document.getElementById("delTown").value=document.getElementById("town").value
		document.getElementById("delPostcode").value=document.getElementById("postcode").value
	}
	
}
function removeItem(id){
	
	for(i=0;i<items.length;i++){
		if(id=items[i].id){
		   cartItems.splice(i,1);
		   
		    setCartItem();
			break;
		}
	}
}

function getItem(id){
	for(i=0;i<items.length;i++){
		if(id==items[i].id){
		   	item=items[i];
			return items[i];
		}
	}
	return null;
}

function addItemToCart(myItem){
	
	for(i=0;i<cartItems.length;i++){
		
		if(cartItems[i].id==myItem.id){
			myItem.qty+=parseInt(document.getElementById("sel_"+myItem.id).value);
			
			return
		}
	}
	myItem.qty=parseInt(document.getElementById("sel_"+myItem.id).value);
	cartItems.push(myItem);
	document.getElementById("delivery").style.display="block";
}

function setCartItem(){
	var innerHTML="";
	document.getElementById("itemsOrdered").value="<xml>";
	total=0;
	for(i=0;i<cartItems.length;i++){
		totalPrice=parseInt(cartItems[i].price)*cartItems[i].qty
		innerHTML+='<li>';
		innerHTML+='<p class="prod_name">'+cartItems[i].name+'</p>';
		innerHTML+='<p class="prod_cost">$'+totalPrice+'</p>';
		innerHTML+='<p class="remover"><a href="#" onclick="removeItem('+cartItems[i].id+')" ></a></p>';
		innerHTML+='</li>';
		total+=totalPrice;
		// items xml
		/*
			price = items.item(i).childNodes
		sSize = items.item(i).childNodes(2).text
		itemId = items.item(i).childNodes(3).text
		typeId = items.item(i).childNodes(5).text
		quantity = items.item(i).childNodes(1).text
		sName = items.item(i).childNodes(4).text*/
		document.getElementById("itemsOrdered").value+="<item>";
		document.getElementById("itemsOrdered").value+="<price>"+cartItems[i].price+"</price>";
		document.getElementById("itemsOrdered").value+="<quantity>"+cartItems[i].qty+"</quantity>";
		document.getElementById("itemsOrdered").value+="<sSize>"+cartItems[i].sSize+"</sSize>";
		document.getElementById("itemsOrdered").value+="<itemId>"+cartItems[i].id+"</itemId>";
		document.getElementById("itemsOrdered").value+="<sName>"+cartItems[i].name+"</sName>";
		document.getElementById("itemsOrdered").value+="<typeId>"+cartItems[i].type+"</typeId>";
		document.getElementById("itemsOrdered").value+="</item>";
	}
	document.getElementById("cartItemsList").innerHTML=innerHTML;
	if(cartItems.length==0){
		document.getElementById("delivery_cost").style.display="none";
		document.getElementById("totalCost").innerHTML="$"+total+".00";
		document.getElementById("btn_checkout").disabled=true;
		document.getElementById("btn_checkout").className="disabled";
	}else{
		document.getElementById("totalCost").innerHTML="$"+(parseInt(total)+DELIVERY)+"0";
		document.getElementById("delivery_cost").style.display="block";	
	}
	document.getElementById("total").value=total;
	document.getElementById("itemsOrdered").value+="</xml>";
	
	
}

function setSepecify(){
	
	if(document.getElementById("passholder").checked){
		document.getElementById("specifyBox").style.display="block";
		return
	}
	document.getElementById("specify").selectedIndex=0;
	document.getElementById("specifyBox").style.display="none";
	
}
	
window.onload=function(){
	document.getElementById("detailsForm").style.display="none";
	document.getElementById("btn_checkout").onclick = checkout;
	document.getElementById("btn_checkout").className="disabled";
	document.getElementById("btn_checkout").disabled=true;
	document.getElementById("btn_checkout").onclick = checkout;
	document.getElementById("passholder").onclick=setSepecify;
	document.getElementById("shipppingIsBilling").onclick=setShippingAddress;
	document.getElementById("submitForm").onclick=validate;
	
	
}
	