/* Copyright Commcam Limited 2008. All rights reserved. (See licence/licence.txt) */

function addToBasket(strCode, strAreaCode)
{
	startLoading("_addToBasket('" + strCode + "', '" + strAreaCode + "')");
}

function displayQuickBasket()
{
	startLoading("_displayQuickBasket()");
}

function _displayQuickBasket()
{
	var objQuickBasket = document.getElementById("quickBasketInner");
	var objAjax = new CAjax();
	
	if (objQuickBasket)
	{
		if (objAjax.open("dynamic/quickBasket.php", true))
		{
			objQuickBasket.innerHTML = objAjax.getResponse();
		}
	}
	
	endLoading();
}

function toggleNoteRow(strId)
{
	var objRow = document.getElementById(strId);
	
	if (objRow.getAttribute("shown") == 'true')
	{
		objRow.style.display = "none";
		objRow.setAttribute("shown", "false");
	}
	else
	{
		objRow.style.display = "block";
		objRow.setAttribute("shown", "true");
	}
}

function quickAdd(strCode)
{
		startLoading("_quickAdd('" + strCode + "')");
}

function quickBasketAdd(strCode, strQuantity)
{
    startLoading("_quickBasketAdd('"+strCode+"','"+strQuantity+"')");
}

function _quickBasketAdd(strCode, strQuantity)
{
    var objForm = document.getElementById('quickPickForm');
    var strCode = document.getElementById('productPickId').value;
    var strQuantity = document.getElementById('qtyId').value;

		strQuantity = parseInt(strQuantity);
		
		if (isNaN(strQuantity))
		{
			alert("Please enter a valid quantity");
		}
		else
		{
			var objAjax = new CAjax();
			if(objAjax.open("dynamic/basketControl.php?mode=ADD&code="+strCode+"&quantity="+Math.floor(strQuantity)+"&variant=" + "&ajax=true",true))
			{
			//    var objDiv = g_objTabs.addTab("basket", "Basket", true, true);
			//    objDiv.innerHTML = objAjax.getResponse();
			//    var objDiv = document.getElementById('quickPicNote');
			//    objDiv.innerHTML = 'Item(s) added to your basket.';
	    
				if (objAjax.getResponse() == "false")
				{
					alert("The product you have entered does not exist");
				}
			}
    }
    
    endLoading();
}

function _quickAdd(strCode)
{
	var objAjax = new CAjax();
	
	if (objAjax.open("dynamic/basketControl.php?mode=ADD&code=" + strCode + "&quantity=1&variant=", true))
	{
		var objDiv = g_objTabs.addTab("basket", "Basket", true, true);
		
		objDiv.innerHTML = objAjax.getResponse();
	}
	
	_displayQuickBasket();
}

function _addToBasket(strCode, strAreaCode)
{
	var objQuantity = document.getElementById("quantity_" + strAreaCode + "_" + strCode);
	var strVariant = getFormValue("variant_" + strAreaCode + "_" + strCode);

	if (parseInt(objQuantity.value) > 0)
	{
		var objAjax = new CAjax();
		
		if (objAjax.open("dynamic/basketControl.php?mode=ADD&code=" + strCode + "&quantity=" + Math.floor(objQuantity.value) + "&variant=" + strVariant, true))
		{
			//var objDiv = g_objTabs.addTab("basket", "Basket", true, true);
			
			//objDiv.innerHTML = objAjax.getResponse();
		    var objDiv = document.getElementById("added_" + strAreaCode + "_" + strCode);
		    objDiv.innerHTML = "Added to Basket [<font color='red' style='font-weight: bold;'>X</font>]";
		    objDiv.style.display = "block";	
		}
		
		_displayQuickBasket();
	}
	else
	{
		alert("Please provide a quantity");
		endLoading();
	}


}

function closeDiv(strId) {
    var objDiv = document.getElementById(strId);
    objDiv.style.display = "none";
}


function showPrompt(strPromptLocator, strDivId)
{
      var objPromptLocator = document.getElementById(strPromptLocator);
      var objDiv = document.getElementById(strDivId);

      if (!objDiv)
      {
            objDiv = document.createElement("div");
            objDiv.id = strDivId;
            objDiv.innerHTML = "Added to basket";
            document.body.appendChild(objDiv);
      }
      
      setOpacity(strDivId, 100);
      objDiv.style.display = "block";
      
      iDivWidth = findRight(objDiv) - findLeft(objDiv);
      iDivHeight = findBottom(objDiv) - findTop(objDiv);
      
      objDiv.style.top = (findTop(objPromptLocator) - iDivHeight);
      objDiv.style.left = (findRight(objPromptLocator) - findLeft(objPromptLocator) - iDivWidth) / 2 + findLeft(objPromptLocator);
      //alert(findRight(objPromptLocator) - findLeft(objPromptLocator) - iDivWidth) / 2 + findLeft(objPromptLocator);
      objDiv.setAttribute("opacity", 300);

      setTimeout("fadeFrom('" + strDivId + "')", 4000);
}

function emptyBasket()
{
	if (confirm("Are you sure you want to empty your basket?"))
	{
		startLoading("_emptyBasket()");
	}
}

function _emptyBasket()
{
	var objAjax = new CAjax();
	
	if (objAjax.open("dynamic/basketControl.php?mode=EMPTY", true))
	{
		var objDiv = g_objTabs.addTab("basket", "Basket", true, true);
		
		objDiv.innerHTML = objAjax.getResponse();
	}
	
	_displayQuickBasket();
}

function removeFromBasket(strCode)
{
	startLoading("_removeFromBasket('" + strCode + "')");
}

function _removeFromBasket(strCode)
{
	var objAjax = new CAjax();
	
	if (objAjax.open("dynamic/basketControl.php?mode=REMOVE&code=" + strCode, true))
	{
		var objDiv = g_objTabs.addTab("basket", "Basket", true, true);
		
		objDiv.innerHTML = objAjax.getResponse();
	}
	
	_displayQuickBasket();
}

function showBasket()
{
	startLoading("_showBasket()");
}

function _showBasket()
{
	var objContent = document.getElementById("innerContent");
	var objAjax = new CAjax();
	showMenu("PRODUCTS");
	
	if (objContent)
	{
	
		if (objAjax.open("dynamic/basketControl.php?mode=VIEW", true))
		{
			var objDiv = g_objTabs.addTab("basket", "Basket", true, true);
			objDiv.innerHTML = objAjax.getResponse();
		}	
	}	
	
	_displayQuickBasket();
}

function updateBasket()
{
	startLoading("_updateBasket('UPDATE', '', 'B')");
}

function showFavouriteName()
{
	var objDiv = document.getElementById("saveFavourite");
	objDiv.style.display = "block";
}

function saveFavourite()
{
	var objForm = document.getElementById("favouriteNameForm");
	var strName = getFormValue("favouriteName");
	
	if (validateForm(objForm))
	{
		startLoading("_updateBasket('SAVEFAV', '" + strName  + "')");
	}
}

function addFavouritesToBasket()
{
	if (confirm("Are you sure you want to add your favourites to you basket?"))
	{
		startLoading("_updateBasket('ADDFAVOURITES', '', 'F')");
	}
}

function replaceBasket()
{
	//if (confirm("Are you sure you want to replace your basket with your favourites?"))
	{
		startLoading("_updateBasket('REPLACE', '', 'F')");
	}
}

function _updateBasket(strMode, strName, strAreaCode)
{
	var objBasketDoc = xml_createXmlDom();
	var objBasketNode, objProductNode;
	var objInputs, objAjax;
	
	objBasketDoc.loadXML("<basket/>");
	
	objBasketNode = objBasketDoc.selectSingleNode("/basket");
	
	objInputs = document.getElementsByTagName("input");
	
	for (var i = 0; i < objInputs.length; i++)
	{
		strInputId = objInputs[i].getAttribute("id");
	
		if (strInputId && strInputId.substr(0,11) == "quantity_" + strAreaCode + "_")
		{
			strProductCode = strInputId.substr(11);
			
			objProductNode = xml_createNode(objBasketNode, "product");
			xml_createNode(objProductNode, "productCode", strProductCode);
			if(parseInt(objInputs[i].value)>0)
			{
			    objProductNode.setAttribute("quantity", objInputs[i].value);
			}
			else
			{
			    alert("Please provide a quantity");
			    endLoading();
			}
			    
			
			objProductNode.setAttribute("variant", getFormValue("variant_" + strAreaCode + "_" + strProductCode));
			objProductNode.setAttribute("note", getFormValue("note_" + strAreaCode + "_" + strProductCode));
		}
	}
	
	objAjax = new CAjax();
	
	if (objAjax.open("dynamic/basketControl.php?mode=" + strMode + "&name=" + strName, false))
	{
		objAjax.send(objBasketDoc.xml);
		
		var objDiv = g_objTabs.addTab("basket", "Basket", true, true);
		objDiv.innerHTML = objAjax.getResponse();	
	}
	
	_displayQuickBasket();
}

function backToBasket()
{
	var objDiv = document.getElementById("innerContent");
	objDiv.innerHTML = "";
	showBasket();
}

function orderSample(strProductCode)
{
	startLoading("_orderSample('" + strProductCode + "')");
}

function _orderSample(strProductCode)
{
	var objAjax = new CAjax();
	
	if (objAjax.open("dynamic/basketControl.php?mode=ADDSAMPLE&code=" + strProductCode, true))
	{
		var objDiv = g_objTabs.addTab("basket", "Basket", true, true);
		objDiv.innerHTML = objAjax.getResponse();
	}
	
	_displayQuickBasket();
}

function orderSampleFromDropDown()
{
    // Find code

    var strProductCode = document.selectSampleForm.sample.options[document.selectSampleForm.sample.selectedIndex].value;

alert(strProductCode);

	startLoading("_orderSample('" + strProductCode + "')");
}


