// JavaScript Document
var xmlTecnologia = null;
var xmlCobertura = null;
var vTecnologias = [];
var vEstados = [];
var vCidades = [];
var ti_selecionada = '';
var vFrequencia = '';
var vImagem = '';

//-- XMLs que ja foram lidos
var xmlRequests = [];

function XMLClass(id, elem){
	this.id = id;
	this.elem = elem;
}

function Tecnologia(id, nome, xml){
	this.id = id;
	this.nome = nome;
	this.xml = xml;
}

function Estado(uf, nome){
	this.uf = uf;
	this.nome = nome;
}

function Cidade(nome,frequencia){
	this.nome = nome;
	this.frequencia = frequencia;
}

$(document).ready(function(){
	//var variaveis = location.search.split("?");
	//var tecnologia = variaveis[1].split("=");
	
	document.getElementById("ddl_tecnologias").options.add(new Option('Carregando...',''));
	
	//-- Verifica se o xml selecionado ja foi lido, para evitar ter de carrega-lo novamente
	for(i=0; i<xmlRequests.length; i++){
		if(xmlRequests[i].id == 'tecnologia'){
			xmlTecnologia = xmlRequests[i].elem;
			break;
		}
	}
	
	if(xmlTecnologia == null){
		try{
			xmlTecnologia = xmlLoader("/sys/xml/cobertura/tecnologias.xml");
			xmlRequests.push(new XMLClass('tecnologia',xmlTecnologia));
		}catch(e){}
	}
	
	if(xmlTecnologia != null){
		var tecnologias = xmlTecnologia.getElementsByTagName('cobertura')[0].getElementsByTagName('tecnologia');
		
		//-- limpa o dropdown de tecnologia
		document.getElementById("ddl_tecnologias").options.length = 0;

		document.getElementById("ddl_tecnologias").options.add(new Option('Tecnologia','0'));

		for(i=0; i<tecnologias.length; i++){
			var id = tecnologias[i].attributes.getNamedItem('id').value;
			var nome = tecnologias[i].childNodes[0].nodeValue;
			var xml = tecnologias[i].attributes.getNamedItem('xml').value;
			
			var vTecnologia = new Tecnologia(id,nome,xml);
			vTecnologias.push(vTecnologia);
			//alert(vTecnologia.nome);
			
			//-- insere as tecnologias do xml no dropdown
			document.getElementById("ddl_tecnologias").options.add(new Option(vTecnologia.nome,vTecnologia.id));
			
			//if(vTecnologia.nome == "GSM / EDGE" && tecnologia[2] == "gsm"){
			//	document.getElementById("ddl_tecnologias").value="gsm";
			//}
		}
/*	
		//-- Insere o elemento default
		var liDefault = document.createElement('li');
		//liDefault.onclick = 'ddltecnologias_onchange("0");';
		//liDefault.setAttribute('onclick','ddltecnologias_onchange("0");');
		var aDefault = document.createElement('a');
		aDefault.innerHTML = 'Selecione...';
		aDefault.id = 'ddl_tecnologias#0';
		aDefault.setAttribute('id','ddl_tecnologias#0');
		aDefault.href = 'javascript:ddltecnologias_onchange("0"); list_click("'+ aDefault.id +'"); void(0);';
		aDefault.setAttribute('href','javascript:ddltecnologias_onchange("0"); list_click("'+ aDefault.id +'"); void(0);');
		liDefault.appendChild(aDefault);
		document.getElementById("ddl_tecnologias").options.add(new Option('Tecnologia','0'));
		document.getElementById("xddl_tecnologias").appendChild(liDefault);
		
		for(i=0; i<tecnologias.length; i++){
			var id = tecnologias[i].attributes.getNamedItem('id').value;
			var nome = tecnologias[i].childNodes[0].nodeValue;
			var xml = tecnologias[i].attributes.getNamedItem('xml').value;
			
			var vTecnologia = new Tecnologia(id,nome,xml);
			vTecnologias.push(vTecnologia);
			
			var li = document.createElement('li');
			//li.onclick = 'ddltecnologias_onchange("'+id+'");';
			//li.setAttribute('onclick','ddltecnologias_onchange("'+id+'");');
			var a = document.createElement('a');
			a.innerHTML = nome;
			a.id = 'ddl_tecnologias#' + id;
			a.setAttribute('id','ddl_tecnologias#' + id);
			a.href = 'javascript:ddltecnologias_onchange("'+id+'"); list_click("'+ a.id +'"); void(0);';
			a.setAttribute('href','javascript:ddltecnologias_onchange("'+id+'"); list_click("'+ a.id +'"); void(0);');
			li.appendChild(a);
			
			//-- insere as tecnologias do xml no dropdown
			document.getElementById("ddl_tecnologias").options.add(new Option(vTecnologia.nome,vTecnologia.id));
			document.getElementById("xddl_tecnologias").appendChild(li);

		}
*/
		//-- FUNÇÃO: onchange do dropdown de tecnologias
		$('#ddl_tecnologias').change(function(){
			var idTecnologia = $(this).attr('value');
			if(idTecnologia.toLowerCase() != '3g'){
				fnEscondeBalaoAparelhos();
			}
			//ddltecnologias_onchange(idTecnologia);
		});
		
		//-- FUNÇÃO: onchange do dropdown de estados
		$('#cmbEstados').change(function(){
			var uf = $(this).attr('value');
			//ddlestados3g_onchange(uf);
		});
		
		//-- FUNÇÃO: onclick para abrir/fechar os dropdown
		$('.ddlClass dl.ddlContent dt').click(function(){
			$('.ddlClass').removeClass('onfocus');
			
			var titulo = $(this).find('a').html();
			if($(this).next().find('ul').find('li').length <= 0){
				
				if(titulo.toLowerCase() == 'estado'){
					$('#cmbTecnologia').addClass('onfocus');
					
				}else if(titulo.toLowerCase() == 'cidade'){
					if($('#ddl_tecnologias').val() == '0')
						$('#cmbTecnologia').addClass('onfocus');
					else
						$('#cmbEstado').addClass('onfocus');
				}
				
				return false;
			}
			
			if($(this).next().css('display') != 'block'){
				$('.ddlClass').removeClass('on');
				$('.ddlClass dl.ddlContent dd').slideUp('fast');
				
				$(this).next().stop().slideDown('fast');
				$(this).parents('.ddlClass').addClass('on');
			}else{
				$(this).parents('.ddlClass').addClass('on');
				$('.ddlClass').removeClass('on');
				$('.ddlClass dl.ddlContent dd').slideUp('fast');
			}
		});
		
		$('.tableContent .filtroAlfabeto li a').click(function(){
			$('.tableContent .filtroAlfabeto li a').removeClass('on');
			$(this).addClass('on');
		});
		
		$('#address').focus(function(){
			$('.ddlClass').removeClass('on');
			$('.ddlClass dd').slideUp('fast');
		});
		
		fnAtivarFuncoes();
	}
	else
	{
		alert('Serviço indisponivel no momento. Tente novamente mais tarde.');
	}
});

function limpaDropdownEstadosCidades(){
	$('#menu_cobertura #cmbEstado dt a').html('Estado');
	$('#menu_cobertura #cmbCidade dt a').html('Cidade');
	$('#menu_cobertura #cmbEstado ul li').remove();
	$('#menu_cobertura #cmbCidade ul li').remove();
	document.getElementById("cmbEstados").options.length = 0;
	document.getElementById("cmbMunicipios").options.length = 0;
	$('#cmbEstados').attr('disabled',true);
	$('#cmbMunicipios').attr('disabled',true);
}
function limpaDropdownCidades(){
	$('#menu_cobertura #cmbCidade dt a').html('Cidade');
	$('#menu_cobertura #cmbCidade ul li').remove();
	document.getElementById("cmbMunicipios").options.length = 0;
	$('#cmbMunicipios').attr('disabled',true);
}

function ddltecnologias_onchange(idTecnologia){
	
	var previousStateIndex = null;
	var previousCityIndex = null;

	if(idTecnologia == '0'){
		limpaDropdownEstadosCidades();
		return false;
	}
	ti_selecionada = idTecnologia;				
	
	
	document.getElementById("cmbEstados").options.add(new Option('Carregando...',''));		
	
	
	//Get the previously selected state index
	previousStateIndex = document.getElementById("cmbEstados").selectedIndex;	
	
	//Get the previously selected city index
	if (document.getElementById("cmbMunicipios").options.length != 0) {
		previousCityIndex = document.getElementById("cmbMunicipios").selectedIndex;
	}		
	
	
	var xml = '';
	for(i=0; i<vTecnologias.length; i++){
		if(idTecnologia == vTecnologias[i].id){
			xml = vTecnologias[i].xml;
			break;
		}
	}
	
	var xmlCarregado = false;
	//-- Verifica se o xml selecionado ja foi lido, para evitar ter de carrega-lo novamente
	for(i=0; i<xmlRequests.length; i++){
		if(xmlRequests[i].id == idTecnologia){
			xmlCobertura = xmlRequests[i].elem;
			xmlCarregado = true;
			break;
		}
	}
	
	if(xmlCarregado == false){
		try{
			xmlCobertura = xmlLoader("/sys/xml/cobertura/" + xml);
			xmlRequests.push(new XMLClass(idTecnologia,xmlCobertura));
		}catch(e){}
	}
	
	
	if(xmlCobertura != null){
		var estados = xmlCobertura.getElementsByTagName('estados')[0].getElementsByTagName('estado');
		
		document.getElementById("cmbMunicipios").options.length = 0;
		document.getElementById("cmbEstados").options.length = 0;
		document.getElementById("cmbEstados").options.add(new Option('Estado','0'));

		for(i=0; i<estados.length; i++){
			var nome = estados[i].attributes.getNamedItem('nome').value;
			var uf = estados[i].attributes.getNamedItem('uf').value;
			
			var vEstado = new Estado(uf,nome);
			vEstados.push(vEstado);														
			

			var option = new Option(vEstado.nome,vEstado.uf);										
			

			if(ti_selecionada.toLowerCase() == '3g'){
				option.setAttribute('nivel',estados[i].attributes.getNamedItem('nivel_3g').value);
				$('#cmbCidade').parents('.menuItens').show();
				$('#busca_address').parents('.menuItens').show();
				$('.icone_duvidas').show();
				//$('#address').val('');
				
				$('#info_3g').show();
				$('#info_gsm').hide();
				$('#info_outros').hide();
				$('.tableContent').hide();
			}else if(ti_selecionada.toLowerCase() == 'gsm'){
				option.setAttribute('nivel',estados[i].attributes.getNamedItem('nivel_gsm').value);
				$('#cmbCidade').parents('.menuItens').show();
				$('#busca_address').parents('.menuItens').show();
				$('.icone_duvidas').show();
				//$('#address').val('');
				
				$('#info_gsm').show();
				$('#info_3g').hide();
				$('#info_outros').hide();
				$('.tableContent').hide();
			}else{
				$('#cmbCidade').parents('.menuItens').hide();
				$('#busca_address').parents('.menuItens').hide();
				$('.icone_duvidas').hide();
				
				$('#info_3g').hide();
				$('#info_gsm').hide();
				$('#info_outros').hide();
				$('.mapContent').hide();
				$('.tableContent').hide();
			}
			
			//-- insere os estados do xml no dropdown
			document.getElementById("cmbEstados").options.add(option);
		}
		
		$('#cmbEstados').attr('disabled',false);		

		$('#cmbMunicipios').attr('disabled',true);
				
	}
	
	fnAtivarFuncoes();
	
	//set the state combo box to display the previously selected state
	document.getElementById("cmbEstados").options[previousStateIndex].selected = true;
	
	ddlestados_onchange(document.getElementById("cmbEstados").options[previousStateIndex].value);
	
	//set the city combo box to display the previously selected city
	if (previousCityIndex != null) {
		document.getElementById("cmbMunicipios").options[previousCityIndex].selected = true;
	}
}

/******/
function ddlestados3g_onchange(uf){
	if(uf == '0'){
		limpaDropdownCidades();
		return false;
	}
	
	document.getElementById("cmbMunicipios").options.add(new Option('Carregando...',''));
	
	if(xmlCobertura != null){
		var estados = xmlCobertura.getElementsByTagName('estados')[0].getElementsByTagName('estado');
		document.getElementById("cmbMunicipios").options.length = 0;
		document.getElementById("cmbMunicipios").options.add(new Option('Cidade','0'));
		
		for(i=0; i<estados.length; i++){
			if(uf == estados[i].attributes.getNamedItem('uf').value){
				var cidades = estados[i].getElementsByTagName('cidade');
				for(j=0; j<cidades.length; j++){
					var cidade = cidades[j].attributes.getNamedItem('nome').value;
					var imagem = cidades[j].attributes.getNamedItem('imagem_3g').value;
					var frequencia = cidades[j].attributes.getNamedItem('frequencia_3g').value;
					
					var vCidade = new Cidade(cidade);
					vCidades.push(vCidade);
					
					var option = new Option(vCidade.nome,vCidade.nome+"#"+imagem+"#"+frequencia);
					
					//-- insere os estados do xml no dropdown
					document.getElementById("cmbMunicipios").options.add(option);
				}
				$('#cmbMunicipios').attr('disabled',false);
				break;
			}	
		}
	}
	
	fnAtivarFuncoes();
}

function ddlestadosGSM_onchange(uf){
	if(uf == '0'){
		limpaDropdownCidades();
		return false;
	}
	
	document.getElementById("cmbMunicipios").options.add(new Option('Carregando...',''));
	
	if(xmlCobertura != null){
		var estados = xmlCobertura.getElementsByTagName('estados')[0].getElementsByTagName('estado');
		document.getElementById("cmbMunicipios").options.length = 0;
		document.getElementById("cmbMunicipios").options.add(new Option('Cidade','0'));
		
		for(i=0; i<estados.length; i++){
			if(uf == estados[i].attributes.getNamedItem('uf').value){
				var cidades = estados[i].getElementsByTagName('cidade');
				for(j=0; j<cidades.length; j++){
					var cidade = cidades[j].attributes.getNamedItem('nome').value;
					var imagem = cidades[j].attributes.getNamedItem('imagem_gsm').value;
					var frequencia = cidades[j].attributes.getNamedItem('frequencia_gsm').value;
					
					var vCidade = new Cidade(cidade);
					vCidades.push(vCidade);
					
					var option = new Option(vCidade.nome,vCidade.nome+"#"+imagem+"#"+frequencia);
					
					//-- insere os estados do xml no dropdown
					document.getElementById("cmbMunicipios").options.add(option);
				}
				$('#cmbMunicipios').attr('disabled',false);
				break;
			}	
		}
	}
	
	fnAtivarFuncoes();
}

function ddlestados_onchange(uf){
	if(ti_selecionada.toLowerCase() == '3g'){
		ddlestados3g_onchange(uf);
		return;
	}else if(ti_selecionada.toLowerCase() == 'gsm'){
		ddlestadosGSM_onchange(uf);
		return;
	}
	
	if(xmlCobertura != null){
		var estados = xmlCobertura.getElementsByTagName('estados')[0].getElementsByTagName('estado');
		
		for(i=0; i<estados.length; i++){
			if(uf == estados[i].attributes.getNamedItem('uf').value){
				var cidades = estados[i].getElementsByTagName('cidade');
				var html = '';
				var mudaCor = 0;
				
				if(ti_selecionada == 'gsm')
					montaCoberturaGSM('1','',cidades);
					
				else if(ti_selecionada == 'cdma')
					montaCoberturaCDMA('1','',cidades);
					
				else if(ti_selecionada == 'rtt')
					montaCoberturaRTT('1','',cidades);
				
				$('.tableContent').show();
				break;
			}
		}
	}
	
	fnAtivarFuncoes();
}

function ddlmunicipios_onchange(municipio){
	var imagem = $('#cmbMunicipios').val().split('#')[1];
	setImagem(imagem);
	
	var frequencia = $('#cmbMunicipios').val().split('#')[2];
	setFrequencia(frequencia);
	
	$('#address').val('');
	$('#address').focus();
}
	
function CoberturaGSM(pCidade, pFrequencia){
	this.cidade = pCidade;
	this.frequencia = pFrequencia;
}

var cidadesGSM = [];
function montaCoberturaGSM(pagEscolhida, sigla){
	$('.tableContent tbody').html('');
	$('.tableContent tfoot').html('');
	
	$('.filtroAlfabeto').show();
	$('.tableContent thead').show();
			
	/* Monta Menu do Alfabeto */
	var menu = '';
	menu += '<ul>';
	menu += '	<li><a href="javascript:montaCoberturaGSM(\'1\',\'\'); void(0);" id="alfabeto_all" class="on">Todos</a></li>';
	menu += '	<li><a href="javascript:montaCoberturaGSM(\'1\',\'A\'); void(0);">A</a></li>';
	menu += '	<li><a href="javascript:montaCoberturaGSM(\'1\',\'B\'); void(0);">B</a></li>';
	menu += '	<li><a href="javascript:montaCoberturaGSM(\'1\',\'C\'); void(0);">C</a></li>';
	menu += '	<li><a href="javascript:montaCoberturaGSM(\'1\',\'D\'); void(0);">D</a></li>';
	menu += '	<li><a href="javascript:montaCoberturaGSM(\'1\',\'E\'); void(0);">E</a></li>';
	menu += '	<li><a href="javascript:montaCoberturaGSM(\'1\',\'F\'); void(0);">F</a></li>';
	menu += '	<li><a href="javascript:montaCoberturaGSM(\'1\',\'G\'); void(0);">G</a></li>';
	menu += '	<li><a href="javascript:montaCoberturaGSM(\'1\',\'H\'); void(0);">H</a></li>';
	menu += '	<li><a href="javascript:montaCoberturaGSM(\'1\',\'I\'); void(0);">I</a></li>';
	menu += '	<li><a href="javascript:montaCoberturaGSM(\'1\',\'J\'); void(0);">J</a></li>';
	menu += '	<li><a href="javascript:montaCoberturaGSM(\'1\',\'K\'); void(0);">K</a></li>';
	menu += '	<li><a href="javascript:montaCoberturaGSM(\'1\',\'L\'); void(0);">L</a></li>';
	menu += '	<li><a href="javascript:montaCoberturaGSM(\'1\',\'M\'); void(0);">M</a></li>';
	menu += '	<li><a href="javascript:montaCoberturaGSM(\'1\',\'N\'); void(0);">N</a></li>';
	menu += '	<li><a href="javascript:montaCoberturaGSM(\'1\',\'O\'); void(0);">O</a></li>';
	menu += '	<li><a href="javascript:montaCoberturaGSM(\'1\',\'P\'); void(0);">P</a></li>';
	menu += '	<li><a href="javascript:montaCoberturaGSM(\'1\',\'Q\'); void(0);">Q</a></li>';
	menu += '	<li><a href="javascript:montaCoberturaGSM(\'1\',\'R\'); void(0);">R</a></li>';
	menu += '	<li><a href="javascript:montaCoberturaGSM(\'1\',\'S\'); void(0);">S</a></li>';
	menu += '	<li><a href="javascript:montaCoberturaGSM(\'1\',\'T\'); void(0);">T</a></li>';
	menu += '	<li><a href="javascript:montaCoberturaGSM(\'1\',\'U\'); void(0);">U</a></li>';
	menu += '	<li><a href="javascript:montaCoberturaGSM(\'1\',\'V\'); void(0);">V</a></li>';
	menu += '	<li><a href="javascript:montaCoberturaGSM(\'1\',\'W\'); void(0);">W</a></li>';
	menu += '	<li><a href="javascript:montaCoberturaGSM(\'1\',\'X\'); void(0);">X</a></li>';
	menu += '	<li><a href="javascript:montaCoberturaGSM(\'1\',\'Y\'); void(0);">Y</a></li>';
	menu += '	<li><a href="javascript:montaCoberturaGSM(\'1\',\'Z\'); void(0);">Z</a></li>';
	menu += '</ul>';
	$('.filtroAlfabeto').html(menu);
	
	
	if(arguments[2] != undefined){
		$('.tableContent .filtroAlfabeto li a').removeClass('on');
		$('.tableContent .filtroAlfabeto li a#alfabeto_all').addClass('on');
		
		cidadesGSM = new Array();
		for(i=0; i<arguments[2].length; i++){
			var cidade = arguments[2][i].attributes.getNamedItem('nome').value;
			var frequencia = arguments[2][i].attributes.getNamedItem('frequencia').value;
			var gsm = arguments[2][i].attributes.getNamedItem('gsm').value == '1' ? true : false;
			
			if(gsm == true)
				cidadesGSM.push(new CoberturaGSM(cidade,frequencia));
		}
	}
	
	var cidadesFiltradas = [];
	
	for(i=0; i<cidadesGSM.length; i++){
		if(sigla == '' || sigla.toUpperCase() == trataAcento(cidadesGSM[i].cidade.charAt(0).toUpperCase())){
			cidadesFiltradas.push(cidadesGSM[i]);
		}
	}
	
	var html = '';
	var elementos = 0;
	var indice = 1;
	for(i=((pagEscolhida*8)-8); i<cidadesFiltradas.length && i<pagEscolhida*8; i++){
		if(sigla == '' || sigla.toUpperCase() == trataAcento(cidadesFiltradas[i].cidade.charAt(0).toUpperCase())){
			html += '<tr class="'+ (elementos%2==0?'bgEscuro':'bgClaro') +'">';
			html += '	<td><div>'+ cidadesFiltradas[i].cidade +'</div></td>';
			//html += '	<td class="borderLeft"><div><a href="/portal/cobertura_frequencia.php">'+ cidadesFiltradas[i].frequencia +'</a></div></td>';
			html += '	<td class="borderLeft"><div><a href="javascript:void(0);">'+ cidadesFiltradas[i].frequencia +'</a></div></td>';
			html += '</tr>';
			elementos++;
		}else{
			indice++;
		}
	}

	if(elementos == 0 && sigla != ''){
		html = '<tr class="bgClaro"><td colspan="2"><div>N&atilde;o h&aacute; cidades com a letra '+ sigla +' na tecnologia selecionada.</div></td></tr>';
	}else{
		if(elementos == 0){
			html = '<tr class="bgClaro"><td colspan="2"><div>N&atilde;o h&aacute; cidades com a tecnologia selecionada.</div></td></tr>';
			$('.filtroAlfabeto').hide();
			$('.tableContent thead').hide();
		}
	}
	
	$('.tableContent tbody').html(html);
	
	indice = (parseInt(pagEscolhida) - 4) > 0 ? (parseInt(pagEscolhida) - 4) : indice;
	var pagFinal = (parseInt(pagEscolhida) + 4) < Math.ceil(cidadesFiltradas.length/8) ? (parseInt(pagEscolhida) + 4) : Math.ceil(cidadesFiltradas.length/8);
	
	var paginacao = '';
	for(i=indice; i<=pagFinal && Math.ceil(cidadesFiltradas.length/8) > 1; i++){
		paginacao += '<a href="javascript:montaCoberturaGSM(\''+ i +'\',\''+ sigla +'\'); void(0);" '+ (i == pagEscolhida ? 'class=\'on\'' : '') +'>'+ i +'</a> ';
	}
	
	if(pagFinal < Math.ceil(cidadesFiltradas.length/8))
		paginacao += '<a href="javascript:montaCoberturaGSM(\''+ (pagFinal+1) +'\',\''+ sigla +'\'); void(0);">...</a> ';
	
	$('.tableContent tfoot').html('<tr><td colspan="2">'+ paginacao +'</td></tr>');
}

function CoberturaCDMA(pCidade){
	this.cidade = pCidade;
}

var cidadesCDMA = [];
function montaCoberturaCDMA(pagEscolhida, sigla){
	$('.tableContent tbody').html('');
	$('.tableContent tfoot').html('');
	$('#col_frequencia').hide();
	
	$('.filtroAlfabeto').show();
	$('.tableContent thead').show();
	
	/* Monta Menu do Alfabeto */
	var menu = '';
	menu += '<ul>';
	menu += '	<li><a href="javascript:montaCoberturaCDMA(\'1\',\'\'); void(0);" id="alfabeto_all" class="on">Todos</a></li>';
	menu += '	<li><a href="javascript:montaCoberturaCDMA(\'1\',\'A\'); void(0);">A</a></li>';
	menu += '	<li><a href="javascript:montaCoberturaCDMA(\'1\',\'B\'); void(0);">B</a></li>';
	menu += '	<li><a href="javascript:montaCoberturaCDMA(\'1\',\'C\'); void(0);">C</a></li>';
	menu += '	<li><a href="javascript:montaCoberturaCDMA(\'1\',\'D\'); void(0);">D</a></li>';
	menu += '	<li><a href="javascript:montaCoberturaCDMA(\'1\',\'E\'); void(0);">E</a></li>';
	menu += '	<li><a href="javascript:montaCoberturaCDMA(\'1\',\'F\'); void(0);">F</a></li>';
	menu += '	<li><a href="javascript:montaCoberturaCDMA(\'1\',\'G\'); void(0);">G</a></li>';
	menu += '	<li><a href="javascript:montaCoberturaCDMA(\'1\',\'H\'); void(0);">H</a></li>';
	menu += '	<li><a href="javascript:montaCoberturaCDMA(\'1\',\'I\'); void(0);">I</a></li>';
	menu += '	<li><a href="javascript:montaCoberturaCDMA(\'1\',\'J\'); void(0);">J</a></li>';
	menu += '	<li><a href="javascript:montaCoberturaCDMA(\'1\',\'K\'); void(0);">K</a></li>';
	menu += '	<li><a href="javascript:montaCoberturaCDMA(\'1\',\'L\'); void(0);">L</a></li>';
	menu += '	<li><a href="javascript:montaCoberturaCDMA(\'1\',\'M\'); void(0);">M</a></li>';
	menu += '	<li><a href="javascript:montaCoberturaCDMA(\'1\',\'N\'); void(0);">N</a></li>';
	menu += '	<li><a href="javascript:montaCoberturaCDMA(\'1\',\'O\'); void(0);">O</a></li>';
	menu += '	<li><a href="javascript:montaCoberturaCDMA(\'1\',\'P\'); void(0);">P</a></li>';
	menu += '	<li><a href="javascript:montaCoberturaCDMA(\'1\',\'Q\'); void(0);">Q</a></li>';
	menu += '	<li><a href="javascript:montaCoberturaCDMA(\'1\',\'R\'); void(0);">R</a></li>';
	menu += '	<li><a href="javascript:montaCoberturaCDMA(\'1\',\'S\'); void(0);">S</a></li>';
	menu += '	<li><a href="javascript:montaCoberturaCDMA(\'1\',\'T\'); void(0);">T</a></li>';
	menu += '	<li><a href="javascript:montaCoberturaCDMA(\'1\',\'U\'); void(0);">U</a></li>';
	menu += '	<li><a href="javascript:montaCoberturaCDMA(\'1\',\'V\'); void(0);">V</a></li>';
	menu += '	<li><a href="javascript:montaCoberturaCDMA(\'1\',\'W\'); void(0);">W</a></li>';
	menu += '	<li><a href="javascript:montaCoberturaCDMA(\'1\',\'X\'); void(0);">X</a></li>';
	menu += '	<li><a href="javascript:montaCoberturaCDMA(\'1\',\'Y\'); void(0);">Y</a></li>';
	menu += '	<li><a href="javascript:montaCoberturaCDMA(\'1\',\'Z\'); void(0);">Z</a></li>';
	menu += '</ul>';
	$('.filtroAlfabeto').html(menu);
	
	if(arguments[2] != undefined){
		$('.tableContent .filtroAlfabeto li a').removeClass('on');
		$('.tableContent .filtroAlfabeto li a#alfabeto_all').addClass('on');
		
		cidadesCDMA = new Array();
		for(i=0; i<arguments[2].length; i++){
			var cidade = arguments[2][i].attributes.getNamedItem('nome').value;
			var cdma = arguments[2][i].attributes.getNamedItem('cdma').value == '1' ? true : false;
			
			if(cdma == true)
				cidadesCDMA.push(new CoberturaCDMA(cidade));
		}
	}
	
	var cidadesFiltradas = [];
	
	for(i=0; i<cidadesCDMA.length; i++){
		if(sigla == '' || sigla.toUpperCase() == trataAcento(cidadesCDMA[i].cidade.charAt(0).toUpperCase())){
			cidadesFiltradas.push(cidadesCDMA[i]);
		}
	}
	
	var html = '';
	var elementos = 0;
	var indice = 1;
	for(i=((pagEscolhida*8)-8); i<cidadesFiltradas.length && i<pagEscolhida*8; i++){
		if(sigla == '' || sigla.toUpperCase() == trataAcento(cidadesFiltradas[i].cidade.charAt(0).toUpperCase())){
			html += '<tr class="'+ (elementos%2==0?'bgEscuro':'bgClaro') +'">';
			html += '	<td colspan="2"><div>'+ cidadesFiltradas[i].cidade +'</div></td>';
			html += '</tr>';
			elementos++;
		}else{
			indice++;
		}
	}
	
	if(elementos == 0 && sigla != ''){
		html = '<tr class="bgClaro"><td colspan="2"><div>N&atilde;o h&aacute; cidades com a letra '+ sigla +' na tecnologia selecionada.</div></td></tr>';
	}else{
		if(elementos == 0){
			html = '<tr class="bgClaro"><td colspan="2"><div>N&atilde;o h&aacute; cidades com a tecnologia selecionada.</div></td></tr>';
			$('.filtroAlfabeto').hide();
$('.tableContent thead').hide();		}
	}
	
	$('.tableContent tbody').html(html);
	
	indice = (parseInt(pagEscolhida) - 4) > 0 ? (parseInt(pagEscolhida) - 4) : indice;
	var pagFinal = (parseInt(pagEscolhida) + 4) < Math.ceil(cidadesFiltradas.length/8) ? (parseInt(pagEscolhida) + 4) : Math.ceil(cidadesFiltradas.length/8);
	
	var paginacao = '';
	for(i=indice; i<=pagFinal && Math.ceil(cidadesFiltradas.length/8) > 1; i++){
		paginacao += '<a href="javascript:montaCoberturaCDMA(\''+ i +'\',\''+ sigla +'\'); void(0);" '+ (i == pagEscolhida ? 'class=\'on\'' : '') +'>'+ i +'</a> ';
	}
	
	if(pagFinal < Math.ceil(cidadesFiltradas.length/8))
		paginacao += '<a href="javascript:montaCoberturaCDMA(\''+ (pagFinal+1) +'\',\''+ sigla +'\'); void(0);">...</a> ';
	
	$('.tableContent tfoot').html('<tr><td colspan="2">'+ paginacao +'</td></tr>');
}

function CoberturaRTT(pCidade){
	this.cidade = pCidade;
}

var cidadesRTT = [];
function montaCoberturaRTT(pagEscolhida, sigla){
	$('.tableContent tbody').html('');
	$('.tableContent tfoot').html('');
	$('#col_frequencia').hide();
	
	$('.filtroAlfabeto').show();
	$('.tableContent thead').show();
	
	/* Monta Menu do Alfabeto */
	var menu = '';
	menu += '<ul>';
	menu += '	<li><a href="javascript:montaCoberturaRTT(\'1\',\'\'); void(0);" id="alfabeto_all" class="on">Todos</a></li>';
	menu += '	<li><a href="javascript:montaCoberturaRTT(\'1\',\'A\'); void(0);">A</a></li>';
	menu += '	<li><a href="javascript:montaCoberturaRTT(\'1\',\'B\'); void(0);">B</a></li>';
	menu += '	<li><a href="javascript:montaCoberturaRTT(\'1\',\'C\'); void(0);">C</a></li>';
	menu += '	<li><a href="javascript:montaCoberturaRTT(\'1\',\'D\'); void(0);">D</a></li>';
	menu += '	<li><a href="javascript:montaCoberturaRTT(\'1\',\'E\'); void(0);">E</a></li>';
	menu += '	<li><a href="javascript:montaCoberturaRTT(\'1\',\'F\'); void(0);">F</a></li>';
	menu += '	<li><a href="javascript:montaCoberturaRTT(\'1\',\'G\'); void(0);">G</a></li>';
	menu += '	<li><a href="javascript:montaCoberturaRTT(\'1\',\'H\'); void(0);">H</a></li>';
	menu += '	<li><a href="javascript:montaCoberturaRTT(\'1\',\'I\'); void(0);">I</a></li>';
	menu += '	<li><a href="javascript:montaCoberturaRTT(\'1\',\'J\'); void(0);">J</a></li>';
	menu += '	<li><a href="javascript:montaCoberturaRTT(\'1\',\'K\'); void(0);">K</a></li>';
	menu += '	<li><a href="javascript:montaCoberturaRTT(\'1\',\'L\'); void(0);">L</a></li>';
	menu += '	<li><a href="javascript:montaCoberturaRTT(\'1\',\'M\'); void(0);">M</a></li>';
	menu += '	<li><a href="javascript:montaCoberturaRTT(\'1\',\'N\'); void(0);">N</a></li>';
	menu += '	<li><a href="javascript:montaCoberturaRTT(\'1\',\'O\'); void(0);">O</a></li>';
	menu += '	<li><a href="javascript:montaCoberturaRTT(\'1\',\'P\'); void(0);">P</a></li>';
	menu += '	<li><a href="javascript:montaCoberturaRTT(\'1\',\'Q\'); void(0);">Q</a></li>';
	menu += '	<li><a href="javascript:montaCoberturaRTT(\'1\',\'R\'); void(0);">R</a></li>';
	menu += '	<li><a href="javascript:montaCoberturaRTT(\'1\',\'S\'); void(0);">S</a></li>';
	menu += '	<li><a href="javascript:montaCoberturaRTT(\'1\',\'T\'); void(0);">T</a></li>';
	menu += '	<li><a href="javascript:montaCoberturaRTT(\'1\',\'U\'); void(0);">U</a></li>';
	menu += '	<li><a href="javascript:montaCoberturaRTT(\'1\',\'V\'); void(0);">V</a></li>';
	menu += '	<li><a href="javascript:montaCoberturaRTT(\'1\',\'W\'); void(0);">W</a></li>';
	menu += '	<li><a href="javascript:montaCoberturaRTT(\'1\',\'X\'); void(0);">X</a></li>';
	menu += '	<li><a href="javascript:montaCoberturaRTT(\'1\',\'Y\'); void(0);">Y</a></li>';
	menu += '	<li><a href="javascript:montaCoberturaRTT(\'1\',\'Z\'); void(0);">Z</a></li>';
	menu += '</ul>';
	$('.filtroAlfabeto').html(menu);
	
	if(arguments[2] != undefined){
		$('.tableContent .filtroAlfabeto li a').removeClass('on');
		$('.tableContent .filtroAlfabeto li a#alfabeto_all').addClass('on');
		
		cidadesRTT = new Array();
		for(i=0; i<arguments[2].length; i++){
			var cidade = arguments[2][i].attributes.getNamedItem('nome').value;
			var rtt = arguments[2][i].attributes.getNamedItem('rtt').value == '1' ? true : false;
			
			if(rtt == true)
				cidadesRTT.push(new CoberturaRTT(cidade));
		}
	}
	
	var cidadesFiltradas = [];
	
	for(i=0; i<cidadesRTT.length; i++){
		if(sigla == '' || sigla.toUpperCase() == trataAcento(cidadesRTT[i].cidade.charAt(0).toUpperCase())){
			cidadesFiltradas.push(cidadesRTT[i]);
		}
	}
	
	var html = '';
	var elementos = 0;
	var indice = 1;
	for(i=((pagEscolhida*8)-8); i<cidadesFiltradas.length && i<pagEscolhida*8; i++){
		if(sigla == '' || sigla.toUpperCase() == trataAcento(cidadesFiltradas[i].cidade.charAt(0).toUpperCase())){
			html += '<tr class="'+ (elementos%2==0?'bgEscuro':'bgClaro') +'">';
			html += '	<td colspan="2"><div>'+ cidadesFiltradas[i].cidade +'</div></td>';
			html += '</tr>';
			elementos++;
		}else{
			indice++;
		}
	}
	
	if(elementos == 0 && sigla != ''){
		html = '<tr class="bgClaro"><td colspan="2"><div>N&atilde;o h&aacute; cidades com a letra '+ sigla +' na tecnologia selecionada.</div></td></tr>';
	}else{
		if(elementos == 0){
			html = '<tr class="bgClaro"><td colspan="2"><div>N&atilde;o h&aacute; cidades com a tecnologia selecionada.</div></td></tr>';
			$('.filtroAlfabeto').hide();
			$('.tableContent thead').hide();
		}
	}
	
	$('.tableContent tbody').html(html);
	
	indice = (parseInt(pagEscolhida) - 4) > 0 ? (parseInt(pagEscolhida) - 4) : indice;
	var pagFinal = (parseInt(pagEscolhida) + 4) < Math.ceil(cidadesFiltradas.length/8) ? (parseInt(pagEscolhida) + 4) : Math.ceil(cidadesFiltradas.length/8);
	
	var paginacao = '';
	for(i=indice; i<=pagFinal && Math.ceil(cidadesFiltradas.length/8) > 1; i++){
		paginacao += '<a href="javascript:montaCoberturaRTT(\''+ i +'\',\''+ sigla +'\'); void(0);" '+ (i == pagEscolhida ? 'class=\'on\'' : '') +'>'+ i +'</a> ';
	}
	
	if(pagFinal < Math.ceil(cidadesFiltradas.length/8))
		paginacao += '<a href="javascript:montaCoberturaRTT(\''+ (pagFinal+1) +'\',\''+ sigla +'\'); void(0);">...</a> ';
	
	$('.tableContent tfoot').html('<tr><td colspan="2">'+ paginacao +'</td></tr>');
}

function setFrequencia(pFrequencia){
	vFrequencia = pFrequencia;
}
function setImagem(pImagem){
	vImagem = pImagem;
}

//-- Está função serve para ativar as funcionalidades abaixo quando ocorre o AJAX, pois elas acabam sendo perdidas se adicionadas no onload da pagina
//-- Devem ser chamadas sempre que ocorrer um AJAX
function fnAtivarFuncoes(){
	//-- FUNÇÃO: mouseover para adicionar efeito nos itens da lista
	$('.ddlClass dl.ddlContent dd li').mouseover(function(){
		$(this).css('background','#660099');
		$(this).find('a').css('color','#ffffff');
	});
	
	//-- FUNÇÃO: mouseout para remover efeito nos itens da lista
	$('.ddlClass dl.ddlContent dd li').mouseout(function(){
		$(this).css('background','transparent');
		$(this).find('a').css('color','#660099');
	});
}

function list_click(obj){
	if($('#painel_lateral div').hasClass('campo_msg')){
		$('#painel_lateral').html('');
		fechaPainel();
	}
	obj = document.getElementById(obj);
	var dropdownId = $(obj).parents('.ddlClass').attr('id');
		
	var id = $(obj).attr('id').split('#')[1];
	var elem = $(obj).attr('id').split('#')[0];
	$('#' + elem).val(id);
	
	if(dropdownId == 'cmbEstado'){
		$(obj).parents('#' + dropdownId).find('dt a').html( $('#cmbEstados').val().toUpperCase() );
		
	}else{
		var value = $(obj).html();
		if(dropdownId == 'cmbCidade'){
			value = value.length > 10 ? value.substring(0,10) + '...' : value;
		}
		
		$(obj).parents('#' + dropdownId).find('dt a').html( value );
	}
	
	$('.ddlClass').removeClass('on');
	$(obj).parents('dd').slideUp('fast');
	
	if($('#' + $(obj).parent().parent().attr('id').substring(1, $(obj).parent().parent().attr('id').length)).val() == '0'){
		$(obj).parents('#' + dropdownId).find('dt a').html( $('#' + $(obj).parent().parent().attr('id').substring(1, $(obj).parent().parent().attr('id').length) + ' :selected').html() );
	
	}else{
		//-- Seta para o valor default do combo quando selecionar um item no filtro
		if($(obj).parents('.ddlClass').attr('id') == 'cmbTecnologia'){
			$('#menu_cobertura #cmbEstado dt a').html('Estado');
			$('#menu_cobertura #cmbCidade dt a').html('Cidade');
			
		}else if($(obj).parents('.ddlClass').attr('id') == 'cmbEstado'){
			$('#menu_cobertura #cmbCidade dt a').html('Cidade');
			
		}else if((ti_selecionada == '3g' || ti_selecionada == 'gsm') && $(obj).parents('.ddlClass').attr('id') == 'cmbCidade'){
			$('#address').focus();
		}
		
		if(((ti_selecionada != '3g' && ti_selecionada != 'gsm') && $(obj).parents('.menuItens').next().find('dt a').html().toLowerCase() != 'cidade') || ti_selecionada == '3g'){
			$(obj).parents('.menuItens').next().find('dd').slideDown('fast');
			$(obj).parents('.menuItens').next().find('.ddlClass').addClass('on');
		}
		
		//window.setTimeout("$('#pane').jScrollPane({showArrows:false, scrollbarWidth: 8, dragMaxHeight: 8, dragMinHeight: 8});",1000);
	}
}

function abreDuvidasMapa(){
	$('.ddlClass').removeClass('on');
	$('.ddlClass dl.ddlContent dd').slideUp('fast');
	$('.mapContent').show();
	abrePainel('mapa');
	$('#painel_lateral').css({'width':'650px','height':'160px', 'z-index':'100','overflow':'auto','background':'#fff'});
	
	var html = '';
	html	+= '<div class="divDuvidas">';
	html	+= '	<p>Dicas para encontrar um endere&ccedil;o:</p>';
	html	+= '	<ul>';
	html	+= '		<li>Verifique se o endere&ccedil;o foi digitado corretamente;</li>';
	html	+= '		<li>Tente digitar o endere&ccedil;o completo e sem abrevia&ccedil;&otilde;es (<strong>Ex</strong>: Avenida Paulista, 1500);</li>';
	html	+= '		<li>Caso n&atilde;o encontre, digite apenas o nome da rua, sem o n&uacute;mero (<strong>Ex</strong>:Avenida Paulista);</li>';
	html	+= '		<li>Se n&atilde;o encontrou, tente digitar um endere&ccedil;o pr&oacute;ximo ao que voc&ecirc; est&aacute; procurando (<strong>Ex</strong>: Uma rua Paralela);</li>';
	html	+= '		<li>Voc&ecirc; tamb&eacute;m pode procurar pelo CEP ou pelo bairro (<strong>Ex</strong>: 02442-010 ou Paraiso)</li>';
	html	+= '	</ul>';
	html	+= '</div>';

	$('#painel_lateral').html(html);
}

function abreDuvidas(){
	$('.ddlClass').removeClass('on');
	$('.ddlClass dl.ddlContent dd').slideUp('fast');
	$('.mapContent').show();
	abrePainel('mapa');
	$('#painel_lateral').css({'width':'650px','height':'160px', 'z-index':'100','overflow':'auto','background':'#fff'});
	
	var html = '';
	html	+= '<div class="divDuvidas">';
	html	+= '	<p>Dicas para encontrar um endere&ccedil;o:</p>';
	html	+= '	<ul>';
	
	html	+= '		<li>Digite o endere&ccedil;o que deseja consultar.(<strong>Ex</strong>: Av Paulista, 1500)</li>';
	html	+= '		<li>Voc&ecirc; tamb&eacute;m pode procurar pelo CEP ou pelo Bairro (<strong>Ex</strong>: 02442-010 ou Para&iacute;so)</li>';
	html	+= '		<li>Caso n&atilde;o saiba o endere&ccedil;o correto, digite um endere&ccedil;o pr&oacute;ximo ao que est&aacute; procurando (<strong>Ex</strong>: Uma rua Paralela)</li>';

	html	+= '	</ul>';
	html	+= '</div>';

	$('#painel_lateral').html(html);
}

function validarEndereco(){
	$('#busca_address').addClass('onfocus');
	$('#address').val('Preenchimento obrigatório');
	$('#address').blur();
}
function address_onfocus(){
	$('#busca_address').removeClass('onfocus');
	$('#address').val('');
}

function trataAcento(param){
	var vTexto = param;
	
	vTexto = vTexto.replace(/â{1}/g, "a");
	vTexto = vTexto.replace(/ô{1}/g, "o");
	vTexto = vTexto.replace(/ê{1}/g, "e");
	vTexto = vTexto.replace(/à{1}/g, "a");
	vTexto = vTexto.replace(/è{1}/g, "e");
	vTexto = vTexto.replace(/ì{1}/g, "i");
	vTexto = vTexto.replace(/ò{1}/g, "o");
	vTexto = vTexto.replace(/ù{1}/g, "u");
	vTexto = vTexto.replace(/ü{1}/g, "u");
	vTexto = vTexto.replace(/á{1}/g, "a");
	vTexto = vTexto.replace(/é{1}/g, "e");
	vTexto = vTexto.replace(/í{1}/g, "i");
	vTexto = vTexto.replace(/ó{1}/g, "o");
	vTexto = vTexto.replace(/ú{1}/g, "u");
	vTexto = vTexto.replace(/ç{1}/g, "c");
	vTexto = vTexto.replace(/ã{1}/g, "a");
	vTexto = vTexto.replace(/õ{1}/g, "o");

	vTexto = vTexto.replace(/Â{1}/g, "A");
	vTexto = vTexto.replace(/Ô{1}/g, "O");
	vTexto = vTexto.replace(/Ê{1}/g, "E");
	vTexto = vTexto.replace(/À{1}/g, "A");
	vTexto = vTexto.replace(/È{1}/g, "E");
	vTexto = vTexto.replace(/Ì{1}/g, "I");
	vTexto = vTexto.replace(/Ò{1}/g, "O");
	vTexto = vTexto.replace(/Ù{1}/g, "U");
	vTexto = vTexto.replace(/Ü{1}/g, "U");
	vTexto = vTexto.replace(/Á{1}/g, "A");
	vTexto = vTexto.replace(/É{1}/g, "E");
	vTexto = vTexto.replace(/Í{1}/g, "I");
	vTexto = vTexto.replace(/Ó{1}/g, "O");
	vTexto = vTexto.replace(/Ú{1}/g, "U");
	vTexto = vTexto.replace(/Ç{1}/g, "C");
	vTexto = vTexto.replace(/Ã{1}/g, "A");
	vTexto = vTexto.replace(/Õ{1}/g, "O");

	return vTexto;
}

function fechaPainel(){
	$('#painel_lateral').hide();
	$('.painelFechar').hide();
}
function abrePainel(){
	
	if(arguments.length == 0){
		escondeMapa();
	}
	
	$('#painel_lateral').show();
	$('.painelFechar').show();
}

function mostraMapa(){
	$('#div_mapa .mapa').css('visibility','visible');
	
	if($('#ddl_tecnologias').val() == '3g'){
		$('.legendaCobertura').hide();
		$('#legendaCobertura3G').show();
	}else if($('#ddl_tecnologias').val() == 'gsm'){
		$('.legendaCobertura').hide();
		$('#legendaCoberturaGSM').show();
	}
}
function escondeMapa(){
	$('.mapContent .mapa').css('visibility','hidden');
	$('.legendaCobertura').hide();
	fnEscondeBalaoAparelhos();
}

function xmlLoader(url){
    if(window.XMLHttpRequest && navigator.appName.search('Microsoft Internet Explorer')==-1){
        var Loader = new XMLHttpRequest();
        Loader.open("GET", url ,false);
        Loader.send(null);
        return Loader.responseXML;
		
    }else if(window.ActiveXObject){
        var Loader = new ActiveXObject("Msxml2.DOMDocument.3.0");
        Loader.async = false;
        Loader.load(url);
        return Loader;
    }
}

var pCidade = null;
var pClick = 0;
function fnCombo(campo){
	$('#'+campo).addClass("comboPlus");		
	$('#endereco').hide();
	$('#'+campo).focus();
	$('#'+campo).attr('selectedIndex')
}
function fnComboPlus(campo){
	$('#'+campo).removeClass("comboPlus");
	setTimeout("$('#address').focus();",1);	
	$('#endereco').show();
}
function fnComboClick(campo){
	if($.browser.msie){
		pClick++;
		if(pClick>=2){
			fnComboPlus(campo);
			pClick = 0;
		}
	}
}


//function fnCombo(campo){
//		var target = document.getElementById(campo);
//		if (typeof target.onselectstart != "undefined"){ //IE route
//			alert('ok1');
////			target.onselectstart = function() { alert('ok'); return true; }
////		}else if (typeof target.style.MozUserSelect != "undefined"){ //Firefox route
//			//target.style.MozUserSelect = "none";
////			alert('ok'); 
//		}else{ //All other route (ie: Opera)
//			target.onmousedown = function() { alert('ok'); return true; }
//		}
//}

