function empty(mixed_var){var key;if(mixed_var===""||mixed_var===0||mixed_var==="0"||mixed_var===null||mixed_var===false||typeof mixed_var==='undefined'){return true};if(typeof mixed_var=='object'){for(key in mixed_var){return false};return true};return false;}

function post_to_url(path, params, method) {method = method || "post";var form = document.createElement("form");form.setAttribute("method", method);form.setAttribute("action", path);for(var key in params) {var hiddenField = document.createElement("input");hiddenField.setAttribute("type", "hidden");hiddenField.setAttribute("name", key);hiddenField.setAttribute("value", params[key]);form.appendChild(hiddenField);}document.body.appendChild(form);form.submit();}

$(document).ready(function(){
	
	// No caso de existir um hash ao abrir a pâ€¡gina, fazer o scroll automÃ¡tico
	if(window.location.hash){
	  myhash=window.location.hash.split('?',2);
	  //if(myhash[0]!='#'){
	  //  $.scrollTo(myhash[0],1500);
	  //}
	  if(myhash[1]){
	    var opcoes=myhash[1].split('&');
	    for(i=0;i<opcoes.length;i++){
	      opcao=opcoes[i].split('=',2);
	      $('*[name='+opcao[0]+']').val(opcao[1]);
	    }
	  }
	}
	
	// Lightbox
	$('#gallery a').lightBox();
	
	
	// Procuras
	if(!empty(negocios) && !empty(tipos)){
		// Definir Negocios
		var output = [];
		output.push('<select id="procura-negocio">');
		output.push('<option value=""></option>');
		for(i in negocios){
		output.push('<option value="'+ negocios[i]['id'] +'">'+ negocios[i]['negocio'] +'</option>');
		};
		output.push('</select>');
		$('#procura-negocio').replaceWith(output.join(''));
		
		// Definir Tipos
		var output = [];
		output.push('<select id="procura-tipo">');
		output.push('<option value=""></option>');
		for(i in tipos){
			output.push('<option value="'+ tipos[i]['id'] +'">'+ tipos[i]['tipo'] +'</option>');
		};
		output.push('</select>');
		$('#procura-tipo').replaceWith(output.join(''));
		
		// Definir Slider
		var preco_slider_max = 250000;
		var preco_slider_value_min = 0;
		var preco_slider_value_max = preco_slider_max;
		

		function setSliderPrecoInfo(){
			var values = $( '#procura-preco' ).slider( "option", "values" );
			preco_slider_value_min = values[0];
			preco_slider_value_max = values[1];
			if(preco_slider_value_max != $('#procura-preco').slider( "option", "max" )){
				$( "#procura-preco-display" ).text( preco_slider_value_min + "€ - " + preco_slider_value_max + "€" );
			}else{
				$( "#procura-preco-display" ).text( preco_slider_value_min + "€ - Máximo" );
			}
		}

		$('#procura-preco').before('<p id="procura-preco-display"></p>').slider({
			range: true,
			min: 0,
			max: preco_slider_max,
			step: 2000,
			values: [ preco_slider_value_min , preco_slider_value_max ],
		}).bind('slide',function(event,ui){
			setSliderPrecoInfo();
		});
		setSliderPrecoInfo();
		
	
		// Se o tipo for alterado, temos que alterar o raio
		$('#procura-negocio').change(function(){
			if($(this).val() == 1)
				$('#procura-preco').slider( "option", "max", preco_slider_max ).slider( "option", "step", 2000 )/*.slider( "option", "values", [0,preco_slider_max] )*/;
			if($(this).val() == 2)
				$('#procura-preco').slider( "option", "max", 3000 ).slider( "option", "step", 100 )/*.slider( "option", "values", [0,3000] )*/;
			
			setSliderPrecoInfo();
		});
		
		// No caso de existirem valores na pesquisa, popula-los
		if(!empty(pesquisa)){
			if(!empty(pesquisa['min_preco'])){
				$preco = $( '#procura-preco' );
				var values = $preco.slider( "option", "values" );
				preco_slider_value_min = pesquisa['min_preco'];
				preco_slider_value_max = values[1];
				$preco.slider( "option", "values", [preco_slider_value_min,preco_slider_value_max] );
				setSliderPrecoInfo();
			}
			
			if(!empty(pesquisa['max_preco'])){
				$preco = $( '#procura-preco' );
				var values = $preco.slider( "option", "values" );
				preco_slider_value_min = values[0];
				preco_slider_value_max = pesquisa['max_preco'];
				$preco.slider( "option", "values", [preco_slider_value_min,preco_slider_value_max] );
				setSliderPrecoInfo();
			}
			
			if(!empty(pesquisa['tipo'])){
				$('#procura-tipo').val(pesquisa['tipo']).change();
				setSliderPrecoInfo();
			}
			
			if(!empty(pesquisa['negocio'])){
				$('#procura-negocio').val(pesquisa['negocio']).change();
			}
		}
		
		$('.search input.btnsubmit,.search_top input.btnsubmit').click(function(){
			var getarray=new Array();
			
			if(preco_slider_value_min != 0){
				getarray['filtro[min_preco]'] = preco_slider_value_min;
			}
			if(preco_slider_value_max != $('#procura-preco').slider("option","max")){
				getarray['filtro[max_preco]'] = preco_slider_value_max;
			}
			getarray['filtro[tipo]'] = $('#procura-tipo').val();
			getarray['filtro[negocio]'] = $('#procura-negocio').val();
			
			var get='/mdimobiliario/pesquisa?'; i=1;
			for( x in getarray){	
				if(!empty(getarray[x])){
					if(i>1){get+='&';}
					get+=x+'='+getarray[x];
					i++;
				}
			}
			window.location = get;
			return false;
		});
	}
});
