

var movingDiv = false;
function rolar( dir , div){
		
		x = y = 0;
		switch(dir){
				case  'left': x = 1;break;
				case  'right': x = -1;break;
				case  'top': y = 1;break;
				case  'bottom': y = -1;break;
		}
		
		dw = $(div).down().getWidth() + 5;
		divWidth =  -1 * (div.getWidth()-div.up().getWidth());
		p = div.positionedOffset().left + x * dw;
		
		dh = $(div).down().getHeight();
		divHeight =  -1 * (div.getHeight()-div.up().getHeight());
		q = div.positionedOffset().top + y * dh;
		
		//$('debug').update(dir + ' | '+q + ' | '+ divHeight );
		
		if(div.getHeight() == div.up().getHeight()){
			if(divWidth <= p && p <= 0){
					document.stopObserving('mousemove', respondToMouseMove);
						new Effect.MoveBy( div, 0 ,x * dw,{duration: 1,transition: Effect.Transitions.linear,afterFinish:function(){
							document.observe('mousemove', respondToMouseMove);
						}});
			}
		}else{
			if(divHeight <= q && q <= 0){
					document.stopObserving('mousemove', respondToMouseMove);
						new Effect.MoveBy( div, y * dh, 0,{duration: 1,transition: Effect.Transitions.linear,afterFinish:function(){
							document.observe('mousemove', respondToMouseMove);
						}});
			}
		}
}
document.observe('mousemove', respondToMouseMove);
function respondToMouseMove(event) {

	Try.these(function(){
	
	$$('.listaRolagem').each(function(_ele){
		var _parent = _ele.up();
		  var xmouse = Event.pointerX(event);
		  var ymouse = Event.pointerY(event);
		  xgal = xmouse - _parent.cumulativeOffset().left;
		  ygal = ymouse - _parent.cumulativeOffset().top;
		  if(_parent.cumulativeOffset().top < ymouse && ymouse < (_parent.cumulativeOffset().top + _parent.getHeight()) &&
			 _parent.cumulativeOffset().left < xmouse && xmouse < (_parent.cumulativeOffset().left + _parent.getWidth())){
			  if(0 < xgal && xgal < 50){
					  rolar('left',_ele);
			  }else if((_parent.getWidth() - 50) < xgal && xgal < _parent.getWidth()){
					  rolar('right',_ele);
			  }else if(0 < ygal && ygal < 50){
					  rolar('top',_ele);
			  }else if((_parent.getHeight() - 50) < ygal && ygal < _parent.getHeight()){
					  rolar('bottom',_ele);
			  }
		  }
		})
	});

}

function trocaFoto(_imovel,_foto){
	$("fotoGrd").update('Carregando');
	
	new Ajax.Updater($("fotoGrd"),'http://www.getulioimoveis.com.br/_Request/fotoGrd/'+_imovel+'@'+_foto);
	if(pageTracker) pageTracker._trackEvent('Imagem', 'Trocar',$('fotoPqn_'+_foto).title,$('fotoPqn_'+_foto).alt);
	return false;
}
function expandir(_ele, options){
	//alert(options)
	if(pageTracker) pageTracker._trackEvent(_ele.getAttribute('gCat'),_ele.getAttribute('gAction'),_ele.getAttribute('gLabel'),_ele.getAttribute('gValue'));
	
	if(options.img == true)
		hs.expand(_ele, options);
	else
		hs.htmlExpand(_ele, options);
	return false;
}
                    
function sendWindowForm( divForm, _form ){
	divResp = 'emailResponse'+divForm;
	var valid = new Validation( _form ,{onSubmit:false});
	if(valid.validate()){
		var _last = $(_form).down('.submitButton');
		//_last.disabled = true;
		
		if(!_last.up('div').hasClassName('emailResponse')){
			var emailResponse = new Element('div', { 'id': divResp, 'class': 'emailResponse' });
			var emailResponseMsg = new Element('div', { 'id': 'emailResponseMsg' });
			//$(_last).wrap(emailResponseMsg).wrap(emailResponse);
			$(emailResponse).insert(emailResponseMsg);
			$(_last).insert({after:emailResponse});
		}
		
		$('emailResponseMsg').show().update('Enviando...').addClassName('emailResponseEnviando');
		new Ajax.Request('http://www.getulioimoveis.com.br/_Request/',{
						
					  parameters: $(_form).serialize(),
					  onComplete: function(resposta) {
					  	if(resposta.responseText.isJSON()){
							var res = resposta.responseText.evalJSON();
							if(res.status == 'ok'){
								$('emailResponseMsg').update(res.mensagem)
									.removeClassName('emailResponseErro')
									.removeClassName('emailResponseEnviando')
									.addClassName('emailResponseEnviada');
								
								if(res.mensagem){
									//$(_form).scrollIntoView();
									$('emailResponseMsg').pulsate();
									if(pageTracker) pageTracker._trackEvent("Formulário","Enviar",divForm,1);
								}else{
									$('emailResponseMsg').remove();
								}
								//$(_form).reset();
								if(res.script)
									eval(res.script);
							}else{
								$('emailResponseMsg')
									.update(res.mensagem)
									.removeClassName('emailResponseEnviando')
									.addClassName('emailResponseErro');
								//$(_form).scrollIntoView();
								$('emailResponseMsg').pulsate();
								if(pageTracker) pageTracker._trackEvent("Formulário","Enviar",divForm,0);
							}
						}else{
							$('emailResponseMsg')
								.update('Não foi possível executar esta função neste momento. Tente novamente, por favor ou envie e-mail para <a href="contato@mazaya.com.br">contato@mazaya.com.br</a>.')
								.removeClassName('emailResponseEnviando')
								.addClassName('emailResponseErro');
							//$(_form).scrollIntoView();
							$('emailResponseMsg').pulsate();
							if(pageTracker) pageTracker._trackEvent("Formulário","Enviar",divForm,0);
						}
					  }		});
		_last.disabled = false;
	}
	return false;
}
function mascara( ){
	setTimeout("",1)
	
	v = this.value;
	mask = this.readAttribute('mask')
	
	switch(mask){
		case 'numeros':
			v=v.replace(/\D/g,"")
			this.value = v
			break;
		case 'telefone':
			v=v.replace(/\D/g,"")                 //Remove tudo o que não é dígito
			v=v.replace(/^(\d\d)(\d)/g,"($1) $2") //Coloca parênteses em volta dos dois primeiros dígitos
			v=v.replace(/(\d{4})(\d)/,"$1-$2")    //Coloca hífen entre o quarto e o quinto dígitos
			this.value = v
			break;
		case 'data':
			v=v.replace(/\D/g,"")                    //Remove tudo o que não é dígito
			v=v.replace(/(\d{2})(\d)/,"$1/$2")       //Coloca um ponto entre o terceiro e o quarto dígitos
			v=v.replace(/(\d{2})(\d)/,"$1/$2")       //Coloca um ponto entre o terceiro e o quarto dígitos
			v=v.replace(/(\d{2})(\d{4})$/,"$1/$2") //Coloca um hífen entre o terceiro e o quarto dígitos
			this.value = v
			break;
		case 'cpf':
			v=v.replace(/\D/g,"")                    //Remove tudo o que não é dígito
			v=v.replace(/(\d{3})(\d)/,"$1.$2")       //Coloca um ponto entre o terceiro e o quarto dígitos
			v=v.replace(/(\d{3})(\d)/,"$1.$2")       //Coloca um ponto entre o terceiro e o quarto dígitos
			v=v.replace(/(\d{3})(\d{1,2})$/,"$1-$2") //Coloca um hífen entre o terceiro e o quarto dígitos
			this.value = v
			break;
		case 'cep':
			v=v.replace(/\D/g,"")                //Remove tudo o que não é dígito
			v=v.replace(/^(\d{5})(\d)/,"$1-$2") //Esse é tão fácil que não merece explicações
			this.value = v
			break;
		case 'cnpj':
			v=v.replace(/\D/g,"")                           //Remove tudo o que não é dígito
			v=v.replace(/^(\d{2})(\d)/,"$1.$2")             //Coloca ponto entre o segundo e o terceiro dígitos
			v=v.replace(/^(\d{2})\.(\d{3})(\d)/,"$1.$2.$3") //Coloca ponto entre o quinto e o sexto dígitos
			v=v.replace(/\.(\d{3})(\d)/,".$1/$2")           //Coloca uma barra entre o oitavo e o nono dígitos
			v=v.replace(/(\d{4})(\d)/,"$1-$2")              //Coloca um hífen depois do bloco de quatro dígitos
			this.value = v
			break;
		case 'dinheiro':
			v=v.replace(/\D/g,"")                //Remove tudo o que não é dígito
			v=v.replace(/(\d)(\d{2})$/,"$1,$2") //Esse é tão fácil que não merece explicações
			v=v.replace(/(\d)(\d{3}),(\d{2})$/,"$1.$2,$3")
			v=v.replace(/(\d)(\d{3}).(\d{3}),(\d{2})$/,"$1.$2.$3,$4")
			this.value = v
			break;
	}
	return false;
}


function setaOptions(){
	this.up().previous().update(this.innerHTML);
	this.up().up().previous().value = this.readAttribute('value');
	Effect.toggle(this.up(),'appear', { duration: 0.3 });
}
function exibiOptions( _div ){
	Effect.toggle($(_div),'appear', { duration: 0.3 });
	return false;
}
function enviaBusca(){
	if($F('ref') == "Referência") $('ref').value = '';
	window.location = 'http://www.getulioimoveis.com.br/Imoveis/Busca/'+$F('ci')+','+$F('tp')+','+$F('op')+','+$F('ref');
	return false;
}

document.observe('click', fechaOptions);

// Callback function to handle the event.
function fechaOptions(event) {
	
	var targ = event.element();
	if(!targ.descendantOf('busca'))
		$$('.buscaOptions').each(function(_ele){Effect.Fade($(_ele), { duration: 0.3 });})
}
function init() {	
	$$(".mascara").each(function(_ele){
		Event.observe(_ele, 'keyup', mascara.bindAsEventListener(_ele));
		Event.observe(_ele, 'keypress', mascara.bindAsEventListener(_ele));
		});
	$$("ul.buscaOptions li").each(function(_ele){
		Event.observe(_ele, 'click', setaOptions.bindAsEventListener(_ele));
		});
	
	$$('.flashReplace').each(function ( _ele ){
				var flashvars = _ele.readAttribute('flashvars').toQueryParams();
				var params = {
				  menu: "false",
				  scale: "scale",
				  quality: "high",
				  wmode: "transparent",
				  salign: "b",
				  allowfullscreen: "true",
				  allowscriptaccess : "always",
				  allownetworking : "all"
				};
				var attributes = {};
				swfobject.embedSWF(_ele.readAttribute('title'), _ele.id, _ele.getWidth(), _ele.getHeight(), "10","http://www.getulioimoveis.com.br/_shared/_swf/expressInstall.swf", flashvars, params, attributes);
	});
}

	
	
document.observe("dom:loaded",init);


hs.registerOverlay({
	overlayId: 'controlbar'
});
hs.align = 'center';
hs.graphicsDir = 'http://www.getulioimoveis.com.br/_shared/images/highslide/';
hs.cacheAjax = false;
hs.closeText = 'Fechar';
hs.loadingText = 'Carregando...';
hs.showCredits = false;
hs.allowMultipleInstances = true;
hs.dimmingOpacity = '0.7';
hs.captionEval = 'this.thumb.alt';
hs.captionId = 'the-caption';
hs.captionOverlay.position = "topright";

hs.wrapperClassName = 'dark borderless floating-caption';

hs.skin.contentWrapper = '<div class="highslide-body"></div>';

hs.Expander.prototype.onAfterExpand = function(){
	init();
	hh = this.a.href;
		pageTracker._trackEvent('Imagem', 'Expandir',this.a.title,this.a.alt);
	}


