// JScript File

var browser=navigator.appName;
var b_version=navigator.appVersion;
var version=parseFloat(b_version);

var multiplyBy = 1;
var unitText = "m";
var maxValueRange = "";
var Currency = "";
function updatePrices(v)
{
    
	$('priceText').innerHTML=""+v[0] + ' to ' + v[1] + ((Number(v[1]) == maxValueRange) ? ""+unitText+"+" : ""+unitText+"");
	$('minprice').value = v[0] * multiplyBy;
	$('maxprice').value = v[1] * multiplyBy;
}

function updateBedrooms(v)
{
	$('bedsText').innerHTML="<span class = 'whitefont' style='font-size:11px;'>" + v[0] + ' to ' + v[1] + ((Number(v[1]) == 9) ? "+"+"</span>" : "</span>");
	$('minbeds').value = v[0];
	$('maxbeds').value = v[1];
}

function updateSizes(v)
{
    $('bedsText').innerHTML="<span class='whitefont' style='font-size:11px;'>" + v[0] + ' to ' +v[1] + ((Number(v[1]) == 20000) ? " sq.ft+"+"</span>" : " sq.ft</span>");
    $('minsize').value = v[0];
    $('maxsize').value = v[1];
}

function changeAction(obj)
{
    var objForm = document.getElementById('BasicSearchForm');
    if(obj.options[obj.selectedIndex].value == "3")
    {
        objForm.action = "/str/property/search.aspx";
    }
    else
    {
        objForm.action = "/property/search.aspx";
    }
}

function FillCombos(obj,selVal,usePerSelect)
{
    var j = 0;
    for(j=obj.options.length-1 ; j >= 0 ; j--)
    {
        if(obj.options[j].value == "0")
        {
            obj.options[j] = null;
        }
    }
    //alert(DDl.options[DDl.selectedIndex].text);
    //alert(DDl.options[DDl.selectedIndex].value);
	var value = "";
	value = obj.options[obj.selectedIndex].value;
	var TargetString = "";
	switch (value)
		{
			    case "0":
                {
                    TargetString = "Property Type:0";        
                    break;
                }
                case "1":
                {
                    TargetString = "All Residential:35,36|All Commercial:37,38,39,40|Villa:36|Apartment:35|Office Space:37|Warehouse:39|Labour Housing:38|Retail:40";
                    break;        
                }
                case "2":
                {   
                    TargetString = "All Residential:35,36|All Commercial:37,38,39,40|Villa:36|Apartment:35|Office Space:37|Warehouse:39|Labour Housing:38|Retail:40";        
                    break;
                }
                case "3":
                {
                    TargetString = "All Residential:1,2|Villa:2|Apartment:1";
                    break;
                }
		}
		LoadNextCombo(TargetString,selVal,usePerSelect);
		
}

function LoadNextCombo(TargetString,selVal,usePerSelect)					
{
    var fillobject = document.getElementById('category');
    
	var str = new String();
	str = TargetString;
    var newOptions = str.split("|");
    for(j=fillobject.options.length-1 ; j >0 ; j--)
    {
        fillobject.options[j] = null;
    }
    for(i=0 ; i < newOptions.length ; i++)
    {
        var textVal = newOptions[i].split(":");
        fillobject.options[i] = document.createElement("option", true);
        fillobject.options[i].text = textVal[0];
        fillobject.options[i].value = textVal[1];
        if(fillobject.options[i].value == selVal)
         {
            fillobject.options[i].selected = 'selected';
         }
    }	
    
     ChangeMajorCombo(usePerSelect);  
}

function ChangeMajorCombo(usePerSelect)
{
    var i = 0;
    i = document.getElementById("serviceType").selectedIndex;
    document.getElementById("serviceType").options[i].selected = true;
    if(document.getElementById("serviceType").options[document.getElementById("serviceType").selectedIndex].value == "0")//I AM LOOKING FOR
    {
        document.getElementById("PriceSliderDiv").style.display = "block";
        document.getElementById("CalenderDiv").style.display = "none";
        if(usePerSelect == "true")
            {}
            else
            {createBedsSlider('','');  }
      
    }
    if(document.getElementById("serviceType").options[document.getElementById("serviceType").selectedIndex].value  == "1")//RENT
    {
        document.getElementById("PriceSliderDiv").style.display = "block";
        document.getElementById("CalenderDiv").style.display = "none";
        if(usePerSelect == "true")
            {}
            else
            {createBedsSlider('','');  }
        
    }
    if(document.getElementById("serviceType").options[document.getElementById("serviceType").selectedIndex].value  == "2")//BUY
    {
        document.getElementById("PriceSliderDiv").style.display = "block";
        document.getElementById("CalenderDiv").style.display = "none";        
        if(usePerSelect == "true")
            {}
            else
            {createBedsSlider('','');  }
    }
    if(document.getElementById("serviceType").options[document.getElementById("serviceType").selectedIndex].value == "3")//SHORTSTAY
    {
        document.getElementById("PriceSliderDiv").style.display = "none";
        document.getElementById("CalenderDiv").style.display = "block";    
        if(usePerSelect == "true")
            {}
            else
            {createBedsSlider('','');  }
    }
}
function ChangeMinorCombo(DDl,selVal,usePerSelect)
{

    var compareObject = "";
    if(selVal == "none")
    {
        compareObject = DDl.options[DDl.selectedIndex].value;
    }
    else
    {
        compareObject = selVal;
    }
    if(compareObject == "35,36" || compareObject == "35" || compareObject == "36")
    {
        if(document.getElementById("serviceType").options[document.getElementById("serviceType").selectedIndex].value != "3")
        {
            document.getElementById("PriceSliderDiv").style.display = "block";
            if(usePerSelect == "true")
            {}
            else
            {
                createBedsSlider('','');  
                document.getElementById('bedsText').innerHTML = '0 to 9+';  
            }
            
        }
    }
    if(compareObject == "37,38,39,40" || compareObject == "37" || compareObject == "38" ||compareObject == "39"||compareObject == "40")
    {
        document.getElementById("PriceSliderDiv").style.display = "block";   
        if(usePerSelect == "true")
        {}
        else
        {
            createSizeSlider('','');
            document.getElementById('bedsText').innerHTML = '0 to 20000 sq.ft+';  
        }
    }    
}
function validateCriteria()
{
    var objLookingFor = document.getElementById('serviceType');
    if(objLookingFor.options[objLookingFor.selectedIndex].value == "0")
    {
        alert("Please select \"I am looking to\"");
        return false;
    }
    
    else
    {
      var region = document.getElementById('region');
      if(region.options[region.selectedIndex].value == "-1")
      {
             alert("Please select \"Region\"");
             return false;
      }
      else
      {
        var district = document.getElementById('district');
        if(district.options[district.selectedIndex].value == "-1")
            {
                alert("Please select \"District\"");
                return false;
            }
      }
    }
    if(objLookingFor.options[objLookingFor.selectedIndex].value == "3")
    {
        var dtFrom = document.getElementById('dateFrom').value;
        var dtto = document.getElementById('dateTo').value;
        
        
        if(!((dtFrom == "" || dtFrom == " Check-in date") || (dtto == "" || dtto == " Check-out date")))
        {
           			
			
			///dateTo.setFullYear(parseInt(toArray[2]),(parseInt(toArray[1])-1),parseInt(toArray[0]));
			
			if(returnDate(dtto)>=returnDate(dtFrom) )
				return true;
        }
        else
        {
        	alert("Please select valid dates");
        	return false;
        }
        alert("Please select valid dates");
        return false;
    }
    var bedDiv = document.getElementById('bedsSlider').style.display;
    var sizeDiv = document.getElementById('sizeSlider').style.display;
    if(bedDiv == "none")
    {
       document.getElementById('minbeds').value = '0';
       document.getElementById('maxbeds').value = '9';
    }
    if(sizeDiv == "none")
    {
       document.getElementById('minsize').value = '0'
       document.getElementById('maxsize').value = '20000';
    }
    
    return true;
}
function returnDate(obj)
{
            var toArray = obj.split("-");
            var mydate = new Date();      
			var dateTo = new Date(toArray[2],toArray[1],toArray[0]);
			return dateTo;
}
 function doRefresh()
 {
    
 }
 function changeSliders(minValue, maxValue)
  { 
      
       if (browser == "Microsoft Internet Explorer")
	   {
	        
	   }
       var cmbServiceType  = document.getElementById("serviceType");
       var showSpan = document.getElementById('priceText');
       var cmbCategory =  document.getElementById("category");
       var maxRange = 20;
       var multipilier = 0;
       var startMin = 0;
       var startMax = 20;
       var unitVal  = "m";
       var arr = [0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20];
       if(cmbServiceType.options[cmbServiceType.selectedIndex].value == "1")//Buy
       {
            if(cmbCategory.options[cmbCategory.selectedIndex].value == "35" || cmbCategory.options[cmbCategory.selectedIndex].value == "36" || cmbCategory.options[cmbCategory.selectedIndex].value == "35,36")
            {
                arr = [0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20];
                maxRange = 20;
                startMax = maxValue == ""?20:parseInt(maxValue);
                startMin = minValue == ""?0:parseInt(minValue);
                unitVal = "m";
            }
            else
            {
                 arr = [0,1,2,3,4,5,6,7,8,9,10];
                 maxRange = 10;
                 startMax = maxValue == ""?10:parseInt(maxValue);
                 startMin = minValue == ""?0:parseInt(minValue);
                 unitVal = "m";
            }
       }
       else if(cmbServiceType.options[cmbServiceType.selectedIndex].value == "2")//Rent
       {
            if(cmbCategory.options[cmbCategory.selectedIndex].value == "35" || cmbCategory.options[cmbCategory.selectedIndex].value == "36" || cmbCategory.options[cmbCategory.selectedIndex].value == "35,36")
            {
                arr = [0,20,40,60,80,100,120,140,160,180,200,220,240,260,280,300];
                maxRange = 300;
                startMax = maxValue == ""?300:parseInt(maxValue);
                startMin = minValue == ""?0:parseInt(minValue);
                unitVal = "k";
            }
            else
            {
                arr = [0,0.2,0.4,0.6,0.8,1.0,1.2,1.4,1.6,1.8,2];
                startMax = maxValue == ""?2:parseFloat(maxValue);
                startMin = minValue == ""?0:parseFloat(minValue);
                maxRange = 2;
                unitVal = "m";
            }
            
       }
            
       var priceValues = [startMin, startMax];
       
                 
	   var mslider = new Control.Slider([$('minPriceHandle'), $('maxPriceHandle')], 'priceSlider', {
							range:$R(0, maxRange, false),
							values:arr,
							restricted:true,
							sliderValue: priceValues,
							onSlide: updatePrices
							});
	
	    mslider.update();	
	    unitText = unitVal;
	    if(maxValue =="")
	    {
	        maxValue = maxRange;
	    }
	  showSpan.innerHTML = startMin + " to "+maxValue+""+unitText+(( maxValue == maxRange) ? "+":""); //+ maxRange +" "+unitVal;
	  unitText = unitVal;
	  document.getElementById('maxprice').value = startMax;
	  maxValueRange = document.getElementById('maxprice').value;
  }
  function createBedsSlider(minbedVal, maxbedVal)
  {
        var startMin = 0;
        var startMax = 9;
        startMin = minbedVal == "" ? startMin:parseInt(minbedVal);
        startMax = maxbedVal == "" ? startMax:parseInt(maxbedVal);
        try
        {
            $('bedsSlider').style.display = "block" ;
            $('sizeSlider').style.display = "none" ;
            $('divTextRoom-Size').innerHTML = "Bedrooms"
             var bedsValues = [startMin, startMax];
		     new Control.Slider([$('minBedsHandle'), $('maxBedsHandle')], 'bedsSlider', {
							range:$R(0, 9, false),
							values:[0,1,2,3,4,5,6,7,8,9],
							restricted:true,
							sliderValue: bedsValues,
							onSlide: updateBedrooms
							});	
							if(startMax == 9)
							{
							    document.getElementById('bedsText').innerHTML = ""+startMin + " to " + startMax+"+";
							}
							else
							{
							    document.getElementById('bedsText').innerHTML = ""+startMin + " to " + startMax;
							}
        }
        catch(ex)
        {}       
        
       
  }
  function createSizeSlider(minSizeVal, maxSizeVal)
  {
  
        var startMin = 0;
        var startMax = 20000;
     
        startMin = minSizeVal == "" ? startMin:parseInt(minSizeVal);
        startMax = maxSizeVal == "" ? startMax:parseInt(maxSizeVal);
        $('bedsSlider').style.display = "none" ;
        $('sizeSlider').style.display = "block" ;
        $('divTextRoom-Size').innerHTML = "Size Range"
        var SizeValues = [startMin, startMax];
		new Control.Slider([$('minSizeHandle'), $('maxSizeHandle')], 'sizeSlider', {
							range:$R(0, 20000, false),
							values:[0,100,500,1000,2000,3000,4000,5000,6000,7000,8000,9000,10000,11000,12000,13000,14000,15000,16000,17000,18000,19000,20000],
							restricted:true,
							sliderValue: SizeValues,
							onSlide: updateSizes
							});	
							if(startMax == 9 || startMax == 20000)
							{
							    document.getElementById('bedsText').innerHTML = "0 to 20000 sq.ft+";
							}
							else
							{
							    document.getElementById('bedsText').innerHTML = ""+startMin + " to " +startMax +" sq.ft" ;
							}
  }
  
  function defaultIntailizer()
  {
        changeSliders('','');
        createBedsSlider('','');
                document.getElementById('bedsText').innerHTML = "0 to 9+";
                /*var sel =  document.getElementById('category');
                    sel.options[0] = document.createElement("option", true);
                    sel.options[0].text = "Property Type";
                    sel.options[0].value = "-1";*/
  }
	   