
function GetCookie(sName)
{
	var aCookie = document.cookie.split("; ");
	for (var i=0; i < aCookie.length; i++)
	{
		var aCrumb = aCookie[i].split("=");
		if ('bbycart' + sName == aCrumb[0]) 
		{
			var sValue		
			sValue =unescape(aCrumb[1]); 
			return sValue.replace(/%/gi," ");
		}			
	}
	return null;
}

function GetPlainCookie(sName)
{
	var aCookie = document.cookie.split("; ");
	var cookieValue;
	
	sName = sName.replace('_','%5F');
	
	for (var i=0; i < aCookie.length; i++)
	{
		var aCrumb = aCookie[i].split("=");
		if (sName == aCrumb[0]) 
		{
			var sValue		
			sValue =unescape(aCrumb[1]); 
			cookieValue = sValue.replace(/%/gi," ");
			break;
		}			
	}
	return cookieValue;
}

function renderAccDetails()
{
	if(document.cookie){
		var cartItems = GetCookie(arguments[2]);
		if(cartItems!=null && cartItems!='' && cartItems!='undefined')
			document.getElementById("cartItemsNumber").innerHTML = cartItems;
		else
			document.getElementById("cartItemsNumber").innerHTML = '0';

		if(arguments[4]=="False"){
			var userName = GetCookie(arguments[3]);
			if(userName!=null && userName!='' && userName!='undefined'){
				document.getElementById("user_name1").innerHTML = PreventXSSHTML(userName.substring(0, 12)) + (userName.length>12?'...':'');
				document.getElementById("user_name2").innerHTML = PreventXSSHTML(userName.substring(0, 12)) + (userName.length>12?'...':'');
				document.getElementById("welcome_in").style.display = "none";
				document.getElementById("welcome_out").style.display = "inline";
			}
		}
	}
	else{
		document.getElementById("cartItemsNumber").innerHTML = arguments[0];
		if(arguments[4]=="False"){
			if(arguments[1].length>0){
				document.getElementById("user_name1").innerHTML = PreventXSSHTML(arguments[1].substring(0, 12)) + (arguments[1].length>12?'...':'');
				document.getElementById("user_name2").innerHTML = PreventXSSHTML(arguments[1].substring(0, 12)) + (arguments[1].length>12?'...':'');
				document.getElementById("welcome_in").style.display = "none";
				document.getElementById("welcome_out").style.display = "inline";
			}
		}
	}	
}

function PreventXSSHTML(s) 
{
    var str = new String(s);
    str = str.replace(/&/g, "&amp;");
    str = str.replace(/</g, "&lt;");
    str = str.replace(/>/g, "&gt;");
    str = str.replace(/"/g, "&quot;");
    str = str.replace(/\(/g, "&#40;");
    str = str.replace(/\)/g, "&#41;");
    return str;
}

function dollarFormat(p, l) 
{
	var sDecimalPoint;
	var sThousandSeparator;
	var sDollarSymbol;
	var vNegative = false;
	
	switch(l)
	{
		case "EN":
			sDecimalPoint = ".";
			sThousandSeparator = ",";
			sDollarSymbol = "$";
			break;
		case "FR":
			sDecimalPoint = ",";
			sThousandSeparator = " ";
			sDollarSymbol = "$";
			break;
	}
	//negative numbers...remove the negative sign while processing
	if (p < 0){
		vNegative = true;
		var sp= p.toString();
		p = parseFloat(sp.substring(1,sp.length));
	}		

	var fPennies = (p - Math.floor(p))*100;
	var fModulus;
	var sFormattedAmount;
	var sFormattedThousand;
	
	fPennies = Math.round(fPennies);
	if (fPennies<10)
	{
		fPennies = "0" + fPennies;
	}
	sFormattedAmount = sDecimalPoint + fPennies;
	p = Math.floor(p);
	if (p==0)
	{
		sFormattedAmount = '0' + sFormattedAmount;
	}
	else
	{  
		while (p >= 1) 
		{
			fModulus = p%1000;
			p = Math.floor(p/1000);
			if (p >= 1) 
			{
				if (fModulus>=100)
				{
					sFormattedThousand = sThousandSeparator
				}
				else if (fModulus>=10)
				{
					sFormattedThousand = sThousandSeparator + "0"   
				}
				else
				{
					sFormattedThousand = sThousandSeparator + "00";   
				}
			}
			else
			{
				sFormattedThousand = "";
			}
			sFormattedThousand += fModulus;
			sFormattedAmount = sFormattedThousand + sFormattedAmount;
		}
	}
	if (vNegative==true)
	{
		//add back the negative sign
		sFormattedAmount = '-' + sFormattedAmount
	}
	
	if (l == 'EN')
	{
		sFormattedAmount = sDollarSymbol + sFormattedAmount;
	}
	else
	{
		sFormattedAmount = sFormattedAmount + ' ' + sDollarSymbol;
	}
	return sFormattedAmount;
}