// JavaScript Document
document.ISGECKO = /gecko/i.test(navigator.userAgent);
document.ISFF3 = /Firefox\/3/i.test(navigator.userAgent);
document.ISMSIE  = /MSIE/.test(navigator.userAgent);
document.ISMSIE7  = /MSIE 7/.test(navigator.userAgent);
document.ISMSIE6  = /MSIE 6/.test(navigator.userAgent);

// Utilizado para evitar de digitar: document.getElementById toda hora, tornando o processo mais prático
function gE(ID) {
	return document.getElementById(ID);
}

// Utilizado para evitar de digitar: document.getElementsByTagName toda hora, tornando o processo mais prático
function gEs(tag) {
	return document.getElementsByTagName(tag);
}

function resultado(id){
	var a = new Ajax("resultado_busca.php");
	a.vars.add(new Array('id',id));
	a.showLoading(gE('impresu'),'carregando...');
	a.ajaxRetriev(gE('impresu'));
}

function calApicola(f){
	createShadow('divShadow');
	if(window.scrollY) scrSt = window.scrollY;
	else if(document.documentElement.scrollTop)	scrSt = document.documentElement.scrollTop;
	else scrSt = document.body.scrollTop;
	
	var scr = new getAbsoluteScreenSize();
	var boxCad = document.createElement('div');
	boxCad.setAttribute('id','boxCad');
	boxCad.style.width = "520px";
	boxCad.style.textAlign = 'center';
	boxCad.style.top = scrSt + 5 +'px';
	boxCad.style.left = scr.getWidth()/2-250 + 'px';
	document.body.appendChild(boxCad);

	var x = document.createElement('div');
	x.setAttribute('id','boxCadx');
	x.setAttribute('title','Fechar Janela');
	gE('boxCad').appendChild(x);
	gE('boxCadx').innerHTML = '[X] FECHAR';
	if(document.ISGECKO) gE('boxCadx').onclick = function(event){ removeShadow() };
	else gE('boxCadx').onclick = function(e){ removeShadow() };

	var img = document.createElement('img');
	img.style.border = '2px #CCC solid';
	img.src = 'intranet/source/calls/mods/leis/ages/photos/'+f;
	gE('boxCad').appendChild(img);	
}

//Função para mudar a posição das imagens
passaImagem.pos = 0; //valor inicial
function passaImagem(val,cod){
	var url = 'intranet/source/calls/mods/cads/clas/photos/bigs/';
	qtf = parseFloat(gE('tFotos').lang);
	if(!val){
		if(--passaImagem.pos < 0) {passaImagem.pos++; alert('Você está no início'); return false };
	}
	else
		if(++passaImagem.pos >= qtf) {passaImagem.pos--; alert('Você está no final'); return false };

	passaImagem.pos = (val) ? passaImagem.pos++	: passaImagem.pos--;
	gE('img400').src = url+'g'+cod+'_'+((1+ passaImagem.pos<10) ? '0' : '')+(1+ passaImagem.pos)+'.jpg';
	gE('msgtf').innerHTML = passaImagem.pos +1 +' / '+qtf;
}

function editAlpha(v){
	if(v==1){
		gE('btleft').style.opacity='0.95';
		gE('btleft').style.filter='alpha(opacity=95)';
		gE('tFotos').style.opacity='0.95';
		gE('tFotos').style.filter='alpha(opacity=95)';
	}
	else{
		gE('btleft').style.opacity='0.2';
		gE('btleft').style.filter='alpha(opacity=20)';
		gE('tFotos').style.opacity='0.2';
		gE('tFotos').style.filter='alpha(opacity=20)';
	}
}

//Função para abrir o escuro e mostrar os destalhes do imóvel
function detalheImovel(imovel){
	passaImagem.pos = 0;
	createShadow('divShadow');
	// Cria um 'container' que comportará o formulário de cadastro.
	var scr = new getAbsoluteScreenSize();
	var boxCad = document.createElement('div');
	boxCad.setAttribute('id','boxCad');
	boxCad.style.right = scr.getWidth()/2-400 + 'px';
	document.body.appendChild(boxCad);
	
	var ajax = new Ajax('classificado_detalhe.php');
	ajax.vars.add(new Array('idImovel',imovel));
	ajax.showLoading(gE('boxCad'),'carregando dados...');
	ajax.ajaxRetriev(gE('boxCad'));
}

//Função para abrir Página via Ajax
function abrePagina(area){
	var ajax = new Ajax(area+".php");
	abrePagina.a = 0;
	if(arguments.length>1){
		ajax.vars.add(new Array('id',arguments[1]));
		abrePagina.a = arguments[1];
	}
	else abrePagina.a = 0;
	if(area=='noticia') ajax.execInside = function(){ abreNots('noticia_ver',abrePagina.a) }
	if(area=='home') ajax.execInside = function(){ rotinAgenda() }
	if(area=='resultado') ajax.execInside = function(){ resultado(abrePagina.a) }
	ajax.showLoading(gE('corpo_pagina'),'carregando...')
	ajax.ajaxRetriev(gE('corpo_pagina'));
}

_act = 0;
function rotinAgenda(){
	rotinaEsconde();
	gE("letr"+_act).style.display = 'block';
	gE('letreiro').style.textDecoration = 'blink';
	setTimeout("mudaRotina()",3000);
	_act++;
	if(_act >= gE('letreiro').getAttribute('tam')) _act = 0;
}
function mudaRotina(){
	gE('letreiro').style.textDecoration = 'none';
	setTimeout("rotinAgenda()",8000);
}
function rotinaEsconde(){
	for(var i=0; i<gE('letreiro').getAttribute('tam'); i++)
		gE("letr"+i).style.display = 'none';
}

function abreNots(p,id){
	var a = new Ajax(p+'.php');
	a.vars.add(new Array('id',id));
	a.showLoading(gE('carnot'),'carregando notícia...');
	a.ajaxRetriev(gE('carnot'));
}

function buscaNoticia()
{
	var ajax = new Ajax('noticia_busca.php');
	if(gE('data15').checked)
    	ajax.vars.add(new Array('tempo',30));
	else if(gE('data30').checked)
    	ajax.vars.add(new Array('tempo',60));
	else
		ajax.vars.add(new Array('tempo',0));
	
	if(gE('corpoTexto').checked)
		ajax.vars.add(new Array('texto',1));
	ajax.vars.add(new Array('busca',gE('textoPalavra').value),null);
	ajax.vars.add(new Array('categoria',gE('categ').value));
	ajax.vars.add(new Array('quant',gE('quant').value));
    ajax.showLoading(gE('not'),'Buscando Notícias...');
	ajax.ajaxRetriev(gE('not'));
}

//Função para armezenar dados da VISITA
function regVisita(){
	var ajax = new Ajax('reg_visita.php');
	ajax.vars.add(new Array('navegador',navigator.appName),null);
	ajax.vars.add(new Array('versao',navigator.appVersion.substring(0,4)),null);
	ajax.vars.add(new Array('codificacao',navigator.appCodeName),null);
	ajax.vars.add(new Array('plataforma',navigator.platform),null);
	ajax.vars.add(new Array('historico',history.length),null);
	ajax.vars.add(new Array('java',navigator.javaEnabled()),null);
	ajax.vars.add(new Array('resolucao',screen.width+"x"+screen.height),null);
	ajax.vars.add(new Array('cor',window.screen.colorDepth+" bit"),null);
	ajax.ajaxRetriev(gE('qq'));
}

// Função para verificar o FALE CONOSCO
function criticaFale(){
	if(gE('f_nome').value==''){
		alert('Campo obrigatório [ NOME ] não preenchido.');
		gE('f_nome').focus();
		return false;
	}
	if(gE('f_cidade').value==''){
		alert('Campo obrigatório [ CIDADE ] não preenchido.');
		gE('f_cidade').focus();
		return false;
	}
	if(gE('f_estado').value==''){
		alert('Campo obrigatório [ ESTADO ] não preenchido.');
		gE('f_estado').focus();
		return false;
	}
	if(gE('formMsg').value==''){
		alert('Campo obrigatório [ MENSAGEM ] não preenchido.');
		gE('formMsg').focus();
		return false;
	}
	return true;
}

//Função ajax para ENVIAR O FALE CONOSCO
function enviaFale(){
	var ajax = new Ajax('contato_envia.php');
	ajax.vars.add(new Array('assunto',gE('f_nome').getAttribute('assunto')));
	ajax.vars.add(new Array('nome',gE('f_nome').value),null);
	ajax.vars.add(new Array('email',gE('f_email').value.toLowerCase()),null);
	ajax.vars.add(new Array('formAssunto',gE('formAssunto').value));
	ajax.vars.add(new Array('cidade',gE('f_cidade').value));
	ajax.vars.add(new Array('estado',gE('f_estado').value));
	ajax.vars.add(new Array('formMsg',gE('formMsg').value));
	ajax.showLoading(gE('formFale'),'Carregando...');
	ajax.ajaxRetriev(gE('formFale'));
}

// Função que valida o e-mail informado
function validaEmail(email){
	return email.search(/(\w[\w\.\+]+)@(.+)\.(\w+)$/)==0;
}

//Função para CRIAR a div escura no fundo da tela
function createShadow(str){
	var selects = document.getElementsByTagName('select');
	        
	for(var i = 0; i< selects.length; i++)
		if(document.ISMSIE) selects[i].style.visibility='hidden';

	showDarkMask('_shadow',0,0.80);
    var sz = new getAbsoluteScreenSize();
}

//Função para CRIAR a div escura no fundo da tela
function showDarkMask(id){
	if(showDarkMask.arguments.length == 2){
		try{document.body.removeChild(document.getElementById(id))}catch(err){}
		return;
	}
	
	document.body.style.overflow='hidden';
	var darkmask = 	document.createElement('div'); // container box
	var scr = new getAbsoluteScreenSize();
		
	darkmask.style.position='absolute';
	darkmask.style.left='0';
	darkmask.style.top='0';
	darkmask.style.backgroundColor='#000';
	var o = (showDarkMask.arguments.length == 3) ? showDarkMask.arguments[2] : 0;
	o = document.ISGECKO ? o : (o*100); 
	document.ISGECKO ? darkmask.style.MozOpacity = o : darkmask.style.filter = 'alpha(opacity='+o+')';
    darkmask.style.width= scr.getWidth() + 'px';
    darkmask.style.zIndex = '4';
	darkmask.style.height = scr.getHeight() +200 + 'px';
	darkmask.setAttribute('id',id);

	document.body.appendChild(darkmask);
}

//Função para pegar o WIDHT e HEIGHT da página
function getAbsoluteScreenSize(){
	var lure = document.body.appendChild(document.createElement('b'));
	lure.style.position='absolute';
	lure.style.fontSize=0;
	lure.style.padding=0;
	lure.style.right=0;
	lure.style.bottom=0;
	
	this.getWidth = function getWidth(){return lure.offsetLeft};
	this.getHeight = function getHeight(){return lure.offsetTop};
}

//Função para REMOVER a div escura da página
function removeShadow(){
    var selects = document.getElementsByTagName('select');
        
    for(var i = 0; i< selects.length; i++)
		if(document.ISMSIE) selects[i].style.visibility='visible';

	document.body.removeChild(document.getElementById('_shadow'));
	document.body.style.overflow='scroll';

	var boxCad = gE('boxCad');
	if(boxCad) { // Por que ao clicar X (para deletar um registro) cria-se somente o encobridor e não o boxCad	
		boxCad.parentNode.removeChild(boxCad);
	}
}

function dfMask(e,l,s,c,f) 
{
		//110,190,188
		//------------------------------------------------------------------------------------------
		// e = evento / l = array de tamanho dos segmentos / t = tamanho da string
		//s = spacamento, c = caracter do spacamento
		// função retorna true qdo a mascara estiver completamente preenchida
	    // f = fixed tape mode, number or char (N,C)
		m = 0;  //tamanho máximo da entrada
		var t,sta,end;// target // start select // fim select
		var lim = new Array();  
		var exc = new Array(8,9,17,116) // exceções | inicialmente só backspace,tab,ctrl e f5
		if(arguments.length > 5)
			exc = new Array(8,9,17,116,110,190); // forma cachorra, melhorar depois
		c = new Array(s+1).join(c);
		t = (document.ISGECKO) ? e.currentTarget : e.srcElement;
		
		if(document.ISGECKO)
		{
			sta = end = t.selectionStart;
		}
		else
			sta = end = Math.abs(document.selection.createRange().moveStart("character", -1000000));		
		
		if(!t.value.length) // adiciona só no lenght 0, não há necessidade de repetição
		{
			try
			{
				t.removeEventListener("click",function(){t.selectionStart = t.value.length; t.selectionEnd  = t.value.length;},true);
				t.addEventListener("click",function(){t.selectionStart = t.value.length; t.selectionEnd   = t.value.length;},true);
				t.removeEventListener("select",function(){t.selectionStart = t.value.length; t.selectionEnd   = t.value.length;},true);
				t.addEventListener("select",function(){t.selectionStart = t.value.length; t.selectionEnd  = t.value.length;},true);
			}
			catch(err) //IE
			{
				t.detachEvent("onclick",function(e){var range = t.createTextRange(); range.moveStart("character", t.value.length); range.moveEnd("character", t.value.length); range.select();},true);
				t.attachEvent("onclick",function(e){var range = t.createTextRange(); range.moveStart("character", t.value.length); range.moveEnd("character", t.value.length); range.select();},true);
				t.detachEvent("onselect",function(e){var range = t.createTextRange(); range.moveStart("character", t.value.length); range.moveEnd("character", t.value.length); range.select();},true);
				t.attachEvent("onselect",function(e){var range = t.createTextRange(); range.moveStart("character", t.value.length); range.moveEnd("character", t.value.length); range.select();},true);
			}
		}
		for(var i in l){ m+= l[i]; lim[i] = (m+(s*i));}
		
		m = (m + (l.length - 1)*s);
		
        switch(f)
        {
            case 'N':
                var flag = (e.keyCode > 105 || e.keyCode < 48 || (e.keyCode > 57 && e.keyCode < 96)); 
            	break;
            case 'C':
                var flag = !(e.keyCode > 105 || e.keyCode < 48 || (e.keyCode > 57 && e.keyCode < 96)); 
        		break;
        }
        
        if(flag || t.value.length >= m) // apenas números
		{
			for(var i in exc)  // percorre o vetor de exceções
			{
				if(exc[i] == e.keyCode)
				{
					for(var j in lim)
					{
						if(sta == (lim[j]+s+1))
						{
							if(e.keyCode == 8) // inicialmente sem sentido (1 valor apenas)
							{
								t.value = t.value.substr(0,t.value.length-s);
							}
							else
								continue;
						}
					}
					return false;
				}
			}
			
			try{e.preventDefault();}catch(err){e.returnValue = false}
			
			return ((t.value.length+1) >=m) ? true : false;
		}
		else
		{
			for(var i = 0; i< l.length -1; i++) 
				if(t.value.length == lim[i])
					t.value += c;
				
			return ((t.value.length+1) >=m) ? true : false;
		}
}