var multiplyBy = 1;
var unitText = "m";
var maxValueRange = "";
var Currency = "";
var sharfo = 0;
var mslider = null;
function updatePrices(v)
{	
	if(window.navigator.userAgent.indexOf('Firefox') > 0)
    {
        $('priceText').innerHTML=""+v[0] + ' to ' + v[1] + ((Number(v[1]) == maxValueRange) ? ""+unitText+" + (AED)" : ""+unitText+" (AED)");
	    $('minprice').value = v[0] * multiplyBy;
	    $('maxprice').value = v[1] * multiplyBy;
    	
	    $('priceDiv').style.left = (parseInt($('minPriceHandle').style.left)) + "px"; 
        $('priceDiv').style.width =  (((parseInt( $('maxPriceHandle').style.left)) - parseInt( $('minPriceHandle').style.left)))+"px";
    }
    else
    {
        if(sharfo % 1 == 0)
        {
	        $('priceText').innerHTML=""+v[0] + ' to ' + v[1] + ((Number(v[1]) == maxValueRange) ? ""+unitText+" + (AED)" : ""+unitText+" (AED)");
	        $('minprice').value = v[0] * multiplyBy;
	        $('maxprice').value = v[1] * multiplyBy;
        	
	        $('priceDiv').style.left = (parseInt($('minPriceHandle').style.left)) + "px"; 
            $('priceDiv').style.width =  (((parseInt( $('maxPriceHandle').style.left)) - parseInt( $('minPriceHandle').style.left)))+"px";
	    }
	    sharfo += 2;
	}
}

function updateBedrooms(v)
{
    $('bedDiv').style.left = (parseInt($('minBedsHandle').style.left)) + "px"; 
    $('bedDiv').style.width =  (((parseInt( $('maxBedsHandle').style.left)) - parseInt( $('minBedsHandle').style.left) - 10))+"px"
	
    $('bedsText').innerHTML = "<span class='slider-text2' style='font-size:11px; float:right;'>" + v[0] + ' - ' + v[1] + ((Number(v[1]) == 9) ? "+"+"</span>" : "");
	$('minbeds').value = v[0];
	$('maxbeds').value = v[1];
}

function updateSizes(v)
{
    $('sizeDiv').style.left = ((parseInt($('minSizeHandle').style.left))) + "px";
    $('sizeDiv').style.width =  (((parseInt( $('maxSizeHandle').style.left)) - parseInt( $('minSizeHandle').style.left)))+"px"
    
	$('bedsText').innerHTML="<span class='slider-text2' style='font-size:11px;float:right;'>" + v[0] + ' - ' +v[1] + ((Number(v[1]) == 20000) ? " Sq.Ft+"+"</span>" : "Sq.Ft");
    $('minsize').value = v[0];
    $('maxsize').value = v[1];
}

function changeAction(obj,countryShortName)
{
    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;
        }
    }
   
    var value = "";
    value = obj.options[obj.selectedIndex].value;
    var TargetString = "";
    switch (value)
	{

        case "1":
        {
        TargetString = "All Residential:35,36|All Commercial:37,38,39,40|Villa:36|Apartment:35|Office Space:37|Retail Space:40|Warehouse:39|LabourHousing:38";
        break;        
        }
   
        case "2":
        {
        TargetString = "All Residential:35,36|All Commercial:37,38,39,40|Villa:36|Apartment:35|Office Space:37|Retail Space:40|Warehouse:39|Labour Housing:38";
        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  == "1")//RENT
    {
        document.getElementById("PriceSliderDiv").style.display = "block";
        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 == "36" || compareObject == "35" || selVal == "residential" )
    {
       if(document.getElementById("serviceTypeId").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 ==  "40" || compareObject ==  "39" || compareObject ==  "38"  || compareObject ==  "-1" || selVal == "commercial")
    {
        document.getElementById("PriceSliderDiv").style.display = "block";   
        if(usePerSelect == "true")
        {}
        else
        {
            //createSizeSlider('','');
            //document.getElementById('bedsText').innerHTML = '1 to 20000 Sq.Ft+';  
        }
    } 
       
}
function validateCriteria()
{
    var objLookingFor = document.getElementById('serviceTypeId');
    if(objLookingFor.value == "0")
    {
        alert("Please select \"I am looking to\"");
        return false;
    }
    
    else
    {
      var region = document.getElementById('myArea');
      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.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 = '1'
       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;
}
var postingURL = '';var postingCountryId ='';

function updateRegions(obj,countryId, url,perSel){
    postingURL = url;
    postingCountryId = countryId;
    if(obj.options.selectedIndex > 0){
        var type = "basic.myArea.selection";
        var cityId = obj.options[obj.options.selectedIndex].value;
        CreateXmlHttpRequest();
        var mydate = new Date();
        url+="?city=" + cityId;
        url+="&countryId="+countryId;
        url+="&type="+type;
        url+="&cacheId="+mydate.getTime();
        request.onreadystatechange = fillRegions;
        request.open("GET", url, true);
        request.send(null);
        preSelDistrict = perSel;
        var form = document.getElementById('BasicSearchForm');
        
		var obj2 = document.getElementById('district');
        for(i=obj2.options.length -1; i >= 0; i--)
        {
            obj2.options[i] = null;
        }
        obj2.options[0] = document.createElement("option",true);
        obj2.options[0].value = -1;
        obj2.options[0].text = "Loading ...";
    }
    else
    {
        document.getElementById('district').options[0].selected = "selected";
        for(i=document.getElementById('district').options.length-1; i >=0; i--)
            {
                document.getElementById('district').options[i] = null;
            }
        var moption = document.createElement("option");
        moption.value = "-1";
	    moption.text = "- District -";
	    document.getElementById('district').options[document.getElementById('district').options.length] = moption;
    }
}

function fillRegions()
{
    if(request.readyState == 4)
    {
        if(request.status == 200)
        {
         
            var form = document.getElementById('BasicSearchForm');
			var obj = document.getElementById('district');
            for(i=obj.options.length-1; i >= 0; i--)
            {
                obj.options[i] = null;
            }
            
            if(request.responseText!="")
            {
                var newOptions = request.responseText.split("|");
                
                for(i=0 ; i < newOptions.length ; i++)
                {
                    obj.options[i] = document.createElement("option", true);
                    obj.options[i].value = newOptions[i].split("::")[1];
                    obj.options[i].text = newOptions[i].split("::")[0];  
                    if(preSelDistrict == obj.options[i].value)
                        {
                            obj.options[i].selected = 'selected';  
                        }               
                }
            }
            
           
        }
        else
        {
            //alert(request.status);
        }
    }
}

function updateCommunitiesByCity(obj, countryId, url, perSel) {
    postingURL = url;
    postingCountryId = countryId;
    if (obj.options.selectedIndex > 0) {
        var type = "basic.community.selection";
        var cityId = obj.options[obj.options.selectedIndex].value;
        CreateXmlHttpRequest();
        var mydate = new Date();
        url += "?city=" + cityId;
        url += "&countryId=" + countryId;
        url += "&type=" + type;
        url += "&cacheId=" + mydate.getTime();
        request.onreadystatechange = fillCommunitiesByCity;
        request.open("GET", url, true);
        request.send(null);
        preSelDistrict = perSel;
        var form = document.getElementById('BasicSearchForm');

        var obj2 = document.getElementById('lstCommunity');
        for (i = obj2.options.length - 1; i >= 0; i--) {
            obj2.options[i] = null;
        }
        obj2.options[0] = document.createElement("option", true);
        obj2.options[0].value = -1;
        obj2.options[0].text = "Loading ...";
    }
    else {
        document.getElementById('lstCommunity').options[0].selected = "selected";
        for (i = document.getElementById('lstCommunity').options.length - 1; i >= 0; i--) {
            document.getElementById('lstCommunity').options[i] = null;
        }
        var moption = document.createElement("option");
        moption.value = "-2";
        moption.text = "- All Communities -";
        document.getElementById('lstCommunity').options[document.getElementById('lstCommunity').options.length] = moption;
    }
}

function fillCommunitiesByCity() {
    if (request.readyState == 4) {
        if (request.status == 200) {

            var form = document.getElementById('BasicSearchForm');
            var obj = document.getElementById('lstCommunity');
            for (i = obj.options.length - 1; i >= 0; i--) {
                obj.options[i] = null;
            }

            if (request.responseText != "") {
                var newOptions = request.responseText.split("|");

                for (i = 0; i < newOptions.length; i++) {
                    obj.options[i] = document.createElement("option", true);
                    obj.options[i].value = newOptions[i].split("::")[1];
                    obj.options[i].text = newOptions[i].split("::")[0];
                    if (preSelDistrict == obj.options[i].value) {
                        obj.options[i].selected = 'selected';
                    }
                }
            }


        }
        else {
            //alert(request.status);
        }
    }
} 

var preSelProj="";
function changeSliders(minValue, maxValue,serviceType,category)
  {  
       var ServiceType  = 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 categoryIdMajor =  document.getElementById('categoryIdMajor');
       var arr = [0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20];
       
       if(ServiceType.value == "1")//Buy
       {
            if(categoryIdMajor.value == "1")
            {
                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(ServiceType.value == "2")//Rent
       {
       
            
             if(categoryIdMajor.value == "1")
            {
                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];
       if(mslider != null)
            mslider.dispose();
                 
	   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 + " - "+maxValue+""+unitText+(( maxValue == maxRange) ? "+ (AED)":" (AED)"); //+ maxRange +" "+unitVal;
	  unitText = unitVal ;
	  document.getElementById('maxprice').value = startMax;
	  maxValueRange = document.getElementById('maxprice').value;
	  
	  
	 $('priceDiv').style.left = (parseInt($('minPriceHandle').style.left)) + "px"; // parseInt($('WhiteDiv').style.width) - "1" + "%";
	 $('priceDiv').style.width = (((parseInt($('maxPriceHandle').style.left)) - parseInt($('minPriceHandle').style.left))) + "px";
	 if (categoryIdMajor.value == "1") {
	     $('bedDiv').style.left = (parseInt($('minBedsHandle').style.left)) + "px"; // parseInt($('WhiteDiv').style.width) - "1" + "%";
	     $('bedDiv').style.width = (((parseInt($('maxBedsHandle').style.left)) - parseInt($('minBedsHandle').style.left))) + "px";
	 } else {
	     $('sizeDiv').style.left = (parseInt($('minSizeHandle').style.left)) + "px"; // parseInt($('WhiteDiv').style.width) - "1" + "%";
	     $('sizeDiv').style.width = (((parseInt($('maxSizeHandle').style.left)) - parseInt($('minSizeHandle').style.left))) + "px";
	 }
	 
	  
	  
	
  }
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 + " - " + startMax+"+";
		}
		else
		{
		    document.getElementById('bedsText').innerHTML = ""+startMin + " - " + startMax;
		}
    }
    catch(ex)
    {}          
}
function createSizeSlider(minSizeVal, maxSizeVal)
{

var startMin = 1;
var startMax = 20000;

startMin = minSizeVal == "" ? 1:parseInt(minSizeVal);
startMax = maxSizeVal == "" ? 20000:parseInt(maxSizeVal);
$('bedsSlider').style.display = "none" ;
$('sizeSlider').style.display = "block" ;
$('divTextRoom-Size').innerHTML = "Size";
$('divTextRoom-Size').style.marginRight = "0px";
var SizeValues = [startMin, startMax];
new Control.Slider([$('minSizeHandle'), $('maxSizeHandle')], 'sizeSlider', {
		range:$R(1, 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 == 20000)
{
    document.getElementById('bedsText').innerHTML = "<span class='slider-text2' style='font-size: 11px; float: right;'>"+startMin + " - 20000 Sq.Ft+</span>";
}
else
{
    document.getElementById('bedsText').innerHTML = "<span class='slider-text2' style='font-size: 11px; float: right;'>" + startMin + " - " + startMax + "Sq.Ft</span>";
}
}
  
function defaultIntailizer()
{
    changeSliders('','','serviceTypeId','ddlCategory');
    createBedsSlider('','');
    document.getElementById('bedsText').innerHTML = "<span class='slider-text2' style='font-size: 11px; float: right;'>0 - 10m+</span>";
    var sel =  document.getElementById('ddlCategory');
    sel.options[0] = document.createElement("option", true);
    sel.options[0].text = "Property Type";
    sel.options[0].value = "-1";
}

function updateMajorCategory(obj) {
    var val = jQuery("#category").val();
    // Case Residential 
    if (val.indexOf("34") > -1 || val.indexOf("35") > -1 || val.indexOf("36") > -1 || val.indexOf("32") > -1 || val.indexOf("42") > -1) {

        jQuery("#categoryIdMajor").val("1");
        createBedsSlider('0', '9');
        jQuery('#minsize').val('0');
        jQuery('#maxsize').val('20000');

        if (jQuery('#serviceTypeId').val() == "1") { //Residential Sales
            changeSliders('0', '20', 'serviceTypeId', 'category');
            jQuery('#maxprice').val('20');
            jQuery('#minprice').val('0');
        }
        else {
            changeSliders('0', '300', 'serviceTypeId', 'category'); // Residential Lease
            jQuery('#maxprice').val('300');
            jQuery('#minprice').val('0');
        }
        jQuery('#minbeds').val('0');
        jQuery('#maxbeds').val('9');

    }
    else {
        // Case Commercial   
        jQuery("#categoryIdMajor").val("2");
        createSizeSlider('0', '20000');


        if (jQuery('#serviceTypeId').val() == "1") { // Commercial Sales
            changeSliders('0', '10', 'serviceTypeId', 'category');
            jQuery('#maxprice').val('10');
            jQuery('#minprice').val('0');
        } else {
            changeSliders('0', '2', 'serviceTypeId', 'category'); // Commercial Lease
            jQuery('#maxprice').val('2');
            jQuery('#minprice').val('0');
        }
        jQuery('#minsize').val('0');
        jQuery('#maxsize').val('20000');

    }
}
  
