//just a simple shopping cart v. 0.5 -- Deb Schwartz -- 1/22/04

function opensmallwindow(sURL,sWidth,sHeight){
	var sFeatures = "top=50,left=100,height="+ (sHeight) +",width="+ (sWidth) + ",status=0,scrollbars=0,resizable=0,dependent=1,hotkeys=0";
	var oSampWin = window.open(sURL,"_blank",sFeatures);
}
function openPrnWin(){
	window.open("prntbasket.htm","_blank","top=50,left=50,height=480,width=600,scrollbars=1,dependent=1");
}
	
function setCky(name,value){
	var expiresOn=new Date();
	expiresOn.setMonth(expiresOn.getMonth()+1);
	document.cookie=name+"="+escape(value)+";expires="+expiresOn.toUTCString();
	if(getCky(name) != value){
			opensmallwindow('cookies.htm','250','250');
	}
}

function delCky(name){
	var expiresOn=new Date();
	expiresOn.setMonth(expiresOn.getMonth()-1);
	document.cookie=name+"=delete;expires="+expiresOn.toUTCString();
}

function getCky(name){
	var ckyVal="";
	if(document.cookie){
		var ckyStr=document.cookie;
		var ckyArray=ckyStr.split("; ");
		for (var x=0;x < ckyArray.length;++x){
			var cky=unescape(ckyArray[x]);
			if(name == (cky.substring(0, cky.indexOf("=")))){
				ckyVal=cky.substring(cky.indexOf("=")+1);
				break;
			}
		}
	}
	return ckyVal;
}

function writeBskt(bsktArray){
	var bsktStr="";
	for (var x=0;x < bsktArray.length;++x){
		if(x==(bsktArray.length-1)){
			bsktStr+=bsktArray[x];
		}
		else{
			bsktStr+=bsktArray[x]+"|";
		}
	}
	setCky("basket",bsktStr);
}

function getBskt(){
	var bsktStr=getCky("basket");
	var bsktArray=bsktStr.split("|");
	return bsktArray;
}

function changeItem(name,value,action){
	var bsktArray=getBskt();
	var found=false;
	for (var x=0;x < bsktArray.length;++x){
		var itemArray=bsktArray[x].split(":");
		if(name==itemArray[0]){
			if(action=="delete"){
				bsktArray.splice(x,1);
			}
			else{
				bsktArray[x]=itemArray[0]+":"+value;
			}
			break;
		}
	}
	writeBskt(bsktArray);
}

function getBsktLength(){
	return (getBskt()).length;
}

function getItemsInBskt(){
	var itemsInBskt=0;
	var bsktArray=getBskt();
	if(bsktArray[0]){ 
		for (var x=0;x < bsktArray.length;++x){
			var itemArray=bsktArray[x].split(":");
			itemsInBskt=itemsInBskt+eval(itemArray[1]);
		}
	}
	return parseInt(itemsInBskt);
}

function addMatch(item,price){
	var match=false;
	var bsktArray=getBskt();
	for (var x=0;x < bsktArray.length;++x){
		var itemArray=bsktArray[x].split(":");
		var name=itemArray[0];
		if (item == itemArray[2]){
			match=true;
			qty=eval(itemArray[1])+1;
			var newValue=(qty+":"+item+":"+price);
			changeItem(name,newValue,"update");
		}
	}
	return match;
}

function addToBskt(form){
	var item=form.item.value;
	var price=form.price.value;
	var match=addMatch(item,price);
	if (match == false){
		var bsktArray=getBskt();
		var bsktLength=getBsktLength();
		var itemName;
		var qty=1
		var value=(qty+":"+item+":"+price);
		if(bsktArray[0]==""){
			itemName="item1";
			bsktArray[0]=itemName+":"+value;
		}
		else{
			itemName="item"+eval(bsktLength+1);
			bsktArray[bsktLength]=itemName+":"+value;
		}
		writeBskt(bsktArray);
	}
}

function viewBskt(){
	location.href="basket.htm";
}

function bskt(){
	var itemTotal=0;
	var total=0;
	var bsktArray=getBskt();
	if(bsktArray[0]){
		for (var x=0;x < bsktArray.length;++x){
			var itemArray=bsktArray[x].split(":");
			var name=itemArray[0];
			itemTotal=eval(itemArray[1]*itemArray[3]);
			document.writeln("	<tr>");
			for (var y=1;y < itemArray.length;++y){
				if (y==1){
					document.writeln("<td width=20 align=center>");
					document.writeln("<input name="+name+" size=3 value="+itemArray[y]+">");
					document.forms['myBskt'].elements[name].value=itemArray[y];
				}
				else if (y==3){
					document.writeln("		<td align=right class=basket>");
					document.writeln("			"+money(itemArray[y]));
				}
				else{
					document.writeln("		<td class=basket>");
					document.writeln("			"+itemArray[y]+"&nbsp;");
				}
				document.writeln("		</td>");
			}
			document.writeln("		<td align=right class=basket>");
			document.writeln("			"+money(itemTotal));
			document.writeln("		</td>");
			document.writeln("	</tr>");
			total=total + itemTotal;
		}
		document.writeln("	<tr><td colspan=3>&nbsp;Total:</td><td align=right>"+money(total)+"</td></tr>");
	}
}

function payPalItems(){
	var bsktArray=getBskt();
	if(bsktArray[0]){
		for (var x=0;x < bsktArray.length;++x){
			var taxable=true;
			var itemArray=bsktArray[x].split(":");
			var qty=itemArray[1];
			var item=itemArray[2];
			var price=itemArray[3];
			document.writeln('<input type="hidden" name="item_name_'+(x+1)+'" value="'+item+'">');
			document.writeln('<input type="hidden" name="amount_'+(x+1)+'" value="'+price+'">');
			document.writeln('<input type="hidden" name="quantity_'+(x+1)+'" value="'+qty+'">');
		}
	}
}

function chkUser(){
	var user=getCky("user");
	if(user=="MN"){
		document.forms['myBskt'].elements['MNres'].checked=true;
	}
	else{
		document.forms['myBskt'].elements['MNres'].checked=false;
	}
}

function setUser(){
	if(document.forms['myBskt'].elements['MNres'].checked==true){
		setCky("user","MN");
	}
	else{
		setCky("user","");
	}
}

function getSalesTax(totalTaxable){
	var taxRate=.065;
	var salesTax=0;
	salesTax=totalTaxable*taxRate;
	salesTax=parseInt((Math.round(salesTax*100)))/100;
	return salesTax;
}

function getShipping(total){
	var shipping=0;
	if(total < 20){
		shipping=4.95;
	}
	else if(total < 50){
		shipping=6.95;
	}
	else if(total < 75){
		shipping=8.95;
	}
	else if(total < 100){
		shipping=10.95;
	}
	else{
		shipping=12.95;
	}
	return shipping;
}

function money(num){
	num=num.toString();
	var dec;
	for(dec=0;dec < num.length;++dec){
		if(num.charAt(dec)=="."){
			break;
		}
	}
	if(dec == num.length){
		num+=".";
	}
	while(num.length <= dec+2){
		num+="0";
	}
	if(num.length > dec+2){
		num=num.substring(0,dec+3);
	}
	return "$"+num;
}

function sideItems(){
	var itemsInBskt=getItemsInBskt();
	if (itemsInBskt == 1){
		document.writeln("You have "+itemsInBskt+" item<br>in your basket<p>");
	}
	else{
		document.writeln("You have "+itemsInBskt+" items<br>in your basket<p>");
	}
}

function sideBskt(){
	var total;
	var bsktArray=getBskt();
	var itemTotal;
	var total=0;
	if(bsktArray[0]){
		document.writeln("<table width=150>");
		for (var x=0;x < bsktArray.length;++x){
			var itemArray=bsktArray[x].split(":");
			var itemTotal=eval(itemArray[1]*itemArray[3]);
			document.writeln("	<tr>");
			for (var y=1;y < itemArray.length;++y){
				if (y<3){
					document.writeln("		<td align=center>");
					document.writeln("			"+itemArray[y]);
				}
				else{
					document.writeln("		<td align=right>");
					document.writeln("			$"+itemTotal);
				}
				document.writeln("		</td>");
			}
			document.writeln("	</tr>");
			total=total + itemTotal;
		}
		document.writeln("	<tr><td colspan=2>Total:</td><td align=right>$"+total+"</td></tr>");
		document.writeln("</table>");
	}
}

function update(bsktForm){
	var bsktArray=getBskt();
	var removed=false;
	for (var x=0;x < bsktArray.length;++x){
		var itemArray=bsktArray[x].split(":");
		var name=itemArray[0];
		var newQty=parseInt(document.forms['myBskt'].elements[name].value);
		if (newQty != itemArray[1]){
			if (newQty == 0 || isNaN(newQty)){
				changeItem(name,"","delete");
				removed=true;
			}
			else{
				var newValue=(newQty+":"+itemArray[2]+":"+itemArray[3]);
				changeItem(name,newValue,"update");
			}
		}
	}
	if(removed=true){
		var bsktArray=getBskt();
		if(bsktArray[0]){
			for(var x=0;x < bsktArray.length;++x){
				var reArray=bsktArray[x].split(":");
				reArray[0]="item"+(x+1);
				bsktArray[x]=reArray[0]+":"+reArray[1]+":"+reArray[2]+":"+reArray[3]
			}
			writeBskt(bsktArray);
		}
		else{
			delCky("basket");
		}
	}
}

