﻿var multiplyBy = 1;
var unitText = "m";
var maxValueRange = "";
var Currency = "";
var sharfo = 1;
var mslider = null;

function updatePrices(v)
{
	/*$('priceText').innerHTML=""+v[0] + ' - ' + 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"; // parseInt($('WhiteDiv').style.width) - "1" + "%";
    $('priceDiv').style.width =  (((parseInt( $('maxPriceHandle').style.left)) - parseInt( $('minPriceHandle').style.left))-16)+"px"
	//alert(( parseInt(( $('maxBedsHandle').style.left)) -  parseInt(( $('minBedsHandle').style.left)))+"px");*/
	
	if(window.navigator.userAgent.indexOf('Firefox') > 0)
    {
        $('priceText').innerHTML=""+v[0] + ' - ' + 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)+7) + "px"; // parseInt($('WhiteDiv').style.width) - "1" + "%";
	   $('priceDiv').style.width =  (((parseInt( $('maxPriceHandle').style.left)) - parseInt( $('minPriceHandle').style.left))-7)+"px"
	    
	    
	    //$('priceDiv').style.left = (parseInt($('minPriceHandle').style.left)) + "px"; 
        //$('priceDiv').style.width =  (((parseInt( $('maxPriceHandle').style.left)) - parseInt( $('minPriceHandle').style.left))-13)+"px";
    }
    else
    {
   if(sharfo % 2 == 1)
    {
	$('priceText').innerHTML=""+v[0] + ' - ' + 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)+7) + "px";
	$('priceDiv').style.width =  (((parseInt( $('maxPriceHandle').style.left)) - parseInt( $('minPriceHandle').style.left))-7)+"px"
	
	    //$('priceDiv').style.left = (parseInt($('minPriceHandle').style.left)) + "px"; 
    //    $('priceDiv').style.width =  (((parseInt( $('maxPriceHandle').style.left)) - parseInt( $('minPriceHandle').style.left))-13)+"px";
	
	}
	sharfo ++;
	}
}

function updateBedrooms(v)
{
//$('WhiteDiv').style.width = parseInt($('WhiteDiv').style.width) - "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))-9)+"px"
    $('bedDiv').style.left = (parseInt($('minBedsHandle').style.left)+7) + "px";
	$('bedDiv').style.width =  (((parseInt( $('maxBedsHandle').style.left)) - parseInt( $('minBedsHandle').style.left))-7)+"px"
	
    $('bedsText').innerHTML="<span class = 'slider-text2' style='width:50px;'>" + 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))-16) + "px"; // parseInt($('WhiteDiv').style.width) - "1" + "%";
    //$('sizeDiv').style.width =  (((parseInt( $('maxSizeHandle').style.left)) - parseInt( $('minSizeHandle').style.left))-16)+"px"
    
    $('sizeDiv').style.left = (parseInt($('minSizeHandle').style.left)+7) + "px";
	$('sizeDiv').style.width =  (((parseInt( $('maxSizeHandle').style.left)) - parseInt( $('minSizeHandle').style.left))-7)+"px"
    
    
    
	$('bedsText').innerHTML="<span class='slider-text2' style='font-size:10px;float:left;'>" + v[0] + ' - ' +v[1] + ((Number(v[1]) == 20000) ? " Sq.Ft+"+"</span>" : "Sq.Ft");
    $('minsize').value = v[0];
    $('maxsize').value = v[1];
}

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';  
                        }               
                }
                 updateProjects(document.getElementById('district'),postingCountryId,postingURL,'');
            }
            
           
        }
        else
        {
            alert(request.status);
        }
    }
} 

var preSelProj="";
function updateProjects(obj,countryId, url,perSelProj){
    
        var type = "basic.project.selection";
        var districtId = obj.options[obj.options.selectedIndex].value;
        CreateXmlHttpRequest();
        var mydate = new Date();
        url+="?districtId=" + districtId;
        url+="&countryId="+countryId;
        url+="&serviceTypeId="+document.getElementById('serviceTypeId').value;
        url+="&categoryId="+((document.getElementById('chkResidential').checked)?"1":"2") ;
        url+="&minorCategory="+document.getElementById('ddlCategory').options[document.getElementById('ddlCategory').options.selectedIndex].value;
        url+="&type="+type;
        url+="&cacheId="+mydate.getTime();
        request.onreadystatechange = fillProjects;
       
        request.open("GET", url, true);
        request.send(null);
        preSelProj = perSelProj;
        var form = document.getElementById('BasicSearchForm');
        
		var obj2 = document.getElementById('project');
        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 ...";
    
}

function fillProjects()
{
    if(request.readyState == 4)
    {
        if(request.status == 200)
        {
         
            var form = document.getElementById('BasicSearchForm');
			var obj = document.getElementById('project');
            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 changeSliders(minValue, maxValue,serviceType)
  {  
       var ServiceType  = document.getElementById(serviceType);
       var showSpan = document.getElementById('priceText');
     
       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,320,340,360,380,400,420,440,460,480,500,520,540,560,580,600,620,640,660,680,700,720,740,760,780,800,820,840,860,880,900,920,940,960,980,1000];
                maxRange = 1000;
                startMax = maxValue == ""?1000: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)+7) + "px"; // parseInt($('WhiteDiv').style.width) - "1" + "%";
	   $('priceDiv').style.width =  (((parseInt( $('maxPriceHandle').style.left)) - parseInt( $('minPriceHandle').style.left))-7)+"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 = "By 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)
        {}       
        
    $('bedDiv').style.left = (parseInt($('minBedsHandle').style.left)+7) + "px";
	$('bedDiv').style.width =  (((parseInt( $('maxBedsHandle').style.left)) - parseInt( $('minBedsHandle').style.left))-7)+"px"
        
       
  }
  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: 10px; float:left;'>"+startMin + " - 20000 Sq.Ft+</span>";
							}
							else
							{
							    document.getElementById('bedsText').innerHTML = "<span class='slider-text2' style='font-size: 10px; float:left;'>"+startMin + " - " +startMax +"Sq.Ft</span>" ;
							}
					
					
    $('sizeDiv').style.left = (parseInt($('minSizeHandle').style.left)+7) + "px";
	$('sizeDiv').style.width =  (((parseInt( $('maxSizeHandle').style.left)) - parseInt( $('minSizeHandle').style.left))-7)+"px"
							
  }
  
  function defaultIntailizer()
  {
//        changeSliders('','','serviceTypeId','ddlCategory');
        createBedsSlider('','');
                document.getElementById('bedsText').innerHTML = "<span class='slider-text2' style='font-size: 10px; float:left;'>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";
  }
	   
