// JavaScript Document

function ResetOrderFrm()
{
	$('txtAmount').value = "";
	$('txtDeliveryDate').value = "";
	$('txtDeliveryDate').value = "";
}

function resetErrors()
{
	$('errorAmount').innerHTML = "";
	$('errorDeliveryDate').innerHTML = "";
	$('errorDeliveryTime').innerHTML = "";
	$('ShowMsg').innerHTML = "";
}

/*function InsertOrder_old()
{
	var ResponseURL = "ajaxserver/ResponseOrder.php";
	var AjaxParam = Form.serialize('frmPopUpOrder');
	
	$('errorAmount').innerHTML = "";
	$('errorDeliveryDate').innerHTML = "";
	$('errorDeliveryTime').innerHTML = "";
	$('ShowMsg').innerHTML = "";
	
	var day = $('ddlst_day').value;
	var month = $('ddlst_month').value;
	var year = $('ddlst_year').value;
	var flag = true;
	
	if( isWhitespace($('txtAmount').value, true) )
	{
		$('txtAmount').value = "";
		$('txtAmount').focus();
		$('errorAmount').innerHTML = "Please enter quantity of menu !";
		flag = false;
	}
	else
		if( !isInteger($('txtAmount').value) )
		{
			$('txtAmount').focus();
			$('errorAmount').innerHTML = "Please enter a positive integer !";
			flag = false;
		}
	if( !day )
	{
		$('ddlst_day').focus();
		$('errorDeliveryDate').innerHTML = "Select day !";
		flag = false;
	}
	if( !month )
	{
		$('ddlst_month').focus();
		$('errorDeliveryDate').innerHTML += " Select month !";
		flag = false;
	}
	if( !year )
	{
		$('ddlst_year').focus();
		$('errorDeliveryDate').innerHTML += " Select year !";
		flag = false;
	}
	if( day && month && year )
	{
		if( !checkValidDate(day, month, year) )
		{
			$('ddlst_day').focus();
			$('errorDeliveryDate').innerHTML = "Invalid date selection !";
			flag = false;
		}
	}
	if( isWhitespace($('ddlst_Hour').value, true) )
	{
		$('errorDeliveryTime').innerHTML = "Select hour !";
		$('ddlst_Hour').focus();
		flag = false;
	}
	if( isWhitespace($('ddlst_Minute').value, true) )
	{
		$('errorDeliveryTime').innerHTML += " Select minute !";
		$('ddlst_Minute').focus();
		flag = false;
	}
	
	
	if( flag )
	{
		new Ajax.Request(ResponseURL,
									 {
										method : 'post',
										parameters : AjaxParam,
										onSuccess : function(transport)
										{
											var res = transport.responseText;
											//alert(transport.responseText);
											if( !parseInt(res) )
											{
												$('ShowMsg').innerHTML = "Unable to place order !";
											}
											else
											{
												resetForm('frmOrder');
												$('ShowMsg').innerHTML = "Your order has been placed successfully !";
												setTimeout("$('ShowMsg').innerHTML = '';", 30000);
												window.close();
											}
										},
										onFailure : function()
										{
											$('ShowMsg').innerHTML = "Server Error !!";
										}
									 }
						);
	}
	
}*/

function InsertOrder(zeroError, insertionError, putBasketError)
{
	var ResponseURL = "ajaxserver/ResponseOrder.php";
	var AjaxParam = Form.serialize('frmPopUpOrder');
	
	$('ShowMsg').innerHTML = "";
	
	var flag = true;
	
	if( $('txtQuantity').value.blank() || !parseInt($('txtQuantity').value) )
	{
		$('txtQuantity').focus();
		$('ShowMsg').innerHTML = zeroError + " !";
		flag = false;
	}
	
	if( flag )
	{
		new Ajax.Request(ResponseURL,
									 {
										method : 'post',
										parameters : AjaxParam,
										onSuccess : function(transport)
										{
											var res = transport.responseText;
											//alert(res);
											if( !parseInt(res) )
											{
												$('ShowMsg').innerHTML = "<span style='color:#ff0000'>" + insertionError + " !</span>";
											}
											else
											{
												//resetForm('frmPopUpOrder');
												updateShoppingCart();
												$('ShowMsg').innerHTML = putBasketError + " !";
												setTimeout("$('ShowMsg').innerHTML = '';window.close();", 5000);
												//setTimeout("$('ShowMsg').innerHTML = '';window.close();window.opener.location.reload();", 5000);
												//window.opener.location.reload();
												//window.location.href = 'addBasket.php';
												//window.close();
											}
										},
										onFailure : function()
										{
											$('ShowMsg').innerHTML = "Server Error !!";
										}
									 }
						);
	}
	
}

function updateShoppingCart()
{
	//alert('ananya');
	var ResponseURL = "ajaxserver/responseShoppingCart.php";
	if(ResponseURL)
	{
		new Ajax.Request(ResponseURL,
									 {
										method : 'post',
										onSuccess : function( transport )
													{
														var res = transport.responseText;
														//alert(res);
														opener.document.getElementById('shoppingCart').innerHTML = res;
													},
										onFailure : function()
													{
														opener.document.getElementById('shoppingCart').innerHTML = " Shopping Cart";
													}
									 }
						);
	}
	
}

function redirectParent(address,queryString)
{
	//alert(address);
	var param = "";
	
	if( queryString && address)
	{
		param = "?" + queryString + "&address="+ address;
	}
	else
	{
		param = "?address="+ address;
	}
	window.close('addBasket.php');
	window.opener.location.href = 'placeOrder.php' + param;
}

/////////////////////////////////////////////// Remove order function /////////////////////////////////////////////////////////////

function remove_orders(orderID)
{
	var AjaxURL = "ajaxserver/responseRemoveOrder.php";
	
	new Ajax.Request(AjaxURL, {
								method : "post",
								parameters : { orderID : orderID },
								onSuccess : function(transport)
											{
												var response = transport.responseText;
												//alert(response);
												if( parseInt(response) )
												{
													window.location.href = "order_details.php";
												}
											},
								onFailure : function()
											{
												alert("Server Error !!\nPlease check your Network Connection !");
											}
							}
					);
	
}

//////////////////////////////////////////////////////////// Ends //////////////////////////////////////////////////////////////////

///////////////////////////////////////////// Recalculate order function /////////////////////////////////////////////////////////////

function recalculate_orders(formID, updaterID, orderID, pagename)
{
	var AjaxURL = "ajaxserver/responseRecalculateOrder.php";
	var params = Form.serialize(formID);
	var newParams = params + "&orderID=" + orderID + "&pagename=" + pagename;
	
	new Ajax.Request(AjaxURL, {
								method : "post",
								parameters : newParams,
								onSuccess : function(transport)
											{
												var response = transport.responseText;
												//alert(response);
												$(updaterID).innerHTML = response;
											},
								onFailure : function()
											{
												alert("Server Error !!\nPlease check your Network Connection !");
											}
							}
					);
	
}

//////////////////////////////////////////////////////////// Ends //////////////////////////////////////////////////////////////////

///////////////////////////////////////////// Update price function /////////////////////////////////////////////////////////////

function updatePrice(formID, updaterID)
{
	//alert("Hi");
	var AjaxURL = "ajaxserver/responseUpdatePrice.php";
	//alert(AjaxURL);
	var TextBoxAmount = $('txtQuantity').value;
	//alert(TextBoxAmount);
	//showDiv('errorInteger');
	//$('errorInteger').innerHTML = "";
	//hideDiv('errorInteger');
	var Amount = parseInt(TextBoxAmount);
	//alert(Amount);
	if(TextBoxAmount == Amount)
	{
		//alert("in if");
		var params = Form.serialize(formID);
		
		//params = params + '&quantity=' + quantity;
		
		new Ajax.Request(AjaxURL, {
									method : "post",
									parameters : params,
									onSuccess : function(transport)
												{
													var response = transport.responseText;
													//alert(response);
													if(response)
													{
														$('payablePrice').show();
														//$(updaterID).innerHTML = "";
														$(updaterID).innerHTML = response;
													}
												},
									onFailure : function()
												{
													alert("Server Error !!\nPlease check your Network Connection !");
												}
								}
						);
	}
	else
	{
		//$('errorInteger').show();
		//$('errorInteger').innerHTML = "Please enter a integer value !";
		alert("Please enter a integer value !");
	}
	//$('errorInteger').innerHTML = "";
}

//////////////////////////////////////////////////////////// Ends //////////////////////////////////////////////////////////////////

///////////////////////////////////////////// Recalculate with coupon function /////////////////////////////////////////////////////////////

function recalculateCoupon(updaterID, amount, coupon, couponError)
{
	var AjaxURL = "ajaxserver/responseRecalculateCoupon.php";
	
	new Ajax.Request(AjaxURL, {
								method : "post",
								parameters : {
												amount : amount,
												coupon : coupon
											 },
								onSuccess : function(transport)
											{
												var response = transport.responseText;
												var split_res = response.split('|');
												//alert(response);
												if( !parseInt(split_res[0]) )
												{
													$(updaterID).innerHTML = couponError + " !";
												}
												else
												{
													$(updaterID).innerHTML = split_res[1];
												}
											},
								onFailure : function()
											{
												alert("Server Error !!\nPlease check your Network Connection !");
											}
							}
					);
	
}

//////////////////////////////////////////////////////////// Ends //////////////////////////////////////////////////////////////////

///////////////////////////////////////////// Code verification function /////////////////////////////////////////////////////////////

function veify_code(invalidVarificationCodeMsg)
{
	var AjaxURL = "ajaxserver/responseCheckVerificationCode.php";
	var code = document.frmOrderDetails_2.txtVarification.value;
	$('errorVarification1').innerHTML = "";
	//alert(code);
	new Ajax.Request(AjaxURL, {
								method : "post",
								parameters : {
												code : code
											 },
								onSuccess : function(transport)
											{
												var response = transport.responseText;
												//alert(response);
												if(!parseInt(response) )
												{
													$('varificationCode1').show();
													$('errorVarification1').innerHTML = invalidVarificationCodeMsg + " !";
													//return false;
												}
												else
												{
													$('frmOrderDetails_2').submit();
												}
											},
								onFailure : function()
											{
												alert("Server Error !!\nPlease check your Network Connection !");
											}
							}
					);
	
}

//////////////////////////////////////////////////////////// Ends //////////////////////////////////////////////////////////////////
function VerifyOrder(emptyMobileNoMsg, validMobileNoMsg, unableToGenerateCodeMsg, successVarificationCodeMsg)
{
	var ResponseURL = "ajaxserver/ResponseVerification.php";
	var MobileNo = $('txtMobileNo').value;
	//alert(MobileNo);
	$('errorVarification').innerHTML = "";
	
	var flag = true;
	
	if( isWhitespace($('txtMobileNo').value, true) )
	{
		$('txtMobileNo').value = "";
		$('txtMobileNo').focus();
		$('errorVarification').innerHTML = emptyMobileNoMsg + " !";
		flag = false;
	}
	
	if( flag )
	{
		new Ajax.Request(ResponseURL,
									 {
										method : 'post',
										parameters : 
										{
											MobileNo:MobileNo
										},
										onSuccess : function(transport)
										{
											var res = transport.responseText;
											
											if( !parseInt(res) )
											{
												unableToGenerateCodeMsg.replace("~","'");
												$('errorVarification').innerHTML = unableToGenerateCodeMsg.replace("~","'") + " !";
											}
											else
												if((parseInt(res)) == 1)
												{
													$('txtMobileNo').value = "";
													$('errorVarification').innerHTML = successVarificationCodeMsg + " !";
													$('mobileNo').hide();
													setTimeout("$('errorVarification').innerHTML = ''; hideDiv('varification'); showDiv('varificationCode'); showDiv('OrderPlace');", 5000);
													/*hideDiv('varification');
													showDiv('varificationCode');
													showDiv('OrderPlace');*/
												}
												else if((parseInt(res)) == 2)
												{
													$('txtMobileNo').value = "";
													$('txtMobileNo').focus();
													$('errorVarification').innerHTML = validMobileNoMsg + " !";
												}
										},
										onFailure : function()
										{
											$('errorVarification').innerHTML = "Server Error !!";
										}
									 }
						);
	}
	
}
/////////////////////////////////////////////// verify page function /////////////////////////////////////////////////////////////

function verify_page(min_val_flag, BranchID, minimumAmountError, paymentTypeError, deliverySelectError, emptyMobileNoMsg, validMobileNoMsg, unableToGenerateCodeMsg, successVarificationCodeMsg)
{
	var AjaxURL = "ajaxserver/responseDeliveryDatetime.php";
	var params = Form.serialize('frmOrderDetails_2');
	var frm = document.frmOrderDetails_2;
	var radio_datetime_day = frm.radioDateTime_Day;
	var radio_datetime_time = frm.radioDateTime_Time;
	var radio_payment = frm.radioPaymentTypes;
	var arr_datetime_day_length = radio_datetime_day.length;
	var arr_datetime_time_length = radio_datetime_time.length;
	var arr_payment_length = radio_payment.length;
	var datetime_day_flag = false;
	var datetime_time_flag = false;
	var payment_flag = false;
	var flag = 1;
	var msg = "";
	var i;
	
	params += "&branchID=" + BranchID;
	//alert(params);
	$('errorVarification').innerHTML = "";
	
	if( !min_val_flag )
	{
		msg = minimumAmountError + " !\n";
		flag = 0;
	}
	
	for( i = 0; i < arr_datetime_day_length; i++ )
	{
		if( radio_datetime_day[i].checked )
		{
			datetime_day_flag = true;
			break;
		}
	}
	for( i = 0; i < arr_datetime_time_length; i++ )
	{
		if( radio_datetime_time[i].checked )
		{
			datetime_time_flag = true;
			break;
		}
	}
	if( !datetime_day_flag || !datetime_time_flag )
	{
		flag = 0;
		msg += deliverySelectError + " !\n";
	}
	
	for( i = 0; i < arr_payment_length; i++ )
	{
		if( radio_payment[i].checked )
		{
			payment_flag = true;
			break;
		}
	}
	if( !payment_flag )
	{
		flag = 0;
		msg += paymentTypeError + " !\n";
	}
	
	if( flag )
	{
		new Ajax.Request(AjaxURL,
								{
									method : "post",
									parameters : params,
									onSuccess : function(transport)
												{
													var response = transport.responseText;
													var split_res = response.split("|");
													var msg = split_res[1];
													
													if( !parseInt(split_res[0]) )
													{
														alert(msg);
													}
													else
													{
														VerifyOrder(emptyMobileNoMsg, validMobileNoMsg, unableToGenerateCodeMsg, successVarificationCodeMsg);
													}
												},
									onFailure : function()
												{
													alert("Server Error !!\nPlease check your Network Connection !");
												}
								}
						);
		
	}
	else
	{
		alert(msg);
	}
}

//////////////////////////////////////////////////////////// Ends //////////////////////////////////////////////////////////////////
