﻿///***********************************************************************///
///***<!-- Contains Copyrighted Materials by (c) ISPRODUCTIONS 2006 -->***///
///***********************************************************************///


//////////////////////////////////////////////////////////////////////////////
//Cart Content "ImgId~PriceId~Quantity~Price~TypeDelivery~AdditionalCharges"//
//////////////////////////////////////////////////////////////////////////////
var defCartContent = "0~0~0~0.00~0~0";

function removeFromCart(imageid)
{
    var obj = document.getElementById('cartAct' + imageid);
    if(imageid != "" && obj)
    {
        var myPriceBox = getCookie("cartPriceBox" + GuestID);
        var tempPriceBox = removeImageFromCart(imageid);
        var thumbName = "";
        var flag = true;
        if(getItemCartCount(myPriceBox) - getItemCartCount(tempPriceBox) > 1)
        {
            flag = false;
            var objName = document.getElementById('selImgName' + imageid);
            if(objName)
                thumbName = objName.value; 
        }
        
        if(!flag && confirm("More than one image " + thumbName + " exists in the cart, would you like to remove all of them?"))
		    flag = true;
		    
		if(flag)
		{
		    obj.innerHTML = "";
		    setCookie("cartPriceBox" + GuestID, tempPriceBox, expiredate);
            ShowActionToCart(imageid, 'cartAct' + imageid);
            CountItemsInCart();
		}
	}
}

function addToCart(imageid, priceId, price, typeDelivery, additionalCharges)
{
    setFirstTimeCart();
    var myPriceBox = getCookie("cartPriceBox" + GuestID);
    var obj = document.getElementById('cartAct' + imageid);
    var flag = false;
	if(imageid != "" && imageid != null && imageid != 'undefined')
	{
		if(obj || !isItemExists(imageid, priceId))
		{
		    if(obj)
		        obj.innerHTML = '<a href="javascript:removeFromCart(' + imageid + ')" class="imgNavig"><img src="images/' + theCustomSkin + '/cart_icon.gif" width="20" height="12" border="0" align="absmiddle" /> Remove from Cart</a>';
		    
		    myPriceBox += "|" + imageid + "~" + priceId + "~1~" + price + "~" + typeDelivery + "~" + additionalCharges;            
		}
		else
		{
		    if(isPhysicalDelivery(imageid, priceId))
		    {
		        var newQuantity = 1 + parseInt(getQuantity(imageid, priceId));
		        var tempPriceBox = "|" + imageid + "~" + priceId + "~" + newQuantity + "~" + price + "~" + typeDelivery + "~" + additionalCharges;
		        myPriceBox = updateQuantity(imageid, priceId, tempPriceBox)
		    }
		}
		//alert(myPriceBox);
		setCookie("cartPriceBox" + GuestID, myPriceBox, expiredate);
		CountItemsInCart();
	}
}

function CountItemsInCart()
{
    var count;
    setFirstTimeCart();
    var myPriceBox = getCookie("cartPriceBox" + GuestID);
    var obj = document.getElementById('itemsInCart');
    if(obj)
    {
        count = getItemCartCount(myPriceBox);
        obj.innerHTML = '<a href="famain.asp?' + G_SecData + '&action=editorder" class="imgNavig" style="font-weight:bold;"><img src="images/' + theCustomSkin + '/cart_icon.gif" width="20" height="12" border="0" align="absmiddle" /> <span class="BigOrangeCopy">Cart(' + count + ')</span></a>';
    }
}

function getImgIdList()
{
    setFirstTimeCart();
    var pattern = /[[~]+[0-9]*~[0-9]*~[0-9]*[\.]+[0-9]*~[0-4]+~[0-1]+]*/g;
    var myPriceBox = getCookie("cartPriceBox" + GuestID);
    myPriceBox = myPriceBox.replace(pattern, '');
    return myPriceBox;
}

function getItemCartCount(strList)
{
    var arr = strList.split('|');
    var result = 0;
    for(i = 0; i < arr.length; i++)
    {
        var tempArr = arr[i].split('~');
        result = result + parseInt(tempArr[2]);
    }
    
    return result;
}

function removeImageFromCart(imgId)
{
    setFirstTimeCart();
    var reg = new RegExp("[[^|]+" + imgId + "~[0-9]*~[0-9]*~[0-9]*[\.]+[0-9]*~[0-4]+~[0-1]+]*", "g");
    var myPriceBox = getCookie("cartPriceBox" + GuestID);
    myPriceBox = myPriceBox.replace(reg, '');
    return myPriceBox;
}

function isItemExists(imgId, priceId)
{
    setFirstTimeCart();
    var reg = new RegExp("[[^|]+" + imgId + "~" + priceId + "~[0-9]*~[0-9]*[\.]+[0-9]*~[0-4]+~[0-1]+]*", "g");
    var myPriceBox = getCookie("cartPriceBox" + GuestID);
    
    return (myPriceBox.search(reg) != -1);
}

function isPhysicalDelivery(imgId, priceId)
{
    setFirstTimeCart();
    var reg = new RegExp("[[^|]+" + imgId + "~" + priceId + "~[0-9]*~[0-9]*[\.]+[0-9]*~1~[0-1]+]*", "g");
    var myPriceBox = getCookie("cartPriceBox" + GuestID);
    
    return (myPriceBox.search(reg) != -1);
}

function getQuantity(imgId, priceId)
{
    setFirstTimeCart();
    var reg = new RegExp("[[^|]+" + imgId + "~" + priceId + "~[0-9]*~[0-9]*[\.]+[0-9]*~1~[0-1]+]*");
    var myPriceBox = getCookie("cartPriceBox" + GuestID);
    var temp = myPriceBox.match(reg);
    if(temp)
    {
        var arr = temp[0].split('~');
        if(arr.length > 0) return arr[2];
    }
    return 0;
}

function getCurrItemInfo(id, strSource)
{
    var reg = new RegExp("[[^|]+" + id + "~[A-Za-z\- ]*~[0-9]*[\.]+[0-9]*~[0-4]+~[0-1]+]*");
    var temp = strSource.match(reg);
    if(temp)
        return temp[0];
    return "";
}

function addNewItemInCart(fullItemInfo)
{
    setCookie("cartPriceBox" + GuestID, fullItemInfo, expiredate);
}

function deleteCartCookie()
{
    setCookie("cartPriceBox" + GuestID, defCartContent, expiredate);
}

function updateQuantity(imgId, priceId, newStrItem)
{
    setFirstTimeCart();
    var reg = new RegExp("[[^|]+" + imgId + "~" + priceId + "~[0-9]*~[0-9]*[\.]+[0-9]*~1~[0-1]+]*");
    var myPriceBox = getCookie("cartPriceBox" + GuestID);
    myPriceBox = myPriceBox.replace(reg, newStrItem);
    return myPriceBox;
}

function SetItemInCart()
{
    var myItemList = getImgIdList();
    var arr = myItemList.split('|'); 
    for(i = 0; i < arr.length; i++)
    {
        var obj = document.getElementById('cartAct' + arr[i]);
        if(obj)
        {
            obj.innerHTML = '<a href="javascript:removeFromCart(' + arr[i] + ')" class="imgNavig"><img src="images/' + theCustomSkin + '/cart_icon.gif" width="20" height="12" border="0" align="absmiddle" /> Remove from Cart</a>';
        }
    }
}

function HideActionToCart(id, placeId)
{
    var obj = document.getElementById(placeId);
	if(id != "" && obj)
	{
		var myItemList = getImgIdList();
		var tempBox = "|" + myItemList + "|";
		if( tempBox.indexOf("|" + id + "|") == -1)
		{	
			obj.style.display = "none";
		}
	}
}

function setFirstTimeCart()
{
    if(! getCookie('cartPriceBox' + GuestID)) deleteCartCookie();
}

function setCookie(name, value, days) { 
	var date = new Date();
	date.setTime(date.getTime() + (days*24*60*60*1000));
	date = date.toGMTString();
	document.cookie= name + "=" + escape(value) + "; expires=" + date + "; path=";
} 

function getCookie(name) { 
	var dc = document.cookie; 
	var prefix = name + "="; 
	var begin = dc.indexOf("; " + prefix); 
	if (begin == -1) { 
		begin = dc.indexOf(prefix); 
		if (begin != 0) return null; 
	} else { 
		begin += 2; 
	} 
	var end = document.cookie.indexOf(";", begin); 
	if (end == -1) { end = dc.length; } 
	return unescape(dc.substring(begin + prefix.length, end)); 
} 