//create global variables
var bookmarkedProduct = new cookiejar('ds_bmPrdct');
bookmarkedProduct.path = "/"; 
bookmarkedProduct.setExpiration(0, 2, 0, 0, 0);//2 days
//for cart
var myCart = new cookiejar('ds_cart');
myCart.path = "/"; 
myCart.setExpiration(0, 0, 8*60, 0, 0);//8 hours

function linkClick(actionName, curpage, frmName) {
	$('curpage').value = curpage;
	var frmProductList = $(frmName);
	//frmProductList.action = actionName;
	frmProductList.submit(); 
}
function bookmarkProduct(idProduct, obj) {
	alert("Sản phẩm đã được đánh dấu thành công!\nBạn có thể xem lại bằng cách click chọn \"Sản phẩm đã lưu\"");
	var oldVals = bookmarkedProduct.getCookie("ds_bmPrdct") ? bookmarkedProduct.getCookie("ds_bmPrdct") : "";
	bookmarkedProduct.setCookie("ds_bmPrdct", oldVals + "," + idProduct);
	bookmarkedProduct.write();
	//change to bookmark image
	obj.innerHTML = "<img alt=\"\" src=\"images/systemImg/bookmarked.gif\" /> Sản phẩm đã được lưu";
	obj.title = "Sản phẩm đã được lưu";
	obj.style.cursor = "default";
	obj.onclick = function() {
		return;
	};

	//update amount of products are bookmarked
	var savedProductsLink = $("savedProductsLink");
	savedProductsLink.style.fontWeight = "bold";
	if(oldVals == "") {
		savedProductsLink.innerHTML = "Sản phẩm đã lưu (1)";
	}else {
		savedProductsLink.innerHTML = "Sản phẩm đã lưu (" + oldVals.split(",").length + ")";
	}
}
function isBookmarked(idProduct) {
	var oldVals = bookmarkedProduct.getCookie("ds_bmPrdct") ? bookmarkedProduct.getCookie("ds_bmPrdct") : "";
	if(oldVals == "") return false;
	
	var oldValsArr = oldVals.split(",");
	for(var i=0; i<oldValsArr.length; i++) {
		if(oldValsArr[i] == idProduct) {
			return true;
		}
	}
	return false;
}
function isInCart(idProduct) {
	var oldVals = myCart.getCookie("prdcts") ? myCart.getCookie("prdcts") : "";
	if(oldVals == "") return false;
	
	var oldValsArr = oldVals.split(",");
	for(var i=0; i<oldValsArr.length; i++) {
		if(oldValsArr[i] == idProduct) {
			return true;
		}
	}
	return false;
}
function addToCart(idProduct, price, shippingPrice, obj, refreshPage) {
	var oldVals = myCart.getCookie("prdcts") ? myCart.getCookie("prdcts") : "";
	var itemNumber = parseInt(myCart.getCookie("in") ? myCart.getCookie("in") : 0);
	var total = parseInt(myCart.getCookie("total") ? myCart.getCookie("total") : 0);
	var qtyList = myCart.getCookie("qtyList") ? myCart.getCookie("qtyList") : "";
	var shippingPriceList = myCart.getCookie("shipPList") ? myCart.getCookie("shipPList") : "";
	
	//update values
	oldVals += "," + idProduct;
	itemNumber++;
	total += parseInt(price);
	qtyList += "1,";
	shippingPriceList += shippingPrice + ",";
	
	//set cookie again
	myCart.setCookie("prdcts", oldVals);
	myCart.setCookie("in", itemNumber);
	myCart.setCookie("total", total);
	myCart.setCookie("qtyList", qtyList);
	myCart.setCookie("shipPList", shippingPriceList);
	myCart.write();
	
	//update amount of products are bookmarked
	$("cart_IN").innerHTML = "(" + itemNumber + ")";
	$("cart_total").innerHTML = formatCurrency((total + getShippingPrice()).toString());
	if(obj.innerHTML.trim() != "") {
		obj.innerHTML = "<img alt=\"\" src=\"images/systemImg/tick.gif\" /> Đã đưa vào giỏ hàng";
		obj.title = "Đã đưa vào giỏ hàng";
		obj.style.cursor = "default";
		obj.onclick = function() {
			return;
		}
	}
	//refresh page?
	if(refreshPage) {
		viewCart();
	}else {
		alert("Sản phẩm đã được đưa vào giỏ hàng thành công.\nBạn có thể xem lại sản phẩm khi click chọn liên kết [Xem giỏ hàng].");
	}
}
//remove product from cart, and update the values in cookie
function removeFromCart(productId, productPrice) {
	//get current values from cart
	var oldVals = myCart.getCookie("prdcts") ? myCart.getCookie("prdcts") : "";
	var itemNumber = parseInt(myCart.getCookie("in") ? myCart.getCookie("in") : 0);
	var total = parseInt(myCart.getCookie("total") ? myCart.getCookie("total") : 0);
	var qtyList = myCart.getCookie("qtyList") ? myCart.getCookie("qtyList") : "";
	//remove the comma at first of oldVals, and the comma at the end of qtyList
	var oldValsArr = oldVals.substring(1).split(",");
	var qtyListArr = qtyList.substring(0, qtyList.length - 1).split(",");
	//update new values for cart
	var newIdList = "";
	var newQtyList = "";
	var newItemNumber = itemNumber - $("cartQty" + productId).value;
	var newTotal = total - ($("cartQty" + productId).value * productPrice);
	for(var i=0; i<oldValsArr.length; i++) {
		if(oldValsArr[i] != productId) {
			newIdList += "," + oldValsArr[i];
			newQtyList += qtyListArr[i] + ",";
		}
	}
	//update cookies
	myCart.setCookie("prdcts", newIdList);
	myCart.setCookie("in", newItemNumber);
	myCart.setCookie("total", newTotal);
	myCart.setCookie("qtyList", newQtyList);
	myCart.write();
	//refresh page
	viewCart();
}
function viewCart() {
	//get current values from cart
	var productIdList = myCart.getCookie("prdcts") ? myCart.getCookie("prdcts") : "";
	var generalFrm = $("generalFrm");
	var productIdListTxt = document.createElement("input");
	productIdListTxt.name = "productIdList";
	productIdListTxt.type = "hidden";
	productIdListTxt.value = productIdList;
	generalFrm.appendChild(productIdListTxt);
	//submit form for showing cart
	generalFrm.action = "./index.php?action=3";
	generalFrm.submit();
}
function viewSavedProduct() {
	//get current values from cart
	var productIdList = bookmarkedProduct.getCookie("ds_bmPrdct") ? bookmarkedProduct.getCookie("ds_bmPrdct") : "";
	var generalFrm = $("generalFrm");
	var productIdListTxt = document.createElement("input");
	productIdListTxt.name = "productIdList";
	productIdListTxt.type = "hidden";
	productIdListTxt.value = productIdList;
	generalFrm.appendChild(productIdListTxt);
	//submit form for showing saved products
	generalFrm.action = "./index.php?action=2";
	generalFrm.submit();
}
function clearMTPlease() {
	var expanded = $$("div.MagicThumb-expanded");
	for(var i=0; i<expanded.length; i++) {
		var subDivs = expanded[i].getElementsByTagName("div")[0];
		var plsDiv = subDivs.getElementsByTagName("div")[1];
		plsDiv.innerHTML = "";
	}
}
function getShippingPrice() {
	var itemNumber = parseInt(myCart.getCookie("in") ? myCart.getCookie("in") : 0);
	var qtyList = myCart.getCookie("qtyList") ? myCart.getCookie("qtyList") : "";
	var shippingPriceList = myCart.getCookie("shipPList") ? myCart.getCookie("shipPList") : "";
	var qtyListArr = qtyList.substring(0, qtyList.length - 1).split(",");
	var shippingPriceListArr = shippingPriceList.substring(0, shippingPriceList.length - 1).split(",");
	var shippingPrice = 0;
	
	//free ship if item numbers is great than 20 items
	if(itemNumber > 20) {
		shippingPrice = 0;
	}
	
	//shipping price = 50K for item numbers is between 11 and 20
	if(itemNumber >= 11 && itemNumber <=20) {
		shippingPrice = 50000;
	}
	
	//discount 10K for each item
	if(itemNumber > 5 && itemNumber <=10) {
		shippingPrice = 0;
		for(var i=0; i<qtyListArr.length; i++) {
			shippingPrice += qtyListArr[i] * (shippingPriceListArr[i] - 10000);
		}
	}
	
	//discount 5K for each item
	if(itemNumber >= 3 && itemNumber <=5) {
		shippingPrice = 0;
		for(var i=0; i<qtyListArr.length; i++) {
			shippingPrice += qtyListArr[i] * (shippingPriceListArr[i] - 5000);
		}
	}
	
	//normal case: 0 < item < 3
	if(itemNumber > 0 && itemNumber < 3) {
		shippingPrice = 0;
		for(var i=0; i<qtyListArr.length; i++) {
			shippingPrice += qtyListArr[i] * shippingPriceListArr[i];
		}
	}

	return shippingPrice;
}
function focusOnSearchA() {
	$("searchA").focus();
}
function doSearchProduct() {
	$("frmSearch").submit();
}
function openCommentBox() {
	$("cartComment").style.display = "block";
}

