/*
	signey abr/2009
	http://code.google.com/intl/pt-BR/apis/maps/documentation/reference.html
	
	jul/2009
	 por area
*/
function loadMaps() {
	alert('foi ok...');
}


var vParaIE;
var verAreaM;


//*******************************************
//*******************************************
function selMun(o) {
	if (vazio(o)) {
		vParaIE = new selMun(11);
		return;
	}
	var htmlLetras;
	var eu = this;
	//lert('foi');
	var m;
	//lert(a);
	//a.innerHTML = '<h1>Teste</h1>';
	var uL;
	var lM;
	var baixando = 0;
	//setTimeout(init,500);
	x = new carregaUrl();
	x.abre(dev()?'?op=tabela&__tabela=Dado&__modo=mun&obj=1&nmun=*':'m.php?m=muns',init);
	debugIni('muns');
	//x.abre('?',init);
	//*******************************************
	function debugIni(s) {
		var t = browse.getId('carregando');
		if (t) {
			t.innerHTML += ' '+s+'...' ;
		}
	}
	//*******************************************
	this.selAb = function(ob) {
		var tb = getParentByTagName(ob,'table');
		tb.className = ob.className;
	}
	//*******************************************
	function init(a,b,txt) {
		//carrega tab mun/região
		debugIni('tabs');
		m = getTabela(txt);
		debugIni('reg');
		var v = new estat('reg');
		for (var i=1;i<m.length;i++) {
			v.inc(m[i][4],1);
		}
		//add opcoes regioes;
		var v1 = v.getMatriz();
		v1.sort(function(a,b){return fSort(a[0],b[0])});
		for (var i=0;i<v1.length;i++) {
			m[m.length] = new Array('*'+v1[i][0],'','','',v1[i][0]);
		}
		//if (dev()) 
			m[m.length] = new Array('*RS','','','','RS');
		//
		//lert(browse.ie+' m='+m.length+'='+m);
		
		
		//monta menu LETRAS
		debugIni('letr');
		var x;
		var al = 'ABCDEFGHIJLMNOPQRSTUVWX';
		var a = browse.getId('selMun');
		a.innerHTML = '';
		var t0 = new tabela(document,a,'selMun');
		x = t0.addRow('');
		p(x,0).className = 'tt';
		p(x,0).colSpan = 3;
		var t0r = t0.addRow();
		x = t0.addCol('');
		x.colSpan = 3;
		var t = new tabela(document,x,'selMunL');
		t.addRow();
		for (var i=0;i<al.length;i++) {
			//x = t.addCol(al.substring(i,i+1));
			x = t.addCol('<img src='+letra(al.substring(i,i+1),false)+'>');
			x.letra = al.substring(i,i+1);
			x.onclick = clicL;
		}
		//var td
		lM = t0.addRow('','','');
		lM.id = 'linhaDin';
		p(lM,0).className = 'Let';
		p(lM,1).className = 'Lis';
		p(lM,2).className = 'Lis';
		var l = ''+window.location;
		//lert(2+' '+l);
		if (l.indexOf('#')!=-1) {
			var l1 = troca(troca(tiraAcentos(substrAt(l,'#')).toLowerCase(),'%20',' '),'_',' ');
			l = loc(l1);
			if (l) {
				clicM(l);
			} else {
				alert('não achei...'+l1);
			}
		}
		//msIE não aceita, tem q reatribuir html
		debugIni('ie');
		if (true || browse.ie()) {
			htmlLetras = troca(troca(''+a.innerHTML,'"',''),'=selMunL','=selMunL onclick=vParaIE.clicL(event);');
			var h = (dev()?'<a href=# onclick=javascript:vParaIE.clicM(event);>RS</a>'
					+' - <a letra="*" href=# onclick=javascript:vParaIE.clicL(event,1);>Regioes</a> <br>'
					:''
				)
				//+ '<img src='+(dev()?'/estilos/':'')+'muns/malha_fatias_01.jpg>'
				+'<table class=modo><tr>'
				+'<td><img src='+(dev()?'/estilos/':'')+'muns/logo.jpg>'//'muns/malha_fatias_04.jpg>'
				+'<td class=modoM class=modoR onclick=javascript:vParaIE.selLet(event,1);>'
				//+'<td letra="*" class=modoR onclick=javascript:vParaIE.clicL(event,1);>'
				+'<td letra="*" class=modoR onclick=javascript:vParaIE.selLet(event,2);>'
				+'</table>'
				+'<div id=selLet></div>'
			;
			//objNav(a);
			//alert(h);
			//a.innerHTML = troca(h,'=selMunL','=selMunL onclick=vParaIE.clicL(event);');
			a.innerHTML = h;
			eu.clicL = clicL;
			eu.clicM = clicM;
			lM = false;
		}
		//var cLg = t0.addCol('L');
		//var cM = new Array(t0.addCol('m1'),t0.addCol('m2'));
		debugIni('fim');
		//alert('fim');
	}
	//*******************************************
	this.selLet = function(ev,n) {
		browse.getId('selLet').innerHTML = htmlLetras;
		if (n==2) {
			vParaIE.clicL(ev,1);
		}
	}

	//*******************************************
	function loc(nMun) {
		nMun = troca(tiraAcentos(nMun).toLowerCase(),'%20',' ');
		for (var i=1;i<m.length;i++) {
			var x = trimm(m[i][0],' ');
			if (tiraAcentos(x).toLowerCase()==nMun) {
				return i;
			}
		}
		return false;
	}
	//*******************************************
	function letra(let,sel) {
		return (dev()?'/estilos/':'')+'muns/'+let.toLowerCase()
			+(sel?'1':'')+'.jpg'
		;
	}
	//*******************************************
	function dev() {
		return (''+window.location).indexOf('.class')!=-1;
	}
	//*******************************************
	//clicou no nome mun & recebe dad do mun
	function clicM(ev,op,txt) {
		if (!lM) {
			lM = browse.getId('linhaDin');
		}
		//lert('lM='+lM+' op='+op+' '+erro());
		if (vazio(op)) {
			//ENVIA pedido
			//evita duplic pedido
			if (ms()-baixando<2000) {
				//ebJ('muitos clics...'+(ms()-baixando));
				return;
			}
			baixando = ms();
			//solicita DADOS mun
			var x = new carregaUrl();
			var oev = targetEvent(ev);
			//se clicou aba regiao add *
			var nrom = oev?loc((daClasse(oev,'ab3')?'*':'')+oev.innerHTML):ev;
			if (typeof(nrom)!='number') {
				alert('nao achei '+targetEvent(ev).innerHTML+' ev='+ev);
				return;
			}
			var nm = m[nrom][0];//trimm(ev.target.innerHTML);
			//lert('='+nm+'=');
			eu.mun = nrom;
			//lert('eu='+eu.mun);
			eu.uGeo = nm;
			if (dev()) {
				x.abre('?op=tabela&__tabela=Dado&__modo=mun&obj=1&nmun='+escape(tiraAcentos(nm)),clicM);
			} else {
				//lert('p/'+tiraAcentos(nm)+'.php');
				x.abre('m.php?m='+tiraAcentos(nm),clicM);
			}
			p(lM,0).innerHTML = '';
			p(lM,1).innerHTML = '';
			p(lM,2).innerHTML = '';
			browse.getId('resMun').innerHTML = '';//'<br><br><br><h1 style="text-align:center;">Aguarde...</h1>';
			return;
		}
		
		//recebe inf mun
		//lert(txt.substring(0,100));
		
		if (lM) {
			p(lM,0).innerHTML = '';
			p(lM,1).innerHTML = '';
			p(lM,2).innerHTML = '';
		}
		
		window.location = leftAt(window.location+'#','#')+'#'+troca(trimm(tiraAcentos(m[eu.mun][0])),' ','_');

		browse.getId('resMun').innerHTML = txt;
		
		//o mapa
		var mp = getElementsByClassName(browse.getId('resMun'),'munMp');
		if (mp.length>0) {
			setTimeout(fazMp,2000);
		}

		new estatWeb();

	}
	//*******************************************
	//o mapa, espera script..
	function fazMp() {
		//lert('mostra mapa...');
		var mu = m[eu.mun];
		var mp = getElementsByClassName(browse.getId('resMun'),'munMp');
		//lert('vai mapa='+mp.length);
		map = new GMap2(mp[0]);
		//lert(mu[1]+'  =   -30.04753, -51.227656   =='+mu[2]);
		//alert('mu='+mu);
		map.setCenter(new GLatLng(1*troca(mu[1],',','.'),1*troca(mu[2],',','.')), 13);
		map.setMapType(G_HYBRID_MAP);
		var customUI = map.getDefaultUI();
		// Remove MapType.G_HYBRID_MAP
		customUI.maptypes.hybrid = true;
		map.setUI(customUI);
		
	}
	//*******************************************
	//clicou na letra do mun
	function clicL(ev,reg) {
		var alvo = ev.target?ev.target:targetEvent(ev);
		if (uL && uL.letra && p(uL,0)) {
			//volta imagem normal pra ult letra;
			p(uL,0).src = letra(uL.letra,false);
		}
		uL = getParentByTagName(alvo,'td');
		//lert(uL);
		if (!uL.letra && uL.getAttribute('letra')) {
			uL.letra = uL.getAttribute('letra');
			//lert('letra='+uL.letra);
		}
		if (!uL.letra) {
			//nao identif a letra clicada
			var x = ''+(uL.getElementsByTagName('img')[0].src);
			uL.letra = (reg==1?'*':leftAt(substrRat(x,'/'),'.').toUpperCase());
		}
		//lert(uL.letra);
		//seta imagem como clicada?
		if (p(uL,0)) {
			p(uL,0).src = letra(uL.letra,true);
		}
		var l = trimm(uL.letra);
		lM = browse.getId('linhaDin');
		if (l=='*') {
			//elimina 1a linha tabela
			var tb = getParentByTagName(lM,'tbody');
			while (tb.childNodes.length>1) {
				tb.removeChild(tb.firstChild);
			}
		}
		//lert(l);
		p(lM,0).innerHTML = l;//+' '+m.length;
		p(lM,1).innerHTML = '';
		p(lM,2).innerHTML = '';
		//lert(l);
		
		var ns = 0;
		//conta quantos são pra equilibrar na tabela
		for (var i=1;i<m.length;i++) {
			//ebJ(m[i][0]+' 01='+m[i][0].substring(0,1)+' 1='+m[i][0]);
			if (tiraAcentos(m[i][0].substring(0,1))==l) {
				ns++;
			}
		}
		//lert(ns+' m='+m.length+' m='+m);
		var n = 0;
		for (var i=1;i<m.length;i++) {
			if (tiraAcentos(m[i][0].substring(0,1))==l) {
				var p1 = document.createElement('p');
				p1.className = n%2==1?'I':'';
				p1.innerHTML = trimm(m[i][0],' ');//m[i][0];//
				p1.setAttribute('mun',''+i);
				p(lM,1+(n>=ns/2?1:0)).appendChild(p1);
				p(lM,1+(n>=ns/2?1:0)).onclick = clicM;
				n++;
			}
		}
		p(lM,1).innerHTML = '<div onclick=vParaIE.clicM(event);>'+p(lM,1).innerHTML+'</div>';
		p(lM,2).innerHTML = '<div onclick=vParaIE.clicM(event);>'+p(lM,2).innerHTML+'</div>';
		browse.getId('resMun').innerHTML = '';
	}
}




//*******************************************
//*******************************************
function verArea(ob,area,tx) {
	//lert(ob);
	if (typeof(ob)=='string') {
		//seleciona aba clicada
		vParaIE.selAb(area);
		//chama por ajax
		var x = new carregaUrl();
		if ((window.location+'').indexOf('.class')!=-1) {
			x.abre(ob,verArea);
		} else {
			//lert(vParaIE.uGeo);
			x.abre('m.php?m='+tiraAcentos(vParaIE.uGeo)+(ob.indexOf('verArea=1')!=-1?'-1':''),verArea);
		}
		return;
	}
	if (typeof(ob)=='object') {
		//*********************************
		//mostra/esconde detalhes determinada AREA
		var lns = verAreaM;
		//clicou
		if (!verTop(ob)) {
			return;
		}
		var alvo = getParentByTagName(ob,'table');
		alvo = getElementsByClassName(alvo,'top_TabDivV')[0];
		//lert('mostrar area...'+alvo);
		objLimpa(alvo);
		var la = 0;
		alvo1 = document.createElement('div');
		var t = new tabela(document,alvo1,'acao acao_areas');
		//t.addRow(objClone(lns[0],document).childNodes.item(1));
		for (var i=0;i<lns.length-1;i++) { //pula cab e total
			var ln = lns[i];
			var aa = trimm(p(ln,1).innerHTML);
			if (i==0 || area==aa) {
				var a = objClone(ln,document);
				if (i!=0) {
					a.className = la++%2==0?'par':'impar';
				}
				a.removeChild(a.childNodes.item(1));
				t.addRow(a);
			}
		}
		t.addRow(objClone(lns[lns.length-1],document));
		//lert(substrAt(alvo1.innerHTML,'Fonte:'));
		alvo.innerHTML = troca(alvo1.innerHTML,'"%20','"');
		//alvo.innerHTML = ''+alvo.innerHTML;
		//alvo.appendChild(alvo1);
		return;
	}
	
	//************************************************
	// recebe dados..
	//************************************************
	var x = document.createElement('div');
	x.innerHTML = tx;
	
	
	//ver normal ou por area
	if (area.url.indexOf('&verArea=')==-1 && area.url.indexOf('-1')==-1) {
		//normal
		x = getElementsByClassName(x,'umMunDad')[0];
		var t = getElementsByClassName(document.body,'umMunDad')[0];
		t.innerHTML = x.innerHTML;
		return;
	}
	
	
	//é por area
	try {
		var t = getElementsByClassName(x,'acao')[0];//x.getElementsByClassName('acao')[0];
	} catch (e) {
		alert('Seu navegador não é compatível, instale o firefox!');
		window.open('http://www.mozilla.org.br','_blank');
		return;
	}
	t = getElementsByClassName(t,'acao')[0];//t.getElementsByClassName('acao')[0];
	//lert(t.innerHTML);
	//bjNav(t);
	//monta RESUMO areas existentes...
	var lns = t.getElementsByTagName('tr');//p(t,0);
	verAreaM = lns;
	var vt = new estat('por Area');
	for (var i=1;i<lns.length-1;i++) { //pula cab e total
		try {
			var ln = lns[i]//.childNodes.item(i);
			var area = trimm(p(ln,1).innerHTML);
			if (area!='-') {
				vt.inc(area,1*troca(troca(trimm(p(ln,3).innerHTML),'.',''),',','.'));
			}
		} catch (e) {
			//objNav(ln);
			//lert(i+' '+erro(e));
		}
	}
	//lert(vt.toHtml());
	//var d = 
	var v1 = vt.getMatriz();
	v1.sort(function(a,b){return fSort(a[0],b[0])});
	var r = '';
	for(var i=0;i<v1.length;i++) {
		r += '<table class=top><tr class=top_img>'
			+'<td class="top_imgE" onclick="verArea(this,\''+v1[i][0]+'\');">'
			+'<td class="top_imgC" onclick="verArea(this,\''+v1[i][0]+'\');">'
			+'<p class="top top_funcao top_'+troca(v1[i][0],' ','')+'"><span class=prg>'+v1[i][0]+'</span>'
				+' R$ <span class=dindin>'+format(v1[i][1],2)+'</span>'
			+'</p>'
			+'<tr><td colspan=3 class=top_Tab>'
			+'<div class="top_TabDiv">'
			+'<span>????</span>'
			+'</div>'
			+'</td></tr>'
			+'</table>'
		;
	}
	//r += '<tr><td>'+v1[i][0]+'<td>'+format(v1[i][1],0);

	var t = getElementsByClassName(document.body,'umMunDad')[0];
	//lert(lns.length+' '+t+' r='+r+' v1='+v1+' v1l='+v1.length);
	t.innerHTML = r; //vt.toHtml();
}


//*******************************************
//*******************************************
function verTop(ob) {
	//bjNav(ob);
	//var o = ob.parentNode.parentNode;
	var cl = 'top_TabDiv';
	var o = getElementsByClassName(ob.parentNode.parentNode,cl);
	if (o.length==0) { //ja aberto, então fecha
		o = getElementsByClassName(ob.parentNode.parentNode,cl+'V');
		if (o.length==0) {
			o = getElementsByAttr(ob.parentNode.parentNode,'className',cl);
			alert('não achei classe pra fechar..'+o.length+' '+(browse.ie?' sim':'nao'));
		} else {
			o[0].className = cl;
		}
		ob.className = 'top_imgC';
		return false;
	}
	o[0].className = cl+'V';
	ob.className = ' top_imgCV';
	return true;
}



//*******************************************
//*******************************************
function muns() {
	var o,o1,o2;
	setTimeout(init,1500);
	var tt = 0;
	//document.body.addEventListener('load',init);
	//*******************************************
	function importaTx(ev) {
		var v = palavraA(o1.value,'\n','\t');
		if (v.length<5 || v[0].length<2) {
			alert('sem dados...');
			o1.value = '';
			return;
		}
		
		var vo = o2.getElementsByTagName('tr');
		var to = '<option>(ignorar)<option>(Mun)';
		for (var i=0;i<vo.length;i++) {
			var op = vo[i].childNodes.item(1).innerHTML;
			to += '<option>'+op;
		}
		//ebJ(to);
		
		o.innerHTML = '';
		var t = new tabela(document,o);
		for (var i=0;i<v[0].length;i++) {
			var s = document.createElement("select");
			s.innerHTML = to;//'<option>'+troca(''+to,',','<option>');
			s.name = 'c'+i;
			t.addRow(s,v[0][i],v[1][i],v[2][i],v[3][i]);
		}
		var s = document.createElement("input");
		t.addRow('tempo',s);
		
	}
	//*******************************************
	function importa(ob) {
		o = ob;
		//lert('importa');
		return;

		o1 = document.getElementsByTagName("textarea")[0];
		//o1.disabled = true;
		o1.onchange = importaTx;
		o1.rows-=2;
		
		o2 = getElementsByClassName(top.opener.document,'munsCampos');
		if (o2.length==0) {
			return;
		}
		o2 = o2[0];
		
		o.innerHTML = '<table border=1>'+o2.innerHTML+'</table>';
		
		
		var vo = o2.getElementsByTagName('tr');
		var to = '<option>(ignorar)<option>(Mun)';
		for (var i=0;i<vo.length;i++) {
			var op = vo[i].childNodes.item(1).innerHTML;
			to += '<option>'+op;
		}
		
		
		
		o.innerHTML = '';
		var t = new tabela(document,o);
		for (var i=0;i<v[0].length;i++) {
			var s = document.createElement("select");
			s.innerHTML = to;//'<option>'+troca(''+to,',','<option>');
			s.name = 'c'+i;
			t.addRow(s,v[0][i],v[1][i],v[2][i],v[3][i]);
		}
		var s = document.createElement("input");
		t.addRow('tempo',s);
		
	}
	//*******************************************
	function init() {
		//ebJ('fl='+tt+' '+document.body.childNodes.length);
		//ebJ('muns init'+window.location);
		var v = getElementsByClassName(document,'munsImporta');
		if (v.length>0) {
			importa(v[0]);
		}
	}
}



new muns();