function noCache(url)
{
	var sep = (-1 < url.indexOf("?")) ? "&" : "?"	
	url = url + sep + "__=" + encodeURIComponent((new Date()).getTime());	
	return url;
}
//------------------------------------------------------------------------------
function Calculate_Rates(selected_id,cat_id)
{
	var url = "rates_display.php?";
	if(window.XMLHttpRequest) 
	{
		req = new XMLHttpRequest;
	}
	else if (window.ActiveXObject)
	{
		req = new ActiveXObject("Microsoft.XMLHTTP");
	}

	req.open("POST",noCache(url),true);
	req.setRequestHeader('Content-Type','application/x-www-form-urlencoded;');
	postData="id="+selected_id+"&cat_id="+cat_id;
	req.onreadystatechange = getData_Callback_Rate;	
	req.send(postData);
}
//------------------------------------------------------------------------------
function getData_Callback_Rate()
{
	if(req.readyState==4)
	{		
		if(req.status==200)
		{
			var output = (req.responseText);
			if(output != '')
			{
				document.getElementById('rate_details').innerHTML = output;
			}
		}
	}
}
//------------------------------------------------------------------------------
function validate_frm(val)
{
	cook_val = GetCookie('DateList');
	cat_id   = GetCookie('CategoryId');

	if(val == cat_id && cook_val != "" && cook_val != null)
	{
		//window.location.href="booking_userinfo.php?cat_id="+cat_id;
	}
	else
	{
		alert("Please select the booking date(s)");
		return false;
	}
	document.category_list.cat_id.value=val;
	document.category_list.submit();
return true;
}
//------------------------------------------------------------------------------
function getCookieVal (offset) 
{
   var endstr = document.cookie.indexOf (";", offset);
   if (endstr == -1)
      endstr = document.cookie.length;
   return unescape(document.cookie.substring(offset, endstr));
}
//------------------------------------------------------------------------------
function GetCookie (name) 
{
   var arg = name + "=";
   var alen = arg.length;
   var clen = document.cookie.length;
   var i = 0;
   while (i < clen) 
      {
      var j = i + alen;
      if (document.cookie.substring(i, j) == arg)
         return getCookieVal (j);
      i = document.cookie.indexOf(" ", i) + 1;
      if (i == 0) break; 
      }
   return null;
}

//------------------------------------------------------------------------------
function validate_checkbox(cur_val)
{
	frm = document.category_list;
	var in_array = 0;
	var arr_length = 0;
	var name =cur_val.name;
	var name_list = frm[name].name.split("_");
	var category_value = (name_list[1]);

	var cook_val = GetCookie('DateList');
	frm.selected_date.value = cook_val;
		
	if(frm.selected_date.value != "null" && frm.selected_date.value != "")
	{
		selected_date_list = frm.selected_date.value.split(",");
		selected_date_list.sort();
		arr_length = selected_date_list.length;

		for(var i=0;i<arr_length.length;i++)
		{
			if(selected_date_list[i] == frm[name].value)
			{
				in_array = 1;
			}
		}
	}

	var exist_sel_cat_id = GetCookie('CategoryId');
	if(exist_sel_cat_id != category_value && exist_sel_cat_id != null)
	{
		alert("Please select within the same category");
		frm[name].checked=false;
		return false;
	}

	if(cook_val != null && cook_val != '')
		var add_cook_val = cook_val+","+frm[name].value;
	else
		var add_cook_val = frm[name].value;

	var new_date_list = "";
	if(in_array == "0")
	{
		if(arr_length > 0)
		{

			var date_diff_0 = parseInt(selected_date_list[0]) -  parseInt(frm[name].value);
			var date_diff_1 = parseInt(selected_date_list[arr_length-1]) -  parseInt(frm[name].value);


			if(date_diff_0 == 0 || date_diff_1 == 0)
			{
				frm[name].checked=false;

				for(var i=0;i<arr_length;i++)
				{
					if(selected_date_list[i] == frm[name].value)
					{
						in_array = 1;
						Calculate_Rates(frm[name].value,category_value);
					}
					else
					{
						new_date_list += ","+selected_date_list[i];
					}
					
				}
				var new_date_list1 = new_date_list.substr(1,new_date_list.length);
			var cookie_name = "DateList";
			SetTheCookie(cookie_name,new_date_list1);
			if(new_date_list1 == "")
			{
				var expdate = new Date (); 
			    expdate.setTime(expdate.getTime() - (24 * 60 * 60 * 1000 * 365)); 
			    SetCookie('CategoryId','', expdate); 			
			}
			return false;
			}

			cook_0_date = selected_date_list[0].substring(6,8);
			cook_0_mon = selected_date_list[0].substring(4,6);


				if(date_diff_0 > 69 && date_diff_0 < 71 )
				{
					date_diff_0 = date_diff_0 - 69;
				}
				if(date_diff_0 < -69 && date_diff_0 > -71)
				{
					date_diff_0 = date_diff_0 + 69;
				}

				if(date_diff_1 > 69 && date_diff_1 < 71)
				{
					date_diff_1 = date_diff_1 - 69;
				}
				if(date_diff_1 < -69 && date_diff_1 > -71)
				{
					date_diff_1 = date_diff_1 + 69;
				}

			if((date_diff_0 == 1 || date_diff_0 == -1) || (date_diff_1 == 1 || date_diff_1 == -1))
			{
				if((date_diff_0 < 0 && date_diff_1 >= 1) || (date_diff_0 > 1 && date_diff_1 < 0))
				{
					alert("Please choose continuous dates");
					frm[name].checked=true;
					return false;
				}
				var cookie_name = "DateList";
				SetTheCookie(cookie_name,add_cook_val);
				Calculate_Rates(frm[name].value,category_value);
			}
			else
			{
				alert("Please choose continuous dates");
				if(date_diff_0 < 0 && date_diff_1 > 0)
				{
					frm[name].checked=true;
				}
				else
				{
					frm[name].checked=false;
				}
				return false;
			}
		}
		else
		{
			var cookie_name = "DateList";
			SetTheCookie(cookie_name,add_cook_val);
			Calculate_Rates(frm[name].value,category_value);
		}

	}
	var cookie_name = "CategoryId";
	SetTheCookie(cookie_name,category_value);

return false;
}
//------------------------------------------------------------------------------

function SetTheCookie(cookie_name,value)
{
      var expdate = new Date (); 
      expdate.setTime(expdate.getTime() + (24 * 60 * 60 * 1000 * 365)); 
      SetCookie(cookie_name,value, expdate);  
      return false;
}
//------------------------------------------------------------------------------
function SetCookie (name, value) 
{
   var argv = SetCookie.arguments;
   var argc = SetCookie.arguments.length;
   var expires = (argc > 2) ? argv[2] : null;
   var path = (argc > 3) ? argv[3] : null;
   var domain = (argc > 4) ? argv[4] : null;
   var secure = (argc > 5) ? argv[5] : false;
   document.cookie = name + "=" + escape (value) +
        ((expires == null) ? "" : ("; expires=" + expires.toGMTString())) +
        ((path == null) ? "" : ("; path=" + path)) +
        ((domain == null) ? "" : ("; domain=" + domain)) +
        ((secure == true) ? "; secure" : "");
}


//------------------------------------------------------------------------------
function chk_inout_date_diff(x,y){
	
   var frm = document.booking_search;
   var a=new Date(frm.checkin_date.value);
   var b=new Date(frm.checkout_date.value);
   var a = new Date(x);
   var b = new Date(y);

   var one_day=1000*60*60*24;
   return Math.ceil((b-a)/(one_day));
}
//------------------------------------------------------------------------------
function validate_userinfo(payment_option)
{
	var frm = document.userinfo;
	frm.payment_option.value = payment_option;

	if(frm.payment_option.value != 'request_queries1')
	{
		if (isNull(frm.first_name.value))
		{	
			alert("Please enter your first name");
			frm.first_name.focus();
			return false;
		} 

		if (isNull(frm.last_name.value))
		{	
			alert("Please enter your last name");
			frm.last_name.focus();
			return false;
		} 

		if (isNull(frm.email.value))
		{	
			alert("Please enter you email Id");
			frm.email.focus();
			return false;
		}
		else
		{
			if (!fnValidateEmailFormat(frm.email.value))
			{
				alert ("Invalid Email Id");
				frm.email.focus();
				return false;
			} 
		}	
		
		
		if (isNull(frm.confirmemail.value))
		{	
			alert("Please enter you confirm email Id");
			frm.confirmemail.focus();
			return false;
		}
		else
		{
			if (!fnValidateEmailFormat(frm.confirmemail.value))
			{
				alert ("Invalid Email Id");
				frm.confirmemail.focus();
				return false;
			} 
		}	


		if(frm.confirmemail.value!=frm.email.value)
		{
				alert ("Emails must be same");
				frm.confirmemail.focus();
				return false;
		
		}

		if (isNull(frm.country.value))
		{	
			alert("Please enter country name");
			frm.country.focus();
			return false;
		} 


		if (isNull(frm.phone.value))
		{	
			alert("Please enter your phone number");
			frm.phone.focus();
			return false;
		} 
	}
	//var btn = valButton(frm.payment_option);
	//if (btn == null)
	//{
		//alert('Please select your option for payment');
		//return false;
	//}
	if(frm.payment_option.value == 'request_queries')
	{
		if (isNull(frm.message.value))
		{	
			alert("Please enter your message (or) queries");
			frm.phone.focus();
			return false;
		}
		
	}
	if(frm.payment_option.value == 'paynow')
	{
		var	chkstatus		=	frm.terms.checked;
		if(chkstatus == false)
		{
			alert("Please check to confirm that you have read & you agree with the cancellation policy ");
			return false;
		}
	}
	frm.submit();
}
//------------------------------------------------------------------------------

function valButton(btn) {
    var cnt = -1;
    for (var i=btn.length-1; i > -1; i--) {
        if (btn[i].checked) {cnt = i; i = -1;}
    }
    if (cnt > -1) return btn[cnt].value;
    else return null;
}
//------------------------------------------------------------------------------
function validate_confirm_status(frm)
{
	frm = document.frm_status;
	//var btn = valButton(frm.payment_option);
	//if (btn == null)
	//{
	//	alert('Please select your option for payment');
	//	return false;
	//}
	
	//if(frm.payment_option[0].checked)
	//{
		//if(isNull(frm.message.value))
		//{
			//alert("Please enter your message");
			//frm.message.focus();
			//return false;
		//}
	//}

	//if(frm.payment_option[1].checked)
	//{
		var	chkstatus		=	frm.terms.checked;
		if(chkstatus == false)
		{
			alert("Please check to confirm that you have read & you agree with the cancellation policy ");
			return false;
		}
		frm.submit();
	//}
}
//------------------------------------------------------------------------------

function show_Fax(payment)
{
	if(payment.value == '1')
	{
		document.getElementById("showFax").style.display="none";
		document.getElementById("showBankDetails").style.display="none";
	}
	else if(payment.value == '2')
	{
		document.getElementById("showFax").style.display="block";
		document.getElementById("showBankDetails").style.display="none";
	}
	else if(payment.value == '3')
	{
		document.getElementById("showFax").style.display="none";
		document.getElementById("showBankDetails").style.display="block";
	}
	return true;
}
