
/*·························  © Webacumen 2007. All rights reserved  ··········································

Project			:	standard template
Module Name		:	basket.js
Purpose			:	Functions unique to the shopping page
············································································································
Revision History

Date			Rev			CA Number		Changes Made
06/10/06		1			D001/0000		Initial Review
··········································································································*/

var mobjBktTimerID = null;
var mintBlinkCount = 0;
var mstrBlinkColor = "";

function onUpdateClick(intItm)
{
	try
	{
		var intQty = 0;
		var objCtr = document.getElementById("txtQty"+intItm);
		if (objCtr != null)
		{
			intQty = objCtr.value;
		}

		mobjBktTimerID = null;
		mintBlinkCount = 0;
		if (isNaN(intQty) == true || intQty < 1){alert("Please enter a valid quantity."); objCtr.focus();}
		else
		{dnaFetch("POST", "fldsys/controller.asmx/onBasketUpdateClick?prm="+intItm+"."+intQty, onUpdateClickReturn, "");}
	}

	catch(exception)
	{
		onErrorHandler("onUpdateClick: " + exception.message, "basket.js", 0);
	}
}

function onUpdateClickReturn()
{
	try
	{
		var strData = dnaCatch();
		if (strData.length > 0)
		{
			strData = cleanReturnedData(strData);
			updateBasket(strData, true);
		}
	}

	catch(exception)
	{
		onErrorHandler("onUpdateClickReturn: " + exception.message, "basket.js", 0);
	}
}

function onDeleteClick(intItm)
{
	try
	{
		mobjBktTimerID = null;
		mintBlinkCount = 0;

		if (confirm ("Click 'OK' to delete this item from your basket.") == true)
		{dnaFetch("POST", "fldsys/controller.asmx/onBasketDeleteClick?prm="+intItm, onDeleteClickReturn, "");}
	}

	catch(exception)
	{
		onErrorHandler("onDeleteClick: " + exception.message, "basket.js", 0);
	}
}

function onDeleteClickReturn()
{
	try
	{
		var strData = dnaCatch();
		if (strData.length > 0)
		{
		    window.location.reload();
			//strData = cleanReturnedData(strData);
			//updateBasket(strData, false);
		}
	}

	catch(exception)
	{
		onErrorHandler("onDeleteClickReturn: " + exception.message, "basket.js", 0);
	}
}

function updateBasket(strData, blnIsUpdate)
{
	try
	{
		var strColour = "";
		var objSum = null;
		var objItm = null;
		var intItm = getResultData(strData, "iitm");
		var decVal = getResultData(strData, "ival");
		var intQty = getResultData(strData, "sqty");
		var decSub = getResultData(strData, "ssub");
		var decPkg = getResultData(strData, "spkg");
		var decTot = getResultData(strData, "stot");
		var decVat = getResultData(strData, "svat");
		var decOrd = getResultData(strData, "sord");
		
		if (intItm > 0)
		{
			if (blnIsUpdate == true)
			{
				strColour = "LIGHTCYAN";
				objItm = document.getElementById("bktitmprc"+intItm);
				if (objItm != null)
				{objItm.innerHTML = "&pound;" + decVal;}
			}
			else
			{
				strColour = "MISTYROSE";
				objItm = document.getElementById("bktitm"+intItm);
				if (objItm != null)
				{objItm.style.display = "none";}
				objItm = document.getElementById("bktitmspc"+intItm);
				if (objItm != null)
				{objItm.style.display = "none";}
				
				if (decOrd == 0)
				{
					objItm = document.getElementById("divBasket");
					if (objItm != null)
					{objItm.innerHTML = "<p class=\"pBktNon\">There are no items in your basket</p>";}
					objItm = document.getElementById("aBktCfm");
					if (objItm != null)
					{objItm.style.display = "none";}
				}
			}
			objItm = null;
			
			objSum = document.getElementById("tdSumQty");
			if (objSum != null)
			{objSum.innerHTML = intQty;}
			objSum = document.getElementById("tdSumSub");
			if (objSum != null)
			{objSum.innerHTML = "&pound;" + decSub;}
			objSum = document.getElementById("tdSumPkg");
			if (objSum != null)
			{objSum.innerHTML = "&pound;" + decPkg;}
			objSum = document.getElementById("tdSumTot");
			if (objSum != null)
			{objSum.innerHTML = "&pound;" + decTot;}
			objSum = document.getElementById("tdSumVat");
			if (objSum != null)
			{objSum.innerHTML = "&pound;" + decVat;}
			objSum = document.getElementById("tdSumOrd");
			if (objSum != null)
			{objSum.innerHTML = "&pound;" + decOrd;}
			objSum = null;

			mobjBktTimerID = null;
			mintBlinkCount = 0;
			mstrBlinkColor = "";
			objSum = document.getElementById("divSide");
			if (objSum != null)
			{
				mstrBlinkColor = objSum.style.backgroundColor.toUpperCase();
			}
			mobjBktTimerID = window.setInterval("blinkBasket('" + strColour + "')", 150);
		}
		else
		{
			alert("Sorry - a system error occurred. Please try again.");
		}
	}

	catch(exception)
	{
		onErrorHandler("updateBasket: " + exception.message, "basket.js", 0);
	}
}

function blinkBasket(strColour)
{
	try
	{
		var objItm = document.getElementById("divSide");
		if (objItm != null)
		{
			if (objItm.style.backgroundColor.toUpperCase() == "WHITE")
			{objItm.style.backgroundColor = strColour;}
			else
			{objItm.style.backgroundColor = "WHITE";}
		}
		if (mintBlinkCount > 6)
		{
			window.clearInterval(mobjBktTimerID);
			mobjBktTimerID = null;
			mintBlinkCount = 0;
//alert(mstrBlinkColor);
			objItm.style.backgroundColor = mstrBlinkColor;
		}
		else
		{
			mintBlinkCount = mintBlinkCount + 1;
		}
	}

	catch(exception)
	{
		onErrorHandler("blinkUpdate: " + exception.message, "basket.js", 0);
	}
}
