/* ************************************************* */
/*               VARIAVEIS GERAIS                    */
/*                                                   */
/* Variáveis gerais, são utilizadas para controlar   */
/* a navegação.                                      */
/*                                                   */
/* gMenu = prefeito_apuracao                         */
/*         vereador_apuracao                         */
/*         prefeito_eleitos                          */
/*         vereador_eleitos                          */
/*         composicao_camara                         */
/*         prefeituras_partido                       */
/*         cadeiras_partido                          */
/*         entenda_apuracao                          */
/*                                                   */
/* gAno = 2004                                       */
/*        2008                                       */
/*                                                   */
/* gAbrangencia = RS                                 */
/*                SC                                 */
/*                Capitais                           */
/*                                                   */
/* gMunicipio = <código do munícipio no TSE>         */
/*                                                   */
/* gTipoApuracao = (votos) validos                   */
/*                 (votos) totais                    */
/*                                                   */
/* gOrdenacao = alfabetica                           */
/*              partidoAlfabetica                    */
/*              partidoVotos                         */
/*              votos                                */
/*                                                   */
/* gTipoComposicao = coligacao                       */
/*                   votos                           */
/*                                                   */
/* gComparativo = com                                */
/*                sem                                */
/*                                                   */
/* gRegiao = <código baseado na tabela MesoRegiao>   */
/* ************************************************* */
var gMenu = "";
var gAno = "";
var gAbrangencia = "";
var gMunicipio = "";
var gRegiao = "";
var gTipoApuracao = "";
var gOrdenacao = "";
var gTipoComposicao = "";
var gComparativo = "";

/* ************************************************* */
/*                INICIALIZAÇÃO                      */
/*                                                   */
/* Inicializa os eventos de captura de teclado, e    */
/* dispara a avaliação dos parametros.               */
/* ************************************************* */
function init() {
	//captura de teclado (F5 e CTRL+F5)
    if (document.addEventListener) {
       document.addEventListener("keydown", avaliaTeclas, false);

    } else if (document.attachEvent) {
       document.attachEvent("onkeydown", avaliaTeclas);

    } else {
       document.onkeydown = avaliaTeclas;
    }

	//avalia os parametros da url
		//menu
		gMenu = getParameter("menu");
		if (gMenu == "") gMenu = "prefeitoApuracao";

		//ano
		gAno = getParameter("ano");
		if (gAno == "") gAno = "2008";

		//abrangencia
		gAbrangencia = getParameter("abrangencia");
		if (gAbrangencia == "") gAbrangencia = "RS";

		//municipio
		gMunicipio = getParameter("municipio");
		if (gMunicipio == "") {
			if (gAbrangencia == "RS") { 
				gMunicipio = "88013";           //Porto Alegre
			} else if (gAbrangencia == "SC") {
				gMunicipio = "81051";           // Florianopolis
			} else {
				gMunicipio = "71072";           // São Paulo
			} 
		}

		gRegiao = getParameter("regiao");
		if (gRegiao == "") gRegiao = "0";
		
		//tipo de apuracação (prefeitos - apuração)
		gTipoApuracao = getParameter("tipoApuracao");
		if (gTipoApuracao == "") gTipoApuracao = "validos";

		//ordenação (vereadores - apuração)
		gOrdenacao = getParameter("ordenacao");
		if (gOrdenacao == "") gOrdenacao = "votos";

		//tipo da composição (composição da câmara)
		gTipoComposicao = getParameter("tipoComposicao");
		if (gTipoComposicao == "") gTipoComposicao = "coligacao";

		//comparativo (prefeituras por partido e cadeiras por partido)
		gComparativo = getParameter("comparativo");
		if (gComparativo == "") gComparativo = "sem";
	//

	atualizaListaDeMunicipios();
	atualizaListaDeRegioes();

	atualizaTela();
}

/* ************************************************* */
/*              AVALIA AS TECLAS                     */
/*                                                   */
/* Inicializa os eventos de captura de teclado, e    */
/* dispara a avaliação dos parametros.               */
/* ************************************************* */
function avaliaTeclas(e) {
	if (!e) e = event;
	var tecla = e.keyCode ? e.keyCode : e.charCode;

	if (tecla == 116) { // F5
		//quando executar o CTRL+F5, monta a url baseada na situação atual da tela, e encaminha para o browser
		if (e.ctrlKey) {
			var url = "apuracao.html?" +
			          "menu=" + gMenu + "&" +
				      "ano=" + gAno + "&" +
				      "abrangencia=" + gAbrangencia + "&" +
				      "municipio=" + gMunicipio + "&" +
				      "tipoApuracao=" + gTipoApuracao + "&" +
					  "ordenacao=" + gOrdenacao + "&" + 
					  "tipoComposicao=" + gTipoComposicao + "&" +
					  "comparativo=" + gComparativo;

			document.location.href = url;
		} else {
			atualizaTela();
		}

		//e.cancelBubble is supported by IE - this will kill the bubbling process.
		if (window.event) {
			window.event.cancelBubble = true;
			window.event.returnValue = false;

			window.event.keyCode = null;
		}

		//e.stopPropagation works only in Firefox.
		if (e.stopPropagation) {
			e.stopPropagation();
			e.preventDefault();
		}

		return false;
	}
}

/* ************************************************* */
/*                ATUALIZA A TELA                    */
/*                                                   */
/* Atualiza o menu destacando o item selecionado.    */
/* Atualiza o titulo, o sub-título e a navegação     */
/* auxiliar da tela.                                 */
/* ************************************************* */
function atualizaTela() {
	//valores 'default' para evitar os erros 404
	if (gMenu == "") gMenu = "prefeitoApuracao";
	if (gAno == "") gAno = "2008";
	if (gAbrangencia == "") gAbrangencia = "RS";
	if (gMunicipio == "") {
		if (gAbrangencia == "RS") { 
			gMunicipio = "88013";           //Porto Alegre
		} else if (gAbrangencia == "SC") {
			gMunicipio = "81051";           // Florianopolis
		} else {
			gMunicipio = "71072";           // São Paulo
		} 
	}
	if (gRegiao == "") gRegiao = "0";
	if (gTipoApuracao == "") gTipoApuracao = "validos";
	if (gOrdenacao == "") gOrdenacao = "votos";
	if (gTipoComposicao == "") gTipoComposicao = "coligacao";
	if (gComparativo == "") gComparativo = "sem";



	//destaca o menu selecionado
	document.getElementById("prefeitoApuracao").className = (gMenu == "prefeitoApuracao" ? "linkado": "");
	document.getElementById("prefeitoEleitos").className = (gMenu == "prefeitoEleitos" ? "linkado": "");
	document.getElementById("vereadorApuracao").className = (gMenu == "vereadorApuracao" ? "linkado": "");
	document.getElementById("vereadorEleitos").className = (gMenu == "vereadorEleitos" ? "linkado": "");
	document.getElementById("composicaoCamara").className = (gMenu == "composicaoCamara" ? "linkado": "");
	document.getElementById("prefeiturasPartido").className = (gMenu == "prefeiturasPartido" ? "linkado": "");
	document.getElementById("cadeirasPartido").className = (gMenu == "cadeirasPartido" ? "linkado": "");
	document.getElementById("entendaApuracao").className = (gMenu == "entendaApuracao" ? "linkado": "");

	//ajusta o título da tela
	switch (gMenu) {
		case "prefeitoApuracao":
			document.getElementById("titulo").innerHTML = "Apura&ccedil;&atilde;o &gt; Prefeito &gt; Resultados";
			break;
		case "prefeitoEleitos":
			document.getElementById("titulo").innerHTML = "Apura&ccedil;&atilde;o &gt; Prefeito &gt; Eleitos";
			break;
		case "vereadorApuracao":
			document.getElementById("titulo").innerHTML = "Apura&ccedil;&atilde;o &gt; Vereador &gt; Resultados";
			break;
		case "vereadorEleitos":
			document.getElementById("titulo").innerHTML = "Apura&ccedil;&atilde;o &gt; Vereador &gt; Eleitos";
			break;
		case "composicaoCamara":
			document.getElementById("titulo").innerHTML = "Apura&ccedil;&atilde;o &gt; Composi&ccedil;&atilde;o da C&acirc;mara";
			break;
		case "prefeiturasPartido":
			document.getElementById("titulo").innerHTML = "Apura&ccedil;&atilde;o &gt; Prefeituras por Partido";
			break;
		case "cadeirasPartido":
			document.getElementById("titulo").innerHTML = "Apura&ccedil;&atilde;o &gt; Cadeiras por Partido";
			break;
	}

	//ajusta o sub-título da tela
	switch (gMenu) {
		case "prefeitoApuracao":
			document.getElementById("subTitulo").innerHTML = "Totaliza&ccedil;&atilde;o dos votos dos candidatos a prefeito";

			if (gTipoApuracao == "validos") {
				document.getElementById("apuracaoPrefeitoTexto").innerHTML = "O percentual de votos v&aacute;lidos definem a classifica&ccedil;&atilde;o do segundo turno";
			} else {
				document.getElementById("apuracaoPrefeitoTexto").innerHTML = "O percentual de votos totais inclui os dados dos candidatos, brancos, nulos e absten&ccedil;&atilde;o";
			}

			break;
		case "prefeitoEleitos":
			document.getElementById("subTitulo").innerHTML = "Prefeitos eleitos nos munic&iacute;pios do estado";
			break;
		case "vereadorApuracao":
			document.getElementById("subTitulo").innerHTML = "Totaliza&ccedil;&atilde;o dos votos dos candidatos a vereador";
			break;
		case "vereadorEleitos":
			document.getElementById("subTitulo").innerHTML = "Vereadores eleitos apresentados por ordem alfab&eacute;tica";
			break;
		case "composicaoCamara":
			document.getElementById("subTitulo").innerHTML = "Composi&ccedil;&atilde;o da bancada de cada coliga&ccedil;&atilde;o e sigla na C&acirc;mara de vereadores";
			break;
		case "prefeiturasPartido":
			document.getElementById("subTitulo").innerHTML = "N&uacute;mero de prefeituras conquistadas por sigla";
			break;
		case "cadeirasPartido":
			document.getElementById("subTitulo").innerHTML = "N&uacute;mero de vagas conquistadas por cada sigla na C&acirc;mara dos Veredores";
			break;
	}

	//navegação auxiliar
	switch (gMenu) {
		case "prefeitoApuracao":
			document.getElementById("ano").style.display = "";
			document.getElementById("abrangencia").style.display = "";
			document.getElementById("municipio").style.display = "";
			document.getElementById("regiao").style.display = "none";

			//não será necessário no primeiro turno document.getElementById("apuracaoZonas").style.display = "";
			document.getElementById("apuracaoZonas").style.display = "none";
			document.getElementById("tipoApuracao").style.display = "";
			document.getElementById("ordenacaoApuracao").style.display = "none";
			document.getElementById("camaraApuracao").style.display = "none";
			document.getElementById("comparativaApuracao").style.display = "none";
			document.getElementById("alfabeto").style.display = "none";

			document.getElementById("legenda").style.display = "";
			document.getElementById("legenda2").style.display = "";
			document.getElementById("legenda_eleito").style.display = "";
			document.getElementById("legenda2_eleito").style.display = "";
			document.getElementById("legenda_2turno").style.display = "";
			document.getElementById("legenda2_2turno").style.display = "";
			document.getElementById("legenda_reeleicao").style.display = "";
			document.getElementById("legenda2_reeleicao").style.display = "";
			document.getElementById("legenda2_rotulo").style.display = "none";
			document.getElementById("legenda_ano2008").style.display = "none";
			document.getElementById("legenda_ano2004").style.display = "none";
			
			document.getElementById("painelTotalizacao").style.display = "";
			
			break;

		case "prefeitoEleitos":
			document.getElementById("ano").style.display = "";
			document.getElementById("abrangencia").style.display = "";
			document.getElementById("municipio").style.display = "none";
			document.getElementById("regiao").style.display = "none";

			document.getElementById("apuracaoZonas").style.display = "none";
			document.getElementById("tipoApuracao").style.display = "none";
			document.getElementById("ordenacaoApuracao").style.display = "none";
			document.getElementById("camaraApuracao").style.display = "none";
			document.getElementById("comparativaApuracao").style.display = "none";
			document.getElementById("alfabeto").style.display = "none";

			document.getElementById("legenda").style.display = "";
			document.getElementById("legenda2").style.display = "";
			document.getElementById("legenda_eleito").style.display = "none";
			document.getElementById("legenda2_eleito").style.display = "none";
			document.getElementById("legenda_2turno").style.display = "";
			document.getElementById("legenda2_2turno").style.display = "";
			document.getElementById("legenda_reeleicao").style.display = "";
			document.getElementById("legenda2_reeleicao").style.display = "";
			document.getElementById("legenda2_rotulo").style.display = "none";
			document.getElementById("legenda_ano2008").style.display = "none";
			document.getElementById("legenda_ano2004").style.display = "none";
			
			document.getElementById("painelTotalizacao").style.display = "none";
			
			break;

		case "vereadorApuracao":
			document.getElementById("ano").style.display = "";
			document.getElementById("abrangencia").style.display = "";
			document.getElementById("municipio").style.display = "";
			document.getElementById("regiao").style.display = "none";

			document.getElementById("apuracaoZonas").style.display = "none";
			document.getElementById("tipoApuracao").style.display = "none";
			document.getElementById("ordenacaoApuracao").style.display = "";
			document.getElementById("camaraApuracao").style.display = "none";
			document.getElementById("comparativaApuracao").style.display = "none";
			
			document.getElementById("legenda").style.display = "";
			document.getElementById("legenda2").style.display = "";
			document.getElementById("legenda_eleito").style.display = "";
			document.getElementById("legenda2_eleito").style.display = "";
			document.getElementById("legenda_2turno").style.display = "none";
			document.getElementById("legenda2_2turno").style.display = "none";
			document.getElementById("legenda_reeleicao").style.display = "none";
			document.getElementById("legenda2_reeleicao").style.display = "none";
			document.getElementById("legenda2_rotulo").style.display = "none";
			document.getElementById("legenda_ano2008").style.display = "none";
			document.getElementById("legenda_ano2004").style.display = "none";
			
			document.getElementById("alfabeto").style.display = (gOrdenacao == "alfabetica" ? "" : "none");
			
			document.getElementById("painelTotalizacao").style.display = "";
			
			break;

		case "vereadorEleitos":
			document.getElementById("ano").style.display = "";
			document.getElementById("abrangencia").style.display = "";
			document.getElementById("municipio").style.display = "";
			document.getElementById("regiao").style.display = "none";

			document.getElementById("apuracaoZonas").style.display = "none";
			document.getElementById("tipoApuracao").style.display = "none";
			document.getElementById("ordenacaoApuracao").style.display = "none";
			document.getElementById("camaraApuracao").style.display = "none";
			document.getElementById("comparativaApuracao").style.display = "none";
			document.getElementById("alfabeto").style.display = "none";

			document.getElementById("legenda").style.display = "none";
			document.getElementById("legenda2").style.display = "none";
			document.getElementById("legenda_eleito").style.display = "";
			document.getElementById("legenda2_eleito").style.display = "";
			document.getElementById("legenda_2turno").style.display = "";
			document.getElementById("legenda2_2turno").style.display = "";
			document.getElementById("legenda_reeleicao").style.display = "";
			document.getElementById("legenda2_reeleicao").style.display = "";
			document.getElementById("legenda2_rotulo").style.display = "none";
			document.getElementById("legenda_ano2008").style.display = "none";
			document.getElementById("legenda_ano2004").style.display = "none";
			
			document.getElementById("painelTotalizacao").style.display = "";
			
			break;

		case "composicaoCamara":
			document.getElementById("ano").style.display = "";
			document.getElementById("abrangencia").style.display = "";
			document.getElementById("municipio").style.display = "";
			document.getElementById("regiao").style.display = "none";

			document.getElementById("apuracaoZonas").style.display = "none";
			document.getElementById("tipoApuracao").style.display = "none";
			document.getElementById("ordenacaoApuracao").style.display = "none";
			document.getElementById("camaraApuracao").style.display = "";
			document.getElementById("comparativaApuracao").style.display = "none";
			document.getElementById("alfabeto").style.display = "none";

			document.getElementById("legenda").style.display = "none";
			document.getElementById("legenda2").style.display = (gTipoComposicao == "coligacao" ? "" : "none");
			document.getElementById("legenda2_eleito").style.display = "none";
			document.getElementById("legenda_2turno").style.display = "none";
			document.getElementById("legenda2_2turno").style.display = "none";
			document.getElementById("legenda_eleito").style.display = "none";
			document.getElementById("legenda_reeleicao").style.display = "none";
			document.getElementById("legenda2_reeleicao").style.display = "none";
			document.getElementById("legenda2_rotulo").style.display = (gTipoComposicao == "coligacao" ? "" : "none");
			document.getElementById("legenda_ano2008").style.display = "none";
			document.getElementById("legenda_ano2004").style.display = "none";
			
			document.getElementById("painelTotalizacao").style.display = "";
			
			break;

		case "prefeiturasPartido":
			document.getElementById("ano").style.display = "none";
			document.getElementById("abrangencia").style.display = "";
			document.getElementById("municipio").style.display = "none";
			document.getElementById("regiao").style.display = "";

			document.getElementById("apuracaoZonas").style.display = "none";
			document.getElementById("tipoApuracao").style.display = "none";
			document.getElementById("ordenacaoApuracao").style.display = "none";
			document.getElementById("camaraApuracao").style.display = "none";
			document.getElementById("comparativaApuracao").style.display = "";
			document.getElementById("alfabeto").style.display = "none";

			document.getElementById("legenda").style.display = "";
			document.getElementById("legenda2").style.display = "none";
			document.getElementById("legenda_eleito").style.display = "none";
			document.getElementById("legenda2_eleito").style.display = "";
			document.getElementById("legenda_2turno").style.display = "none";
			document.getElementById("legenda2_2turno").style.display = "";
			document.getElementById("legenda_reeleicao").style.display = "none";
			document.getElementById("legenda2_reeleicao").style.display = "";
			document.getElementById("legenda2_rotulo").style.display = "none";
			document.getElementById("legenda_ano2008").style.display = "";
			document.getElementById("legenda_ano2004").style.display = (gComparativo == "com" ? "" : "none");
			
			document.getElementById("painelTotalizacao").style.display = "none";
			
			break;

		case "cadeirasPartido":
			document.getElementById("ano").style.display = "none";
			document.getElementById("abrangencia").style.display = "";
			document.getElementById("municipio").style.display = "";
			document.getElementById("regiao").style.display = "none";

			document.getElementById("apuracaoZonas").style.display = "none";
			document.getElementById("tipoApuracao").style.display = "none";
			document.getElementById("ordenacaoApuracao").style.display = "none";
			document.getElementById("camaraApuracao").style.display = "none";
			document.getElementById("comparativaApuracao").style.display = "";
			document.getElementById("alfabeto").style.display = "none";

			document.getElementById("legenda").style.display = "none";
			document.getElementById("legenda2").style.display = "none";
			document.getElementById("legenda_eleito").style.display = "";
			document.getElementById("legenda2_eleito").style.display = "";
			document.getElementById("legenda_2turno").style.display = "";
			document.getElementById("legenda2_2turno").style.display = "";
			document.getElementById("legenda_reeleicao").style.display = "";
			document.getElementById("legenda2_reeleicao").style.display = "";
			document.getElementById("legenda2_rotulo").style.display = "none";
			document.getElementById("legenda_ano2008").style.display = "none";
			document.getElementById("legenda_ano2004").style.display = "none";
			
			document.getElementById("painelTotalizacao").style.display = "";
			
			break;
	}
	
	//abrangencia
	if ((gMenu == "prefeitoEleitos" || gMenu == "prefeiturasPartido") && document.getElementById("sAbragencia").options.length == 3) {
	    document.getElementById("sAbragencia").options[2] = null;
	} else if ((gMenu != "prefeitoEleitos" && gMenu != "prefeiturasPartido") && document.getElementById("sAbragencia").options.length == 2) {
	    document.getElementById("sAbragencia").options[2] = new Option("Capitais", "Capitais");
	}

	//complemento da navegacao auxiliar (tipo de apuração)
	document.getElementById("textoVotosTotais").style.display = (gTipoApuracao == "totais" ? "" : "none");
	document.getElementById("linkVotosTotais").style.display = (gTipoApuracao == "totais" ? "none" : "");
	document.getElementById("textoVotosValidos").style.display = (gTipoApuracao == "validos" ? "" : "none");
	document.getElementById("linkVotosValidos").style.display = (gTipoApuracao == "validos" ? "none" : "");

	//complemento da navegacao auxiliar (ordenação)
	document.getElementById("textoOrdenacaoAlfabetica").style.display = (gOrdenacao == "alfabetica" ? "" : "none");
	document.getElementById("linkOrdenacaoAlfabetica").style.display = (gOrdenacao == "alfabetica" ? "none" : "");
	document.getElementById("textoOrdenacaoPartidoAlfabetica").style.display = (gOrdenacao == "partidoAlfabetica" ? "" : "none");
	document.getElementById("linkOrdenacaoPartidoAlfabetica").style.display = (gOrdenacao == "partidoAlfabetica" ? "none" : "");
	document.getElementById("textoOrdenacaoPartidoVotos").style.display = (gOrdenacao == "partidoVotos" ? "" : "none");
	document.getElementById("linkOrdenacaoPartidoVotos").style.display = (gOrdenacao == "partidoVotos" ? "none" : "");
	document.getElementById("textoOrdenacaoVotos").style.display = (gOrdenacao == "votos" ? "" : "none");
	document.getElementById("linkOrdenacaoVotos").style.display = (gOrdenacao == "votos" ? "none" : "");

	//complemento da navegacao auxiliar (tipo da composição)
	document.getElementById("textoComposicaoPorColigacao").style.display = (gTipoComposicao == "coligacao" ? "" : "none");
	document.getElementById("linkComposicaoPorColigacao").style.display = (gTipoComposicao == "coligacao" ? "none" : "");
	document.getElementById("textoComposicaoPorVotos").style.display = (gTipoComposicao == "votos" ? "" : "none");
	document.getElementById("linkComposicaoPorVotos").style.display = (gTipoComposicao == "votos" ? "none" : "");

	//complemento da navegacao auxiliar (comparativo)
	document.getElementById("textoSemComparativo").style.display = (gComparativo == "sem" ? "" : "none");
	document.getElementById("linkSemComparativo").style.display = (gComparativo == "sem" ? "none" : "");
	document.getElementById("textoComComparativo").style.display = (gComparativo == "com" ? "" : "none");
	document.getElementById("linkComComparativo").style.display = (gComparativo == "com" ? "none" : "");

	//ano
	document.getElementById("sAno").value = gAno;

	//abrangencia
	document.getElementById("sAbragencia").value = gAbrangencia;

	//municipio
	document.getElementById("sCidade").value = gMunicipio;

	//regiao
	document.getElementById("sRegiao").value = gRegiao;

	//descrição da filtragem selecionada
	var descricaoFiltragem = "";
	if (document.getElementById("ano").style.display == "") descricaoFiltragem = descricaoFiltragem + gAno + " - ";
	if (document.getElementById("abrangencia").style.display == "") descricaoFiltragem = descricaoFiltragem + (gAbrangencia == "RS" ? "Rio Grande do Sul" : (gAbrangencia == "SC" ? "Santa Catarina" : "Capitais")) + " - ";
	if (document.getElementById("municipio").style.display == "") descricaoFiltragem = descricaoFiltragem + nomeMunicipio(gMunicipio) + " - ";

	switch (gMenu) {
		case "prefeitoApuracao":
			descricaoFiltragem = descricaoFiltragem + " Votos " + (gTipoApuracao == "validos" ? "V&aacute;lidos" : "Totais") + " - ";
			break;

		case "vereadorApuracao":
			descricaoFiltragem = descricaoFiltragem + " Ordenados por " + (gOrdenacao == "alfabetica" ? "nome do candidato" : (gOrdenacao == "partidoAlfabetica" ? "partido/nome do candidato" : (gOrdenacao == "partidoVotos" ? "partido/vota&ccedil;&atilde;o" : "vota&ccedil;&atilde;o"))) + " - ";
			break;

		case "composicaoCamara":
		    if (gTipoComposicao == "coligacao") {
				descricaoFiltragem = descricaoFiltragem + "Composi&ccedil;&atilde;o por coliga&ccedil;&atilde;o - ";
			} else {
				descricaoFiltragem = descricaoFiltragem + "Composi&ccedil;&atilde;o por votos - ";
			}
			break;

		case "prefeiturasPartido":
		case "cadeirasPartido":
		    if (gComparativo == "com") {
				descricaoFiltragem = "Comparativo 2008 x 2004 - " + descricaoFiltragem;
			} else {
				descricaoFiltragem = "2008 - " + descricaoFiltragem;
			}
			break;

	}

	document.getElementById("descricaoFiltragem").innerHTML = descricaoFiltragem.substring(0,descricaoFiltragem.length-2);

	//content HTML (dados)
	var urlListagem = "html/";
	switch (gMenu) {
		case "prefeitoApuracao":
			urlListagem = urlListagem + gAno + "_" + siglaEstado(gMunicipio) + "_" + gMunicipio + "_prefeito_apuracao_" + gTipoApuracao + ".html";
			break;
			
		case "prefeitoEleitos":
			urlListagem = urlListagem + gAno + "_" + gAbrangencia + "_prefeito_eleitos.html";
			break;
			
		case "vereadorApuracao":
			urlListagem = urlListagem + gAno + "_" + siglaEstado(gMunicipio) + "_" + gMunicipio + "_vereador_apuracao_" + gOrdenacao + ".html";
			break;
			
		case "vereadorEleitos":
			urlListagem = urlListagem + gAno + "_" + siglaEstado(gMunicipio) + "_" + gMunicipio + "_vereadores_eleitos.html";
			break;
			
		case "composicaoCamara":
		    if (gTipoComposicao == "coligacao") {
			    urlListagem = urlListagem + gAno + "_" + siglaEstado(gMunicipio) + "_" + gMunicipio + "_vereadores_camara_partido.html";
			} else {
			    urlListagem = urlListagem + gAno + "_" + siglaEstado(gMunicipio) + "_" + gMunicipio + "_vereadores_camara_votos.html";
			}
			break;
			
		case "prefeiturasPartido":
		    if (gComparativo == "com") {
		        if (gRegiao == "0") {
			        urlListagem = urlListagem + gAno + "_" + gAbrangencia + "_prefeituras_partido_comp.html";
			    } else {
			        urlListagem = urlListagem + gAno + "_" + gAbrangencia + "_prefeituras_partido_" + gRegiao + "_comp.html";
			    }
		    } else {
		        if (gRegiao == "0") {
			        urlListagem = urlListagem + gAno + "_" + gAbrangencia + "_prefeituras_partido.html";
			    } else {
			        urlListagem = urlListagem + gAno + "_" + gAbrangencia + "_prefeituras_partido_" + gRegiao + ".html";
			    }
			}
			break;
			
		case "cadeirasPartido":
		    if (gComparativo == "com") {
    			urlListagem = urlListagem + gAno + "_" + siglaEstado(gMunicipio) + "_" + gMunicipio + "_cadeiras_partido_comp.html";
		    } else {
    			urlListagem = urlListagem + gAno + "_" + siglaEstado(gMunicipio) + "_" + gMunicipio + "_cadeiras_partido.html";
    		}
			break;
	}


	document.getElementById("url").innerHTML = urlListagem;
	var html = buscaHTML(urlListagem);

	if (html == "") {
		switch (gMenu) {
			case "prefeitoEleitos":	
				html = "<b>Não há prefeitos eleitos até o momento.</b>";

				document.getElementById("legenda").style.display = "none";
				document.getElementById("legenda2").style.display = "none";

				break;

			case "vereadorEleitos":
				html = "<b>Apuração ainda não iniciada.</b>";

				break;

			case "composicaoCamara":
				html = "<b>Apuração ainda não iniciada.</b>";

				document.getElementById("legenda2").style.display = "none";

				break;

			case "prefeiturasPartido":
				html = "<b>Não há prefeitos eleitos até o momento.</b>";

				document.getElementById("legenda").style.display = "none";

				break;

			case "cadeirasPartido":
				html = "<b>Apuração ainda não iniciada.</b>";

				document.getElementById("legenda").style.display = "none";
				document.getElementById("legenda2").style.display = "none";

				break;
		}
	}
	document.getElementById("dados").innerHTML = html;
	
	//content HTML (totalizacao)
	var urlTotalizacao = "html/";
	switch (gMenu) {
		case "prefeitoApuracao":
			urlTotalizacao = urlTotalizacao + gAno + "_" + siglaEstado(gMunicipio) + "_" + gMunicipio + "_prefeito_totalizacao.html";
			break;
			
		case "prefeitoEleitos":
		    urlTotalizacao = null;
			break;
			
		case "vereadorApuracao":
			urlTotalizacao = urlTotalizacao + gAno + "_" + siglaEstado(gMunicipio) + "_" + gMunicipio + "_vereador_totalizacao.html";
			break;
			
		case "vereadorEleitos":
			urlTotalizacao = urlTotalizacao + gAno + "_" + siglaEstado(gMunicipio) + "_" + gMunicipio + "_vereador_totalizacao.html";
			break;
			
		case "composicaoCamara":
			urlTotalizacao = urlTotalizacao + gAno + "_" + siglaEstado(gMunicipio) + "_" + gMunicipio + "_vereador_totalizacao.html";
			break;
			
		case "prefeiturasPartido":
		    urlTotalizacao = null;
			break;
			
		case "cadeirasPartido":
			urlTotalizacao = urlTotalizacao + gAno + "_" + siglaEstado(gMunicipio) + "_" + gMunicipio + "_vereador_totalizacao.html";
			break;
	}
	
	if (urlTotalizacao != null) {
	    var totalizacao = buscaHTML(urlTotalizacao);

	    if (totalizacao.substring(totalizacao.length-3, totalizacao.length-2) == "%") {
	        var dados = totalizacao.split("|");

	        document.getElementById("dataApuracao").innerHTML = dados[0];

	        document.getElementById("tituloApuracao").innerHTML = dados[1];

	        document.getElementById("eleitoresTotal").innerHTML = dados[2] + " votos";

	        document.getElementById("apuradosTotal").innerHTML = dados[3] + " votos";
	        document.getElementById("apuradosPercentual").innerHTML = dados[4];

	        document.getElementById("abstencaoTotal").innerHTML = dados[5] + " votos";
	        document.getElementById("abstencaoPercentual").innerHTML = dados[6];

	        document.getElementById("votantesTotal").innerHTML = dados[7] + " votos";
	        document.getElementById("votantesPercentual").innerHTML = dados[8];

	        document.getElementById("validosTotal").innerHTML = dados[9] + " votos";
	        document.getElementById("validosPercentual").innerHTML = dados[10];

	        document.getElementById("brancosTotal").innerHTML = dados[11] + " votos";
	        document.getElementById("brancosPercentual").innerHTML = dados[12];

	        document.getElementById("nulosTotal").innerHTML = dados[13] + " votos";
	        document.getElementById("nulosPercentual").innerHTML = dados[14];
	    }
	}

	//ajusta a barra do clic
	if (gAbrangencia == "RS") {
		document.getElementById("aberto").className = "aberto rs";
		document.getElementById("fechado").className = "fechado sc";

		document.getElementById("linkAberto").href = "javascript:trocaAbrangencia('RS');";
		document.getElementById("linkFechado").href = "javascript:trocaAbrangencia('SC');";
	} else {
		document.getElementById("aberto").className = "aberto sc";
		document.getElementById("fechado").className = "fechado rs";

		document.getElementById("linkAberto").href = "javascript:trocaAbrangencia('SC');";
		document.getElementById("linkFechado").href = "javascript:trocaAbrangencia('RS');";
	}
	
	ajustaTamanhos();
}

function trocaMenu(menu) {
	gMenu = menu;
	
	if (gMenu == "cadeirasPartido" && gAno == "2004") {
		gComparativo = "com";
		gAno = "2008";
	}

	if (gMenu == "prefeiturasPartido" && gAno == "2004") {
		gComparativo = "com";
		gAno = "2008";
	}

	if (gAbrangencia == "Capitais" && (gMenu == "prefeitoEleitos" || gMenu == "prefeiturasPartido")) { 
	    gAbrangencia = "RS";
	    gMunicipio = "88013";
	    
	    atualizaListaDeMunicipios();
    	atualizaListaDeRegioes();
	}
	
	atualizaTela();
}
function trocaAno(ano) {
	gAno = ano;
	atualizaTela();
}
function trocaAbrangencia(abrangencia) {
	gAbrangencia = abrangencia;

	atualizaListaDeMunicipios();
	atualizaListaDeRegioes();

    if (gAbrangencia == "RS") { 
		gMunicipio = "88013";           //Porto Alegre
	} else if (gAbrangencia == "SC") {
		gMunicipio = "81051";           // Florianopolis
	} else {
		gMunicipio = "71072";           // São Paulo
    } 
    gRegiao = "0";

	atualizaTela();
}
function trocaMunicipio(municipio) {
	if (municipio == "00000") {
		MM_openBrWindow('popup-cidades.html?abrangencia=' + gAbrangencia,'popup','width=770,height=520,scrollbars=yes')

	} else if (municipio == "") {
		alert('Selecione um munic\u00EDpio v\u00E1lido.');
		document.getElementById("sCidade").value = gMunicipio;
	
	} else {
		atualizaListaDeMunicipios();
		gMunicipio = municipio;
		atualizaTela();
	}
}
function trocaRegiao(regiao) {
	gRegiao = regiao;
	atualizaTela();
}
function trocaTipoApuracao(tipoApuracao) {
	gTipoApuracao = tipoApuracao;
	atualizaTela();
}
function trocaOrdenacao(ordem) {
	gOrdenacao = ordem;
	atualizaTela();
}
function trocaTipoComposicao(tipoComposicao) {
	gTipoComposicao = tipoComposicao;
	atualizaTela();
}
function trocaComparativo(comparativo) {
	gComparativo = comparativo;
	atualizaTela();
}

function atualizaListaDeMunicipios() {
	var municipios;
    if (gAbrangencia == "RS") { 
        municipios = municipiosRS.slice();
    } else if (gAbrangencia == "SC") {
        municipios = municipiosSC.slice();
    } else {
        municipios = municipiosCap.slice();
    }                                  
    
    //inclui os itens adicionais (RS, SC)
	if (gAbrangencia == "RS" || gAbrangencia == "SC") {
		municipios[municipios.length] = new Array("", "----------");
		municipios[municipios.length] = new Array("00000", "Outros Municipios");
	}

    //elimina os itens atuais
    for (var i = document.getElementById("sCidade").options.length; i > 0; i--){
        document.getElementById("sCidade").options[i-1] = null;
    }    
    
    //inclui os novos itens
    for (var i = 0; i < municipios.length; i++) {
        document.getElementById("sCidade").options[i] = new Option(municipios[i][1], municipios[i][0]);
    }   
}

function atualizaListaDeRegioes() {
	var regioes;
    if (gAbrangencia == "RS") { 
        regioes = regioesRS.slice();
    } else if (gAbrangencia == "SC") {
        regioes = regioesSC.slice();
    } else {
        regioes = new Array();
    }                                  

    //elimina os itens atuais
    for (var i = document.getElementById("sRegiao").options.length; i > 0; i--){
        document.getElementById("sRegiao").options[i-1] = null;
    }    
    
    //inclui os novos itens
    for (var i = 0; i < regioes.length; i++) {
        document.getElementById("sRegiao").options[i] = new Option(regioes[i][1], regioes[i][0]);
    } 
}

function nomeMunicipio(municipio) {
	var municipios = municipiosRS.concat(municipiosSC).concat(municipiosCap).concat(outrosRS).concat(outrosSC);

	for(m in municipios) if (municipios[m][0] == municipio) return municipios[m][1];
}

function siglaEstado(municipio) {
	var municipios = municipiosRS.concat(municipiosSC).concat(municipiosCap).concat(outrosRS).concat(outrosSC);

	for(m in municipios) if (municipios[m][0] == municipio) return municipios[m][2];
}

function getSelectedIndex(objSelect, value) {
    var selectedIndex = -1;
    
    for(i=0; i < objSelect.options.length; i++) {
        alert(objSelect.options[i].text);
        if (objSelect.options[i].value == value) {
            selectedIndex = 1;
            break;
        }    
    }
    
    alert(selectedIndex);
    
    return selectedIndex;
}

/* ************************************************* */
/*              RECUPERA PARAMETROS                  */
/*                                                   */
/* Recupera os parametros informados na requisição.  */
/* ************************************************* */
function getParameter( nomeParametro ) {
  nomeParametro = nomeParametro.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
  
  var regexS = "[\\?&]" + nomeParametro + "=([^&#]*)";
  var regex = new RegExp( regexS );
  
  var results = regex.exec( window.location.href );
  if( results == null )
    return "";
  else
    return results[1];
}

/* ************************************************* */
/*                   ABRE POPUP                      */
/*                                                   */
/* Função para abertura de pop-up's do clicRBS.      */
/* ************************************************* */
function MM_openBrWindow(theURL,winName,features) {
  var janela = window.open(theURL,winName,features);

  if (janela) {
  } else {
	  //alert('Alguma coisa não permitiu abrir uma pop-up.');
	  alert('Por favor, habilite a pop-up para visualizar outros munic\u00EDpios.');
  }
}

function buscaHTML(url) {
    url = window.location.href.substring(0, window.location.href.lastIndexOf("/")) + "/" + url;

    var request = httpRequest();
    
    request.open("GET", url, false);
	request.setRequestHeader('encoding','ISO-8859-1'); 
	request.send(null);
    
    if (request.getResponseHeader("Date")) {
        var cached = request;
        
        request = httpRequest();
        var ifModifiedSince = cached.getResponseHeader("Last-Modified");
        ifModifiedSince = (ifModifiedSince) ? ifModifiedSince : new Date(0); // January 1, 1970
  
        request.open("GET", url, false);
        request.setRequestHeader("If-Modified-Since", ifModifiedSince);
		request.setRequestHeader('encoding','ISO-8859-1'); 
        request.send("");
        if(request.status == 304) {
            request = cached;
        }        
    } else {
        request = httpRequest();
        
        request.open("GET", url, false);
		request.setRequestHeader("If-Modified-Since", new Date(0));
		request.setRequestHeader('encoding','ISO-8859-1'); 

        request.send(null);
    }

	conteudo = request.responseText;
    request = null;

    return conteudo;    
}

function httpRequest() {
    if (window.XMLHttpRequest) {
        xmlhttp = new XMLHttpRequest(); //objeto nativo (FF / Safari / Konqueror / Opera / etc)
    } else {
        try { 
            xmlhttp = new ActiveXObject("Msxml2.XMLHTTP"); //activeX (IE5.5+/MSXML2+)
        } catch (e) { 
            try { 
                xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); //activeX (IE5+/MSXML1)
            } catch (E) { 
                xmlhttp = false; 
            } 
        } 
    }
    
    return xmlhttp;
}

function painel() {
	if (gAbrangencia == "RS" ) {
		MM_openBrWindow('http://painel.clicrbs.com.br/eleicoes2008/jsp/apuracao_painel_cidades.jsp?uf=1','painel','width=770,height=520,left=0,top=0');
	} else {
		MM_openBrWindow('http://painel.clicrbs.com.br/eleicoes2008/jsp/apuracao_painel_cidades.jsp?uf=2','painel','width=770,height=520,left=0,top=0');
	}
}
