var cal1 ;
var editObj;
var hiddenId;
var overlay1;

YAHOO.util.Event.addListener(window, "load", function() {
	createCalendar();
});

function setFocus(qtyid) {
	if (document.getElementById(qtyid))
		document.getElementById(qtyid).focus();
}

function submitForm(form, actionModeHidden) {
	actionModeHidden.value = "refresh";
	form.submit();
}

function returnElementById(id) {
	if (document.getElementById)
		var returnVar = document.getElementById(id);
	else if (document.all)
		var returnVar = document.all[id];
	else if (document.layers)
		var returnVar = document.layers[id];
	return returnVar;
}

function removeItems(idx) {
	var qtyField = returnElementById("QTY_" + idx);
	if (qtyField)
		qtyField.value = 0;
}

function updateQuantities() {
	var i = 0;
	do {
		var qtyField = returnElementById("QTY_" + i);
		var removeChkBox = returnElementById("REMOVE_ITEM_" + i++);
		if (removeChkBox && qtyField && removeChkBox.checked)
			qtyField.value = "0";
	} while (qtyField || removeChkBox);
}

function createCalendar() {
	cal1 = new YAHOO.widget.Calendar("cal1", "cal1Container");
	cal1.cfg.setProperty("close", true);
	cal1.cfg.setProperty("mindate", new Date());

	cal1.selectEvent.subscribe(handleSelect, cal1, true);
	cal1.render();
	overlay1 = new YAHOO.widget.Overlay("cal1Container", {
		visible :false,
		x :100,
		y :100
	});
	overlay1.render();

	cal1.hide();
}

function showCalendar(obj, id1) {
	editObj = obj;
	hiddenId = id1;
	var xy = YAHOO.util.Dom.getXY(obj);
	var date1 = obj.innerHTML.split("-");
	if (date1.length == 3) {
		cal1.select(date1[1] + "/" + date1[2] + "/" + date1[0]);
	}
	cal1.render();
	cal1.show();
	overlay1.cfg.setProperty("xy", xy);
	overlay1.cfg.setProperty("visible", true);
	overlay1.cfg.setProperty("mindate", new Date() );
	overlay1.render();
}

function showCalendar(obj, id1, mindate) {
	editObj = obj;
	hiddenId = id1;
	var xy = YAHOO.util.Dom.getXY(obj);
	var date1 = obj.innerHTML.split("-");
	if (date1.length == 3) {
		cal1.select(date1[1] + "/" + date1[2] + "/" + date1[0]);
	}
	cal1.render();
	cal1.show();
	overlay1.cfg.setProperty("xy", xy);
	overlay1.cfg.setProperty("visible", true);
	overlay1.cfg.setProperty("mindate", mindate );
	overlay1.render();
}

function handleSelect(type, args, obj) {
	var dates = args[0];
	var date = dates[0];
	var year = date[0], month = date[1], day = date[2];
	var hiddenEl = document.getElementById(hiddenId);
	var txtDate1 = year + "-" + month + "-" + day;
	var flag = hiddenEl.value == txtDate1 ? false : true;

	editObj.innerHTML = txtDate1;
	hiddenEl.value = txtDate1;
	obj.hide();
	if (flag)
		setRequestedDeliveryDate(txtDate1);
}

function setRequestedDeliveryDate(textdate) {
	for (i = 0; i < itemsCount; i++) {
		var el = document.getElementById("basketItems[" + i + "].comment");

		if (el && el.value == "")
			el.value = textdate;
	}
	document.VIEWCART.mode.value = "updateBasket";
	document.VIEWCART.submit();
}

