$(document).ready(function () {
	ajustarSite();
	GerarGrafico();
	carregarEventoMenu();
})

$(window).resize(function () {
	ajustarSite();
});

function ajustarSite() {

	// Ajusta o tamanho do grafico do indicador
	oDivGrafico = $('#jq-div-grafico');
	iAlturaTD = oDivGrafico.closest('td').height()-70;
	oDivGrafico.height(133);
}
function GerarGrafico() {
	var oDivGrafico = $("#jq-div-grafico");

	var PosicaoBarra = 0;

	var DadosGraficoFundo = ["barra-1", "barra-2", "barra-3"];

	/*
	var DadosGraficoTitulo = ["Mortalidade - menores de 5 anos", "Pré-Natal insuficiente", "Distorção idade-série - Ensino Médio", "Homicídio juvenil Masculino", "Reprovação no Ensino Médio"];
	var DadosGrafico = [
							  ["Rio de Janeiro:26.1: / mil:2009", "Jacarezinho:47.9: / mil:2009", "Botafogo:11.9: / mil:2009"]
							, ["Rio de Janeiro:32:%:2009", "Jacarezinho:48:%:2009", "Botafogo:12:%:2009"]
							, ["Rio de Janeiro:59:%:2009", "Jacarezinho:92:%:2009", "Botafogo:47:%:2009"]
							, ["Rio de Janeiro:126.02: / 100 mil:2007", "Rio de Janeiro:121.32: / 100 mil:2008", "Rio de Janeiro:66.78: / 100 mil:2009"]
							, ["Rio de Janeiro:16:%:2007", "Rio de Janeiro:24:%:2008", "Rio de Janeiro:25:%:2009"]
						];
	*/

	var DadosGraficoTitulo = ["Pré-Natal insuficiente", "Distorção idade-série - Ensino Médio", "Reprovação no Ensino Médio"];
	var DadosGrafico = [
							  ["Rio de Janeiro:32:%:2009", "Jacarezinho:48:%:2009", "Botafogo:12:%:2009"]
							, ["Rio de Janeiro:59:%:2009", "Jacarezinho:92:%:2009", "Botafogo:47:%:2009"]
							, ["Rio de Janeiro:16:%:2007", "Rio de Janeiro:24:%:2008", "Rio de Janeiro:25:%:2009"]
						];

	var iIndice = Math.floor(Math.random() * DadosGrafico.length);

	var oRegistro = DadosGrafico[iIndice];
	var TituloGrafico = DadosGraficoTitulo[iIndice];
	
	oDivGrafico.find('.jq-titulo-grafico').html(TituloGrafico);

	var iQtdItens = oRegistro.length;
	var iPorcLarg = 90 / iQtdItens;  //((iQtdItens * 2) - 1)

	iPorcLarg = Math.ceil(iPorcLarg);

	var iValorMaximo = 0;
	for (var i = 0; i < oRegistro.length; i++) {
		var iValorAtual = parseFloat(oRegistro[i].split(":")[1]);
		if (iValorAtual > iValorMaximo) {
			iValorMaximo = iValorAtual;
		}
	}

	for (var i = 0; i < oRegistro.length; i++) {
		var DadosBarra = oRegistro[i].split(":");
		var Legenda = DadosBarra[0];
		var Valor = DadosBarra[1];
		var Unidade = DadosBarra[2]
		var Rotulo = DadosBarra[3];

		var FundoCSS = DadosGraficoFundo[(i%3)];

		var iPorcAlt = Valor * 98 / iValorMaximo

		var TamanhoBarra = iPorcAlt + "%"
		PosicaoBarra = iPorcLarg * (i);

		var BarraGrafico = $('<div class="coluna-grafico ' + FundoCSS + ' jq-coluna-grafico" style="left:' + PosicaoBarra + '%; height:' + TamanhoBarra + '; width: ' + iPorcLarg + '%;"> ' +
                                '<div class="fundo-coluna-grafico">' +
                                    '<div class="legenda-coluna jq-valor-legenda">' + Legenda + '</div>' +
                                    '<div class="valor-coluna jq-valor-coluna">' + Valor + ' ' + Unidade + '</div>' +
                                    '<div class="rotulo-coluna jq-valor-rotulo">' + Rotulo + '</div>' +
                                '</div>' +
                              '</div>');

		$("#jq-grafico").append(BarraGrafico);

	}


}

function carregarEventoMenu() {
	oMenu = $('#jq-tbl-menu-home');

	var iMN = $('#jq-hdn-mn').val();

	var oMenuSelecionado = oMenu.find('td').not('.td-vazia').find('input[value="' + iMN + '"]').closest('td');
	// console.log(oMenuSelecionado)
	if (oMenuSelecionado.length > 0) {
		console.log(1)
		var sSrcAntigo = oMenuSelecionado.find('img:first').attr('src');

		if (sSrcAntigo.length > 3) var sExtensao = sSrcAntigo.substring(sSrcAntigo.length - 3, sSrcAntigo.length);
		if (sSrcAntigo.length > 4) var sSrcNovo = sSrcAntigo.substring(0, sSrcAntigo.length - 4) + '_selected.' + sExtensao;

		oMenuSelecionado.find('img:first').attr('src', sSrcNovo);
		oMenuSelecionado.addClass('selecionado');
	}

	oMenu.find('tr:first > td').not('.td-separador')
	.unbind()
	.hover(
		  function () {
		  	if (!$(this).hasClass('selecionado')) {
		  		var sSrcAntigo = $(this).find('> div img:eq(0)').attr('src');

		  		if (sSrcAntigo.length > 3) var sExtensao = sSrcAntigo.substring(sSrcAntigo.length - 3, sSrcAntigo.length);
		  		if (sSrcAntigo.length > 4) var sSrcNovo = sSrcAntigo.substring(0, sSrcAntigo.length - 4) + '_over.' + sExtensao;
		  		$(this).find('> div img:eq(0)').attr('src', sSrcNovo);
		  	}

		  	$(this).find('ul:eq(0)').show();
		  }
		, function () {
			if (!$(this).hasClass('selecionado')) {
				var sSrcAntigo = $(this).find('> div img:eq(0)').attr('src');
				var sSrcNovo = sSrcAntigo.replace('_over.', '.');
				$(this).find('> div img:eq(0)').attr('src', sSrcNovo);
			}

			$(this).find('ul:eq(0)').hide();
		}
	)
	.find('li')
	.unbind()
	.hover(
		  function () {
		  	$(this).addClass('ativo');
		  }
		, function () {
			$(this).removeClass('ativo');
		}
	)
}

// ********************************************************************************	//
// Autor		: Go2Web															//
// Data			: 01/01/1900														//
// Descricao	: Funcao para Criticar o formulário									//
// Entrada		: oForm	(Formulário a ser criticado)								//
// Saida		: True ou False														//
// ********************************************************************************	//
function Critica(oForm) {
	var msgaux = 'Preencha os campos obrigatorios abaixo:'
	var erro = false;
	var nomeCampoAnterior;

	//Procurar todas as combos multiplas e marcar todos os options
	$(oForm).find('select[fullcombo] option').each(function () {
		this.selected = true;
	});

	$(oForm).find('.jq-obrigatorio').each(function () {
		var jqCampo = $('#' + $(this).attr('for'));
		var nomeCampo = jqCampo.attr('name');

		//Tratando os campos de texto (praticamente o mesmo)
		if ($(jqCampo).is('input:text, input:hidden, input:password, textarea')) {
			if ($.trim(jqCampo.val()).length == 0) {
				msgaux += '\n. ' + $(this).text();
				erro = true;
			}
			else {
				if ($(jqCampo).hasClass('jq-email')) {
					if (!validaEmail(jqCampo.val())) {
						erro = true;
						msgaux += '\n. E-mail inválido';
					}
				}
			}
		}

		//Tratando as combos obrigatórias
		if ($(jqCampo).is('select')) {
			var oCombo = jqCampo.get(0);
			if (!oCombo.multiple && (oCombo.selectedIndex == 0 || jqCampo.find('option:selected').length == 0)) {
				msgaux += '\n. ' + $(this).text();
				erro = true;
			}
			if (oCombo.multiple && $(oCombo).find('option:selected').length == 0) {
				msgaux += '\n. ' + $(this).text();
				erro = true;
			}
		}

		/*Verifico se o nome do campo radio anterior é o mesmo que o atual e evito fazer duas verificações no mesmo grupo, 
		supondo logicamente que as opções do grupo es~arão dispostas em conuunto no formulário*/
		if ($(jqCampo).is('input:radio') && nomeCampoAnterior != nomeCampo) {
			if ($(oForm).find('input:radio:checked[name="' + nomeCampo + ']').length == 0) {
				msgaux += '\n. ' + $(this).text();
				erro = true;
			}
		}

		nomeCampoAnterior = nomeCampo;
	})

	$(oForm).find('input[alt="date"]').each(function () {
		if (DataValida(this) != '') {
			msgaux += '\n. ' + $('label[for="' + this.id + '"]').text() + ' - ' + DataValida(this);
			erro = true;
		}
	})

	$(oForm).find('input[alt="hour"]').each(function () {
		if (HoraValida(this) != '') {
			msgaux += '\n. ' + $('label[for="' + this.id + '"]').text() + ' - ' + HoraValida(this);
			erro = true;
		}
	});

	if (erro) {
		alert(msgaux);
	}
	return (!erro);
}
