//Update item in shopping basket
function updatebasket(form) {
	var quant=parseInt(form.elements[0].value);

	if(isNaN(quant)){
	   alert("Quantity must be a number. ");
	   form.elements[0].select();
	   form.elements[0].focus();}
	else{
	if(quant >= 0){
	   updateitem(form);
	   location.href="basket.html";}
	else{
	   alert("Invalid quantity entered. ");
	   form.elements[0].select();
	   form.elements[0].focus();
	   }
	}

}

function updateitem(form){
	var newquant=form.elements[0].value;
	var formno=form.elements[0].name;
	var orderdata=getCookie("order");
//	var orderitem=orderdata.split(delimitem);
	var orderitem=separatedata(orderdata,delimitem);
	var neworder = "";

	if (newquant>0){
//	   var orderoptions=orderitem[formno].split(delimoption);
	   var orderoptions=separatedata(orderitem[formno],delimoption);
	   orderoptions[3]=newquant;

	   for(i=0;i<orderoptions.length-1;i++){
	      neworder+=orderoptions[i]+delimoption
	   }
	   neworder+=orderoptions[orderoptions.length-1];
	}
	else{
	   neworder="";
	}

	orderitem[formno]=neworder;
	var neworderarray=new Array("");
	var neworderdata="";
	var j=0;

	for(i=0;i<orderitem.length;i++){
	   if(orderitem[i]!=""){
	      neworderarray[j]=orderitem[i]
		j++
	   }
	}

	if (neworderarray.length>1){
	   for(i=0;i<neworderarray.length-1;i++){
	      neworderdata+=neworderarray[i]+delimitem;
	   }
	}
	neworderdata+=neworderarray[neworderarray.length-1];

	if (neworderdata!=""){
	   setCookie("order", neworderdata, null, "/");}
	else{
	   delCookie("order");
	}
	
}

//Show basket items
function displayitems(){

	var orderdata=getCookie("order");
	var i=0;
	var j=0;
	var pst=0;
	var gst=0;
	var subtotal=0;
	var shipping=0;
	var total=0;
	var shippingrate=.1;

document.write("<table border='1' cellpadding='2' cellspacing='0' bgcolor='#ffffff'>");
document.write("<tr><td><font face='times new roman'><b>Product Id</td><td><b><font face='times new roman'>Product Name</td><td><b><font face='times new roman'>Options</td><td><b><font face='times new roman'>Price</td><td align='center'><b><font face='times new roman'>Quantity</td><td align='center'><b><font face='times new roman'>Item Total</td></tr>");

if (orderdata!=null){

	var orderitems=separatedata(orderdata,delimitem);
	var printline="";
	var orderoptions=new Array("");
	var linetotal=0;
	
	for(i=0;i<orderitems.length;++i){

	   orderoptions[i]=separatedata(orderitems[i],delimoption);
	   printline="<FORM METHOD='GET'><tr><td><font face='times new roman'>"+orderoptions[i][0]+"</td>";
	   printline+="<td><font face='times new roman'>"+orderoptions[i][1]+"</td><td><font size='-1' face='times new roman'>";
	   linetotal=parseFloat(orderoptions[i][2])*parseFloat(orderoptions[i][3])
	   subtotal+=linetotal;
	   
	   for(j=4;j<6;j++){
		if(j<orderoptions[i].length-1){
		   var breakme = "<br>";}
		else{
		   var breakme = "";}
		if(orderoptions[i][j]!=" "){
	      printline+=orderoptions[i][j]+breakme;}
	   };

	   printline+="</font></td><td align='right'><font face='times new roman'>"+orderoptions[i][2]+"</td><td align='center'>"+orderoptions[i][3]+"</td>";
	   printline+="<td align='right'><font face='times new roman'>"+formatamount(linetotal)+"</td>"
	   document.write(printline+"</tr></form>");
	};
	gst=subtotal*0.07;
	pst=subtotal*0.08;
	shipping=shippingrate*subtotal;
	total=shipping+subtotal+gst+pst;
};

	document.write("</table>");
	
	document.write("<p><table border='1' cellpadding='2' cellspacing='0' bgcolor='#ffffff'>");
	document.write("<tr><td colspan=2 ><font face='times new roman'>Subtotal:</td><td align='right'><font face='times new roman'>$"+formatamount(subtotal)+"</td></tr>");
//	document.write("<tr><td rowspan=2><font face='times new roman'>Taxes:</td><td><font face='times new roman'>GST (Canadian residents only):</td><td align='right'><font face='times new roman'>$"+formatamount(gst)+"</td></tr>");
//	document.write("<tr><td><font face='times new roman'>PST (Ontario residents only):</td><td align='right'><font face='times new roman'>$"+formatamount(pst)+"</td></tr>");
//	document.write("<tr><td colspan=2><font face='times new roman'>Shipping:</td><td align='right'><font face='times new roman'>$"+formatamount(shipping)+"</td></tr>");
//	document.write("<tr><td colspan=2><font face='times new roman'>Total:</td><td align='right'><font face='times new roman'>$"+formatamount(total)+"</td></tr>");
	document.write("</table></p>");

}


//Empty basket
function emptybasket(page){
	   delCookie("order");
	   location.href=page;
}


//Format field with two decimals
function formatamount(amount){
    var decpoint;
    var begin;
    var end;
    var valstr;
    var temp_char;

    amount = Math.round(amount * 100) / 100
    valstr = "" + amount;
    decpoint = valstr.indexOf(".")
    if (decpoint != -1) {
        begin = valstr.substring(0,decpoint);
        end = valstr.substring(decpoint+1,valstr.length);
	}
    else {
        begin = valstr;
        end = "";
	} 
	if (end.length < 2)
	 {while (end.length < 2)
	    {end += "0";}
	 }   
	end = end.substring(0,2);
    return (begin+"."+end);
}


//Show basket items
function displayitems2(shippingrate,prov,count,shipmethod){

	var orderdata=getCookie("order");
	var i=0;
	var j=0;
	var subtotal=0;
	var shipping=0;
	var total=0;
	var taxes=0;
	var province=prov;
	var country=count;
	var shippingmethod=shipmethod;
	
//	var shippingrate=.1;

document.write("<table border='1' cellpadding='2' cellspacing='0' bgcolor='#ffffff'>");
document.write("<tr><td><b><font face='times new roman'>Product Id</td><td><b><font face='times new roman'>Product Name</td><td><b><font face='times new roman'>Options</td><td><b><font face='times new roman'>Price</td><td align='center'><b><font face='times new roman'>Quantity</td><td align='center'><b><font face='times new roman'>Item Total</td></tr>");

if (orderdata!=null){
//	var orderitems=orderdata.split(delimitem);
	var orderitems=separatedata(orderdata,delimitem);
	var printline="";
	var orderoptions=new Array("");
	var linetotal=0;
	var numberofitems=0;
	var weight=0;
	var valuefactor=0;
	for(i=0;i<orderitems.length;++i){
//	   orderoptions[i]=orderitems[i].split(delimoption);
	   orderoptions[i]=separatedata(orderitems[i],delimoption);
	   printline="<tr><td><font face='times new roman'>"+orderoptions[i][0]+"</td>";
	   printline+="<td><font face='times new roman'>"+orderoptions[i][1]+"</td><td><font size='-1' face='times new roman'>";
	   linetotal=parseFloat(orderoptions[i][2])*parseFloat(orderoptions[i][3])
	   subtotal+=linetotal;
	   numberofitems+=parseFloat(orderoptions[i][3]);
	   weight+=parseFloat(orderoptions[i][3]*orderoptions[i][6]);
	   for(j=4;j<6;j++){
		if(j<orderoptions[i].length-1){
		   var breakme = "<br>";}
		else{
		   var breakme = "";}
		if(orderoptions[i][j]!=" "){
	      printline+=orderoptions[i][j]+breakme;}
	   }

	   printline+="</font></td><td align='right'><font face='times new roman'>"+orderoptions[i][2]+"</td><td align='center'><font face='times new roman'>"+orderoptions[i][3]+"</td>";
	   printline+="<td align='right'><font face='times new roman'>"+formatamount(linetotal)+"</td></tr>"
	   document.write(printline);
	}

	
	valuefactor=Math.ceil(subtotal/100)-1;
	if(weight<1){shipping=shippingrate*100+valuefactor;}
	else {shipping=weight*5.25+shippingrate*100+valuefactor;};
//document.write(shippingrate,",",numberofitems,",",valuefactor);
var taxname="";
gst=(subtotal+shipping)*0.07;
pst=subtotal*0.08;
hst=(subtotal+shipping)*0.15;
if (country=="CA"){
	if((province=="ON")||(province=="NB")||(province=="NS")||(province=="NF")){
	if(province=="ON"){total=subtotal+gst+pst+shipping; taxes=gst+pst; taxname="GST & PST";}
	else{total=subtotal+hst+shipping; taxes=hst; taxname="HST";};}
	
	
	else{total=subtotal+shipping+gst; taxes=gst; taxname="GST";};
}
else{total=subtotal+shipping; taxes=null;};

}
	document.write("</table>");
        
	document.write("</p><table border='1' cellpadding='2' cellspacing='0' bgcolor='#ffffff'>");
	document.write("<tr><td><font face='times new roman'>Subtotal:</td><td align='right'><font face='times new roman'>$"+formatamount(subtotal)+"</td></tr>");
	document.write("<tr><td><font face='times new roman'>Taxes: "+taxname+"</td><td align='right'><font face='times new roman'>$"+formatamount(taxes)+"</td></tr>");
	document.write("<tr><td><font face='times new roman'>Shipping:</td><td align='right'><font face='times new roman'>$"+formatamount(shipping)+"</td></tr>");
	document.write("<tr><td><font face='times new roman'>Total:</td><td align='right'><font face='times new roman'>$"+formatamount(total)+"</td></tr>");
	document.write("</table></p>");
//alert("Please print this page and send a copy along with your cheque");
PrepareOrder(shipping, shippingmethod);
}

