//
// Shopping cart functions
//

	var intCartRowIndex = 0;
	var htmlRegExp = /(<([^>]+)>)/ig;
	var showCartInfo = false;
	var showSCAlertInfo = false;
	
	// adds item to the cart
	function AddCartItem(strID, strName, strPrice, intIsFromList) {	
		// provera da li je artikal vec u korpi
		if (!CheckProduct(strID, intIsFromList)) {
			
			if(showCartInfo)
			{
			    // blink blink
			    BlinkBlink();
            }
            			
			// osnovni elementi
			var tblCart = document.getElementById("cartTable").getElementsByTagName("tbody")[0];
			
			var trNewRow = document.createElement("tr");
			intCartRowIndex++;
			trNewRow.id = "productRow" + intCartRowIndex;
			var tdImage = document.createElement("td");
			var tdName  = document.createElement("td");
			var tdPrice = document.createElement("td");
			var tdDel   = document.createElement("td");
					
			tdImage.innerHTML = "<img src=\"/images/products/" + hex_md5(decodeBase64(strID)) + "_m.jpg\" border=\"0\" onError=\"this.src='/Images/Common/Products/no-image.gif';\" />";
    		tdName.innerHTML = "<input type=\"hidden\" name=\"productID" + strID + "\" id=\"productID" + strID + "\" value=\"" + strID + "\" /><span>" + strName + "</span>";
			tdName.style.textAlign = 'left';
			// td za cenu
			tdPrice.innerHTML = "<input type=\"text\" value=\"" + strPrice + "\" class=\"inputBlank\" id=\"productPrice" + intCartRowIndex + "\" name=\"productPrice" + intCartRowIndex + "\" onfocus=\"blur()\" style=\"text-align: right\">";
			//tdPrice.appendChild(document.createTextNode(strPrice))
					
			// td za brisanje
			tdDel.innerHTML = "<a href=\"javascript: RemoveCartItem('" + intCartRowIndex + "')\"><img src=\"/Images/Header/ico_can.gif\" border=\"0\" alt=\"" + resourceDeleteFromCart + "\" /></a>";
			tdDel.style.textAlign = 'center';
			
			// apendujem sve u red
			trNewRow.appendChild(tdImage);
			trNewRow.appendChild(tdName);
			trNewRow.appendChild(tdPrice);
			trNewRow.appendChild(tdDel);

			// apendujem sve u tabelu
			tblCart.appendChild(trNewRow);	
			
			// podesim brojac
			var divInCart = document.getElementById("divInCart");
			var intInCart = divInCart.innerHTML.replace(htmlRegExp, '') * 1;
			intInCart++;
			divInCart.innerHTML = '<b>' + intInCart + '</b>';
			
			// podesim sumu
			var txtUkupno = document.getElementById("totalAmmount");
			var intUkupno = Number(txtUkupno.value.replace(',','.'));
			intUkupno += Number(strPrice.replace(',','.'));
			txtUkupno.value = FixMath(intUkupno).replace('.',',');
			
			// za kraj setujem cookie
			DoTheCookies();
		}
	}

	// do the cookies
	function DoTheCookies() {
		var tblCart = document.getElementById("cartTable").getElementsByTagName("tbody")[0];
		var strCart = "";
		for (var i = 1; i < tblCart.rows.length; i ++) {
			var collTds = tblCart.rows[i].getElementsByTagName("td");
			strCart += collTds[1].getElementsByTagName("input")[0].value + "~" + collTds[1].getElementsByTagName("span")[0].innerHTML + "~" + collTds[2].getElementsByTagName("input")[0].value + "|";
		}
		SaveCookie(strCart)
	}

	// writes the cookie
	function SaveCookie(strValue) {
		var dtToday = new Date();
		var dtExpiry = new Date(dtToday.getTime() + 7 * 24 * 60 * 60 * 1000);
		strExpiry = GetCookieDate(dtExpiry);
		setCookie('.CTSHOP', strValue, strExpiry, '/','','');
	}

	// deletes one item from the cart
	function RemoveCartItem(strRowID) {
		if(confirm(resourcedWishListConfirm))
		{
		    // podesim sumu
		    var txtUkupno = document.getElementById("totalAmmount");
		    var txtRow = document.getElementById("productPrice" + strRowID);
		    var intRow = Number(txtRow.value.replace(',','.'));
		    var intUkupno = Number(txtUkupno.value.replace(',','.'));
		    intUkupno = intUkupno - intRow;
		    if (intUkupno < 0) 
		    { 
		        intUkupno = 0; 
		    }
		    txtUkupno.value = FixMath(intUkupno).replace('.',',');
    		
		    // obrisem red
		    var tblCart = document.getElementById("cartTable").getElementsByTagName("tbody")[0];
		    var trRow = document.getElementById("productRow" + strRowID);
		    tblCart.removeChild(trRow);
    		
		    // podesim brojac
		    var divInCart = document.getElementById("divInCart");
		    var intInCart = divInCart.innerHTML.replace(htmlRegExp, '') * 1;
		    intInCart--;
		    intCartRowIndex--;
		    divInCart.innerHTML = "<b>" + intInCart + "</b>";
    		
		    // za kraj sredim cookie
		    DoTheCookies()
		}
	}

	// deletes all products from the cart
	function RemoveCartItems() {
	    try {
	        var tblCart = document.getElementById("cartTable").getElementsByTagName("tbody")[0];
	        var intColNums = tblCart.rows.length;
	        for (var i = 1; i < intColNums; i++) {
	            tblCart.removeChild(tblCart.rows[1]);
	        }
	        document.getElementById("divInCart").innerText = "0";
	        document.getElementById("totalAmmount").value = '0';
	        intCartRowIndex = 0;
	    } catch (e) {}
	}

	// checks the cookies and repopulate the cart
	function CheckTheCookies() 
	{
	    if (getCookie('.CTSHOP') != null) {
		    var strCookie = getCookie('.CTSHOP');
		    var aCart = strCookie.split("|");
		    for (var i = 0; i < aCart.length - 1; i++) {
			    var aRow = aCart[i].split("~");
			    try
			    {
			        AddCartItem(aRow[0], aRow[1], aRow[2],aRow[3],0);
			    }catch(e){}
		    }
	    }
	}

	// check if product is already placed to shopping carts
	function CheckProduct(strProdID, intIsFromList) {
		if (getCookie('.CTSHOP') != null) {
			var strCookie = getCookie('.CTSHOP');
			if (strCookie.indexOf(strProdID) != -1 && intIsFromList == 1) {
			    try
			    {
			        displayShoppingCartAlert(true);
			    }catch(e){}
				return true;
			} else {
			    try
			    {
			        displayShoppingCartAlert(false);
			    }catch(e){}
				return false;
			}
		} else {
		    displayShoppingCartAlert(false);
			return false;
		}
	}

	// checks if shopping cart is empty and starts order prepare page
	function CheckEmptyCart(url) {
		if (intCartRowIndex != 0) 
		{
			//ToggleDashboard();
			location = url;
		} 
		else 
		{
			alert(resourceCartEmpty);
		}
	}
    // checks if user not logged in but wants to order 
	function ForceVisitorToLogin(url) {
		if (intCartRowIndex != 0) 
		{
			location = url;
		} 
		else 
		{
			alert(resourceCartEmpty);
		}
	}

	// blinks number of products in shopping cart field
	var blink = 0;
	var timerID = 0;
	function BlinkBlink() {
		if (blink % 2 == 0) { 
			document.getElementById("divBlink").style.display = 'inline';
		} else {
			document.getElementById("divBlink").style.display = 'none';
		}
		
		if (blink < 3 ) {
			blink++;
			setTimeout("BlinkBlink()",300);
		} else {
			blink = 0;
		}
	}
	
	// displays Alert and hide alert box after timeout
	function displayShoppingCartAlert(isAlreadyThere) {
	    if(showSCAlertInfo)
	    {
	        if(isAlreadyThere)
	        {
	            document.getElementById('shoppingCartAlertInfo').innerHTML = resourceAlreadyThere;
	            time = 7000;
	        }
	        else
	        {
	            document.getElementById('shoppingCartAlertInfo').innerHTML = resourceItemAdded;
	            time = 5000;
	        }
	        document.getElementById('shoppingCartAlertInfo').style.display = 'block';
	        setTimeout("ToggleMenu('shoppingCartAlertInfo')",time);
	    }
	}