﻿// JavaScript Document

var ROOT_URL = 'http://'+window.location.hostname+'/';
//var ROOT_URL = '';

var xmlHttp

function GetXmlHttpObject()
{
	var xmlHttp=null;
	try
	{
		// Firefox, Opera 8.0+, Safari
		xmlHttp=new XMLHttpRequest();
	}
	catch (e)
	{
		//Internet Explorer
		try
		{
			xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
		}
		catch (e)
		{
			xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
		}
	}
	return xmlHttp;
}

 

function newShowRegion(str, on_load)
{
	setTimeout("",10);
    xmlHttp=GetXmlHttpObject()

	if (xmlHttp==null)
	{
	  alert ("Browser does not support HTTP Request")
      return
    } 

	var url=ROOT_URL+"newRegionDp.html";
	//var url=ROOT_URL+"newRegionDp.html";
	url=url+"?vids="+str+"&on_load="+on_load;
	xmlHttp.onreadystatechange=newStateChanged 
	xmlHttp.open("GET",url,true)
	xmlHttp.send(null)
}

 

function newStateChanged() 
{
	if (xmlHttp.readyState==4)
	{
		document.getElementById("newRegion_div").innerHTML=xmlHttp.responseText 
	}
}

//called on all country toggle in country dropdown
function search_select(id)
{

	var str = new Array;

	if(document.getElementById('all_country').checked==true)
	{
		 for(var i = 0; i < id; i++)  
		 { 
			 document.getElementById('searchCountry_id'+i).checked = false;
		 }
 		 
		 document.getElementById('country_text_name').value="All Countries";
		 var vids = '';
		 newShowRegion(vids); 
	}else{

		 for(var i = 0; i < id; i++)  
		 { 
			 document.getElementById('searchCountry_id'+i).checked = true;
			 str[i] = document.getElementById('searchCountry_id'+i).title;
		 }

		var strings = str.join(',');
		if(strings!='')
		{
			document.getElementById('country_text_name').value=strings;
		}else
		{
			document.getElementById('country_text_name').value="All Countries";
		}
		search_selectRegion(id,1);
	}
}

// called on country list in country dropdown.
function search_selectRegion(id,on_load)
{
	var flag = false;
	var str = new Array;
	var y = 0;
	var vid = new Array;

	if(!on_load)
	{
		for(var i = 0; i < id; i++)  
		{
			if(document.getElementById('searchCountry_id'+i).checked==true)
			{
				 if(y>=0)
				 {
					 vid[y] = document.getElementById('searchCountry_id'+i).value; 
					 str[y] = document.getElementById('searchCountry_id'+i).title;
					 y++;
				 }
				 flag = true;
			}
			if(flag)
			{
				var strings = str.join(',');
				document.getElementById('country_text_name').value=strings;
				document.getElementById('all_country').checked=false;
			}else{
				document.getElementById('all_country').checked=true;
				document.getElementById('country_text_name').value="All Countries";
			}
		}
		var vids = (vid.join(','));
		newShowRegion(vids,1);
	}
}

// called on country list in region dropdown
function select_CountryRegion(cid, limit)
{
    var str = new Array;
    if(document.getElementById('country_id'+cid).checked==true)
	{
		 for(var i = 0; i < limit; i++)  
		 { 
			 document.getElementById('region_id'+cid+i).checked=false;
		 }//for close
		document.getElementById('region_text_name').value="All Regions";

	}else{
		 for(var i = 0; i < limit; i++)  
		 { 
			 document.getElementById('region_id'+cid+i).checked=true; 
			 str[i] = document.getElementById('region_id'+cid+i).title;
		 }//for close
 		 var strings = str.join(',');
    	 document.getElementById('region_text_name').value=strings;
	}// if close
}

// called on region listing in region dropdown
function select_Country(cid, rlimit)
{
	var str = new Array;
	var flag = true;
	var c_flag = false;
	var k = 0;
	var c_limit = new Array;

	c_limit = cid.split(',');
	count_country = c_limit.length;

	var r_limit = new Array;
	r_limit = rlimit.split(',');
	region_limit = r_limit.length;

	for(var i = 0; i < count_country; i++)  
	{
		flag = true;
	    for(var y=0; y < r_limit[i]; y++)
		{
 			if(document.getElementById('region_id'+c_limit[i]+y).checked)
			{
				 flag = false;
				 str[k] = document.getElementById('region_id'+c_limit[i]+y).title;
				 k++;
			}
		}
		if(flag)
		{
			 document.getElementById('country_id'+c_limit[i]).checked=true;
		}else{
			 if(!c_flag){c_flag = true};
			 document.getElementById('country_id'+c_limit[i]).checked=false;
		}
	}//for close
	if(c_flag)
	{
		var strings = str.join(',');
		document.getElementById('region_text_name').value=strings;
	}else{
		document.getElementById('region_text_name').value='All Regions';
	}
}

 
//called on all other criteria toggle in Other criteria dropdown
function select_otherCriteria(id)
{
    var str = new Array;
    if(document.getElementById('other_criteria').checked==true)
    {
		for(var i = 0; i < id; i++)  
		{ 
			document.getElementById('other_criteria_id'+i).checked = false;
		}
		document.getElementById('other_text_name').value="No Criteria";
	}else{
		for(var i = 0; i < id; i++)  
		{ 
			document.getElementById('other_criteria_id'+i).checked = true;
			str[i] = document.getElementById('other_criteria_id'+i).title;
		}
		var strings = str.join(',');
		if(strings!='') 
			document.getElementById('other_text_name').value=strings;
		else
			document.getElementById('other_text_name').value="No Criteria";
	}
}

 

// called on other sub criteria list in other criteria dropdown.
function select_otherSubCriteria(id)
{
    var flag = false;
    var str = new Array;
    var y =0;
    
    for(var i = 0; i < id; i++)  
    { 
         if(document.getElementById('other_criteria_id'+i).checked==true)
         {
              if(y>=0)
              {
                   str[y] = document.getElementById('other_criteria_id'+i).title;
                   y++;
              }
              flag = true;
         }
         if(flag)
         {
              var strings = str.join(',');
              document.getElementById('other_text_name').value=strings;
              document.getElementById('other_criteria').checked=false;
         }else{
              document.getElementById('other_criteria').checked=true;
              document.getElementById('other_text_name').value="No criteria";
         }
     }
}

 

// called on villa type on body load
function newShowOtherCriteria()
{ 
    // gets type
    str = document.getElementById("villa_select").value;

    // gets currency
    c_rate_symb = document.getElementById("currency_criteria").value;
    c_array = c_rate_symb.split("-");
    c_rate = c_array[0];

    xmlHttp=GetXmlHttpObject()
    if (xmlHttp==null)
    {
         alert ("Browser does not support HTTP Request")
         return
    } 
    var url=ROOT_URL+"newOtherCriteria.html";
    //var url=ROOT_URL+"newOtherCriteria.html";

    url=url+"?type="+str+"&convert_rate="+c_rate;
    xmlHttp.onreadystatechange=newOtherCriteriaStateChanged
    xmlHttp.open("GET",url,true)
    xmlHttp.send(null)
}

 

function newOtherCriteriaStateChanged() 
{ 
     if (xmlHttp.readyState==4)
     {
          var responseString = xmlHttp.responseText;
          var responseResult_array = responseString.split("*#*");
                 
          document.getElementById("newOther_criteria_div").innerHTML=responseResult_array[0];
          document.getElementById("newBudget_div").innerHTML=responseResult_array[1];
     } 
}

////Praveen

// called on villa type change 
function newShowOtherCriteria_villaChange()
{ 
    // gets type
    str = document.getElementById("villa_select").value;
 
    // gets currency
    c_rate_symb = document.getElementById("currency_criteria").value;
    c_array = c_rate_symb.split("-");
    c_rate = c_array[0];

    xmlHttp=GetXmlHttpObject()
    if (xmlHttp==null)
    {
         alert ("Browser does not support HTTP Request")
         return
    } 
    
    var url=ROOT_URL+"newOtherCriteria_villachange.html";
    //var url=ROOT_URL+"newOtherCriteria_villachange.html";

    url=url+"?type="+str+"&convert_rate="+c_rate;
    xmlHttp.onreadystatechange=newOtherCriteriaStateChanged_Villachange
    xmlHttp.open("GET",url,true)
    xmlHttp.send(null)
}

 

function newOtherCriteriaStateChanged_Villachange() 
{ 
    if (xmlHttp.readyState==4)
    {
        var responseString = xmlHttp.responseText;
		var responseResult_array = responseString.split("*#*");
                    
        document.getElementById("newOther_criteria_div").innerHTML=responseResult_array[0];
        document.getElementById("newBudget_div").innerHTML=responseResult_array[1];
        document.getElementById("bedroomListId").innerHTML=responseResult_array[2];
    } 
}

//// praveen end

///+++++++++++++Upto here++++++++++++++///
//////////////////
////////////////////////
/////////////////////////////
function getRegionBudget(cids, on_load)
{
    // gets type
    str = document.getElementById("villa_select").value;

	// gets currency
    c_rate_symb = document.getElementById("currency_criteria").value;
    c_array = c_rate_symb.split("-");
    c_rate = c_array[0];

	xmlHttp=GetXmlHttpObject()
    if (xmlHttp==null)
    {
         alert ("Browser does not support HTTP Request")
         return
    } 

	var url=ROOT_URL+"regionBudget.html";
	//var url=ROOT_URL+"newRegionDp.html";
	url=url+"?type="+str+"&convert_rate="+c_rate+"&vids="+cids+"&on_load="+on_load;
	xmlHttp.onreadystatechange=StateChanged_Region_Budget
	xmlHttp.open("GET",url,true)
	xmlHttp.send(null)

}

function StateChanged_Region_Budget()
{
    if (xmlHttp.readyState==4)
    {
		var responseString = xmlHttp.responseText;
	  	var responseResult_array = responseString.split("||");

		document.getElementById("newRegion_div").innerHTML=responseResult_array[0]; 
		document.getElementById("newOther_criteria_div").innerHTML=responseResult_array[1];
	  	document.getElementById("newBudget_div").innerHTML=responseResult_array[2];
    } 
}

////////////////////////////
////////////////////////
///////////////////
//////////////
///+++++++++++++Populates Budget per night data for Search Panel ++++++++++++++///

/// Called on villa change
function showBudegetPerNight()
{ 
    // gets type
    str = document.getElementById("villa_select").value;

    // gets currency
    c_rate_symb = document.getElementById("currency_criteria").value;
    c_array = c_rate_symb.split("-");
    c_rate = c_array[0];

	xmlHttp=GetXmlHttpObject()
    if (xmlHttp==null)
    {
        alert ("Browser does not support HTTP Request")
        return
    } 
    var url=ROOT_URL+"getBudget-data.html";
    // var url=ROOT_URL+"getBudget-data.html";

    url=url+"?type="+str+"&convert_rate="+c_rate;
    xmlHttp.onreadystatechange=budegetPerNightStateChanged
    xmlHttp.open("GET",url,true)
    xmlHttp.send(null)
}

 
function budegetPerNightStateChanged() 
{ 
    if (xmlHttp.readyState==4)
    {
        document.getElementById("newBudget_div").innerHTML=xmlHttp.responseText;
    } 
}

///+++++++++++++++Upto here+++++++++++++++///

// called on body load
function show_div()
{
    // gets type
    d = document.getElementById("villa_select").value;

	if(d=="rent" || d=="hotel")
    {

		document.getElementById('legal_info').style.display = "none";
		document.getElementById('search_div_container').style.display = "block";
		document.getElementById('middle_div').style.display = "block";
		document.getElementById('calender_div').style.display = "block";
		document.getElementById('bottom_btn_div').style.display = "block";
    }
    if(d=="sale")
    {
		document.getElementById('calender_div').style.display = "none";
		document.getElementById('bottom_btn_div').style.display = "block";
		document.getElementById('search_div_container').style.display = "block";
		document.getElementById('middle_div').style.display = "block";
		document.getElementById('legal_info').style.display = "block";
    }
    if(d=="things_todo")
    {
		document.getElementById('legal_info').style.display = "none";
		document.getElementById('search_div_container').style.display = "none";
		document.getElementById('middle_div').style.display = "none";
		document.getElementById('calender_div').style.display = "none";
    }
}

 
// sets villa type value to hidden field on selection
function setVillType(str)
{
	if(str=='villa_type1')
	{
		document.search_frm.villa_select.value='rent';                               
	}

	if(str=='villa_type2')
	{
		document.search_frm.villa_select.value='sale';                               
	}

	if(str=='villa_type3')
	{
		document.search_frm.villa_select.value='things_todo';                               
	}

	if(str=='villa_type4')
	{
		document.search_frm.villa_select.value='hotel';                             
	}
	document.search_frm.villa_select_text.value=document.getElementById(str).value;                  
	document.getElementById('main_div_villa').style.display = "none";
}

 

// sets bedroom count value to hidden field on selection
function setBedroomCount(str)
{
    for(var i=0; i<9; i++)
    {
        if(str=='bedroom_sel'+i)
		{
			if(i==0)
			{
				document.search_frm.bedroom_sel.value = 'any';
			}else{
				document.search_frm.bedroom_sel.value = i;
			}
		}
	}
	document.getElementById('bedroom_sel_text').value=document.getElementById(str).value;
	document.getElementById('main_div_bedroom').style.display = "none";
}

 
// sets currency type value to hidden field on selection
function setCurrencyType(symb_str, c_rate)
{
    document.getElementById('currency_select_text').value=symb_str;
    document.getElementById('currency_criteria').value=c_rate;
    document.getElementById('currency_symbol').value=symb_str;
	document.getElementById('main_div_currency').style.display = "none";
}

// sets price range type value to hidden field on selection
function setPriceType(rate, strToDisplay)
{
	document.getElementById('price_select_text').value=strToDisplay;
	document.getElementById('budget_per_night').value=rate;
	document.getElementById('price_to_display').value=strToDisplay;
	document.getElementById('main_div_price').style.display = "none";
}

// sets date flexibility value to hidden field on selection
function setDateFlexibility(f_date, strToDisplay)
{
    document.getElementById('date_sel_text').value=strToDisplay;
	document.getElementById('date_flexibilty').value=f_date;
	document.getElementById('date_to_display').value=strToDisplay;
	document.getElementById('main_div_date').style.display = "none";
}

// function to activate paging in search result side pannel
function go_to_page(page,type)
{
	xmlHttp=GetXmlHttpObject()
	if (xmlHttp==null)
	{
		alert ("Browser does not support HTTP Request")
		return
	} 
	var url= "below_search_result.html";
    // var url= "below_search_result.html";

	url=url+"?page_num="+page+"&sh=suc&type="+type;

	xmlHttp.onreadystatechange=new_page_clicked 
	xmlHttp.open("GET",url,true)
	xmlHttp.send(null)
}

function new_page_clicked() 
{ 
	if (xmlHttp.readyState==4)
	{
		document.getElementById("div_search_result_pannel").innerHTML=xmlHttp.responseText ;
	}
}