// Position jQuery
if(jQuery) (function ($, undefined) {
    $.fn.getCursorPosition = function () {
        var el = $(this).get(0);
        var pos = 0;
        if ('selectionStart' in el) {
            pos = el.selectionStart;
        } else if ('selection' in document) {
            el.focus();
            var Sel = document.selection.createRange();
            var SelLength = document.selection.createRange().text.length;
            Sel.moveStart('character', -el.value.length);
            pos = Sel.text.length - SelLength;
        }
        return pos;
    }
})(jQuery);

/* MODAL - ADICIONAR CAMPO CALCULADO */
var flagAlterarCampoCalculado = false;
function addCalculatedColumn(indice)
{
	if(typeof(indice) == 'undefined') 
		indice = '';
	
	var tabela = (indice == '' || indice == 1) ? $("#tabela").val() : $("#tabelaDetail").val();
	
	$.post(basepath + "principal/addCalculatedColumn", {
		tabela : tabela,
		indice : indice
	}, function(data){

		$("#janela_modal").html('');
		$("#overlay").html('');
		
		var overlay = '<div id="overlay"></div>';
		var overlayCSS = {'position' : 'absolute','width' : pageWidth + 'px','height' : pageHeight + 'px','left' : '0','top' : '0','display' : 'none', 'z-index' : '50'};
		
		var janela = '<div id="janela_modal"></div>';
		var janelaCSS = {'position' : 'absolute','top' : '50%','left' : '50%','width' : '480px','height' : '405px','margin-left' : '-240px','margin-top' : '-280px','background-color' : '#FFF','padding' : '10px','display' : 'none','border' : '4px solid #63A0CE','border-radius' : '10px','z-index' : '51'};
		
		var btnFechar = '<a onClick="fechar()"><img id="btnFechar" src="' + basepath + 'www/imagem/close.png" alt="Fechar" title="Fechar" /></a>';
		var btnFecharCSS = {'position' : 'absolute','top' : '50%','left' : '50%','cursor' : 'pointer','margin-left' : '215px','margin-top' : '-205px'}
		
		var btnCancelar = '<input type="image" id="btn_cancelar" name="btn_cancelar" src="' + basepath + 'www/imagem/btn_cancelar.png" onClick="fechar()" />';
		var btnCancelaCSS = {'position' : 'absolute','top' : '100%','left' : '100%','margin-left' : '-117px','margin-top' : '-40px','width' : '100px'}
		
		var btnOK = '<input type="image" id="btn_enviar" name="btn_enviar" src="' + basepath + 'www/imagem/btn_ok.png" onClick="adicionarCampoCalculado('+ indice +')" />';
		var btnOKCSS = {'position' : 'absolute','top' : '100%','left' : '0%','margin-left' : '270px','margin-top' : '-40px','width' : '100px'}
		
		$("body").append(overlay);
		$("body").append(janela);
		$("#overlay").css(overlayCSS).fadeIn('fast', function(){
			
			$("#janela_modal").append(data);

			$("#janela_modal").append(btnFechar);
			$("#btnFechar").css(btnFecharCSS).fadeIn("slow");
			
			$("#janela_modal").append(btnCancelar);
			$("#btn_cancelar").css(btnCancelaCSS);
			
			$("#janela_modal").append(btnOK);
			$("#btn_enviar").css(btnOKCSS);
			
			$("#janela_modal").css(janelaCSS).fadeIn("slow");	
			
			var idMyMenu = 'myMenu' + indice;
			$('#campoCalculadoFormula').contextMenu({ menu: idMyMenu, leftButton: true });
		});
		
		return false;
	});	
}

/**
 *
**/
function adicionarCampoCalculado(indice)
{
	if(typeof(indice) == 'undefined')
		indice = '';
		
	var legenda	= $('#campoCalculadoLegenda').val();
	var formula = $('#campoCalculadoFormula').val();
	var campoTipo = $('#campoCalculadoTipo').val();
	
	$(".erroCriar").remove();
	var erro = 0;
	
	if($.trim(formula) == '')
	{
		$("#campoCalculadoFormula").after('<span class="erroCriar" style="font-size: 22px; margin-left: -24px;">*</span>');
		erro++;
	}
	
	if($.trim(legenda) == '')
	{
		$("#campoCalculadoLegenda").after('<span class="erroCriar" style="font-size: 20px;">*</span>');
		erro++;
	}
	
	if(erro == 0)
	{
		var tabela = (indice == '' || indice == 1) ? $("#tabela").val() : $("#tabelaDetail").val();
		
		$.post(basepath + "principal/validarCampoCalculado", {
			formula : formula,
			tabela : tabela
		}, function(data){
			if(data == 0)
			{
				$.post(basepath + "principal/listaCamposCalculados", {
					tabela : tabela,
					indice : indice,
					legenda : legenda,
					formula : formula,
					campoTipo : campoTipo
				}, function(data){
					$(".tbListaCampoCalculado" + indice).append(data).fadeIn('show');
					
					flagAlterarCampoCalculado = true;
						
					$("#janela_modal").fadeOut();
					$("#overlay").fadeOut();
				});
			}
			else
			{
				jAlert('Fórmula Inválida.', "Alerta!", function(){ 
					$("#campoCalculadoFormula").after('<span class="erroCriar" style="font-size: 22px; margin-left: -25px;">*</span>');
					return false; 
				});
			}
		});
	}
	else
	{
		jAlert('Os campos com (<font size="2" color="red">*</font>) são obrigatórios.', "Alerta!", function(){ return false; });
	}
}

/* MODAL - EDITAR CAMPO CALCULADO */
function editCampoCalculado(hash, indice)
{
	var legenda	= $('#campoCalculadoLegenda_' + hash).val();
	var formula = $('#campoCalculadoFormula_' + hash).val();
	var campoTipo = $('#campoCalculadoTipo_' + hash).val();

	$.post(basepath + "principal/editCalculatedColumn", {
		legenda : legenda,
		formula : formula,
		campoTipo : campoTipo
	}, function(data){

		$("#janela_modal").html('');
		$("#overlay").html('');
		
		var overlay = '<div id="overlay"></div>';
		var overlayCSS = {'position' : 'absolute','width' : pageWidth + 'px','height' : pageHeight + 'px','left' : '0','top' : '0','display' : 'none', 'z-index' : '50'};
		
		var janela = '<div id="janela_modal"></div>';
		var janelaCSS = {'position' : 'absolute','top' : '50%','left' : '50%','width' : '480px','height' : '405px','margin-left' : '-240px','margin-top' : '-240px','background-color' : '#FFF','padding' : '10px','display' : 'none','border' : '4px solid #63A0CE','border-radius' : '10px','z-index' : '51'};
		
		var btnFechar = '<a onClick="fechar()"><img id="btnFechar" src="' + basepath + 'www/imagem/close.png" alt="Fechar" title="Fechar" /></a>';
		var btnFecharCSS = {'position' : 'absolute','top' : '50%','left' : '50%','cursor' : 'pointer','margin-left' : '215px','margin-top' : '-205px'}
		
		var btnCancelar = '<input type="image" id="btn_cancelar" name="btn_cancelar" src="' + basepath + 'www/imagem/btn_cancelar.png" onClick="fechar()" />';
		var btnCancelaCSS = {'position' : 'absolute','top' : '100%','left' : '100%','margin-left' : '-117px','margin-top' : '-40px','width' : '100px'}
		
		var btnOK = '<input type="image" id="btn_enviar" name="btn_enviar" src="' + basepath + 'www/imagem/btn_alterar.png" onClick="editarCampoCalculado('+ hash +', '+ indice +')" />';
		var btnOKCSS = {'position' : 'absolute','top' : '100%','left' : '0%','margin-left' : '270px','margin-top' : '-40px','width' : '100px'}
		
		$("body").append(overlay);
		$("body").append(janela);
		$("#overlay").css(overlayCSS).fadeIn('fast', function(){
			
			$("#janela_modal").append(data);

			$("#janela_modal").append(btnFechar);
			$("#btnFechar").css(btnFecharCSS).fadeIn("slow");
			
			$("#janela_modal").append(btnCancelar);
			$("#btn_cancelar").css(btnCancelaCSS);
			
			$("#janela_modal").append(btnOK);
			$("#btn_enviar").css(btnOKCSS);
			
			$("#janela_modal").css(janelaCSS).fadeIn("slow");	
			
			var idMyMenu = 'myMenu' + indice;
			$('#campoCalculadoFormula').contextMenu({ menu: idMyMenu, leftButton: true });
		});
		
		return false;
	});	
}

/**
 *
**/
function editarCampoCalculado(hash, indice)
{
	var tabela = (indice == '' || indice == 1) ? $("#tabela").val() : $("#tabelaDetail").val();

	var legenda	= $('#campoCalculadoLegenda').val();
	var formula = $('#campoCalculadoFormula').val();
	var campoTipo = $('#campoCalculadoTipo').val();
	
	$(".erroCriar").remove();
	var erro = 0;
	
	if($.trim(formula) == '')
	{
		$("#campoCalculadoFormula").after('<span class="erroCriar" style="font-size: 22px; margin-left: -24px;">*</span>');
		erro++;
	}
	
	if($.trim(legenda) == '')
	{
		$("#campoCalculadoLegenda").after('<span class="erroCriar" style="font-size: 20px;">*</span>');
		erro++;
	}
	
	if(erro == 0)
	{
		$.post(basepath + "principal/validarCampoCalculado", {
			formula : formula,
			tabela : tabela
		}, function(data){
			if(data == 0)
			{
				$('#spanCalculadoLegenda_' + hash).html(legenda);
				$('#spanCalculadoFormula_' + hash).html(formula);
				$('#spanCalculadoTipo_' + hash).html( $("#campoCalculadoTipo option:selected").text() );
				
				$('#campoCalculadoLegenda_' + hash).val(legenda);
				$('#campoCalculadoFormula_' + hash).val(formula);
				$('#campoCalculadoTipo_' + hash).val(campoTipo);
				
				$("#janela_modal").fadeOut();
				$("#overlay").fadeOut();
				
				// CONTAR
				var contar = 0;
				$(".classIndice_" + hash).each(function(){ contar++; });
				
				/* REMOVE OS CAMPOS */
				$(".classIndice_" + hash).remove();
				
				/* GRAFICOS HORIZONTAL */
				var campoGraficoHorizontal = new Array();
				$("input[name='campoGraficoHorizontal']").each(function(){ 
					var campo = $(this).val();
					
					if($.trim(campo) != '') 
					{
						var arrayQuebra = campo.split(',');
						var quebra = new Array();
						quebra[0] = arrayQuebra[0];
						arrayQuebra.splice(0, 1);
						quebra[1] = arrayQuebra.join();
						
						if(quebra[0] == 0)
						{
							var quebraCampo = quebra[1].split(':');
							var hashCampo = quebraCampo[3];

							if(hashCampo == hash)
							{
								var indiceLinha = this.id;
								var arrayIndiceCampo = indiceLinha.split('_');
								var ID = arrayIndiceCampo[1];
								$("#tb_" + ID).remove();
								contar++;
							}
						}
					}
				});
				
				flagAlterarCampoCalculado = true;
				
				// MENSAGEM
				if(contar > 0)
				{
					jAlert('Os dados adicionados para esse campo calculado foram removidos.', "Alerta!", function(){ return false; });
				}
			}
			else
			{
				jAlert('Fórmula Inválida.', "Alerta!", function(){ 
					$("#campoCalculadoFormula").after('<span class="erroCriar" style="font-size: 22px; margin-left: -25px;">*</span>');
					return false; 
				});
			}
		});			
	}
	else
	{
		jAlert('Os campos com (<font size="2" color="red">*</font>) são obrigatórios.', "Alerta!", function(){ return false; });
	}
}

/**
 * 
**/
function deleteCampoCalculado(hash, indice)
{
	jConfirm("Deseja realmente excluir?", 'Confirmação!', 
		function(r) {
			if (r == true)
			{
				$("#trCalculado_" + hash).fadeOut('show').remove();
				$("#hrCalculado_" + hash).fadeOut('show').remove();
				
				var contar = 0;
				$(".controleTrCalculado" + indice).each(function(){ contar++; });
				
				if(contar == 0)
				{
					$(".tbListaCampoCalculado" + indice).fadeOut('show');
				}
				
				// Remove os Campos Calculados
				removerDadosCampoCalculado(hash);
				
				flagAlterarCampoCalculado = true;
			}
			else
			{
				return false;
			}
		});
}

/**
 *
**/
function removerDadosCampoCalculado(hash)
{
	// CONTAR
	var contar = 0;
	$(".classIndice_" + hash).each(function(){ contar++; });	
	
	/* REMOVE OS CAMPOS */
	$(".classIndice_" + hash).remove();
	
	/* GRAFICOS HORIZONTAL */
	var campoGraficoHorizontal = new Array();
	$("input[name='campoGraficoHorizontal']").each(function(){ 
		var campo = $(this).val();
		
		if($.trim(campo) != '') 
		{
			var arrayQuebra = campo.split(',');
			var quebra = new Array();
			quebra[0] = arrayQuebra[0];
			arrayQuebra.splice(0, 1);
			quebra[1] = arrayQuebra.join();
			
			if(quebra[0] == 0)
			{
				var quebraCampo = quebra[1].split(':');
				var hashCampo = quebraCampo[3];

				if(hashCampo == hash)
				{
					var indiceLinha = this.id;
					var arrayIndiceCampo = indiceLinha.split('_');
					var ID = arrayIndiceCampo[1];
					
					$("#tb_" + ID).remove();
					
					contar++;
				}
			}
		}
	});
	
	/* REMOVE OS FILTROS MASTER */ 
	var imagemAdd = '<img src="'+ basepath +'www/imagem/adicionar.png" align="absmiddle" class="opacityImgAdd" onClick="adicionarFiltro()" title="Adicionar Filtro" alt="Adicionar Filtro" />';	
	
	$(".fielFiltros select[name='filtroCampos']").each(function(){ 
		var campo = $(this).val();
		
		if($.trim(campo) != '') 
		{ 
			var arrayQuebra = campo.split(',');
			var quebra = new Array();
			quebra[0] = arrayQuebra[0];
			arrayQuebra.splice(0, 1);
			quebra[1] = arrayQuebra.join();

			if(quebra[0] == 0)
			{
				var quebraCampo = quebra[1].split(':');
				var hashCampo = quebraCampo[2];
				
				if(hashCampo == hash)
				{	
					var qtdFiltros = 0;
					$(".fielFiltros").each(function() { qtdFiltros++; }); 
		
					if (qtdFiltros > 1)
					{
						$(this).parent().remove();
						
						$('.btnDivAdd').html("");
			
						$('.btnDivAdd:last').html(imagemAdd);
					}
					else
					{
						$(".fielFiltros .resultFiltro").html("");
			
						$(".btnDivDel").html("");
			
						$(".fielFiltros select[name='filtroCampos'] option:first").attr("selected", "selected");
			
						$(".fielFiltros select[name='filtroCampos']").attr("id", "filtroCampos");
					}

					contar++;
				}
			}
		}
	});

	/* REMOVE OS FILTROS DETAIL */
	var imagemAddDetail = '<img src="'+ basepath +'www/imagem/adicionar.png" align="absmiddle" class="opacityImgAddDetail" onClick="adicionarFiltroDetail()" title="Adicionar Filtro" alt="Adicionar Filtro" />';	
	
	$(".fielFiltrosDetail select[name='filtroCamposDetail']").each(function(){ 
		var campo = $(this).val();

		if($.trim(campo) != '') 
		{ 
			var arrayQuebra = campo.split(',');
			var quebra = new Array();
			quebra[0] = arrayQuebra[0];
			arrayQuebra.splice(0, 1);
			quebra[1] = arrayQuebra.join();

			if(quebra[0] == 0)
			{
				var quebraCampo = quebra[1].split(':');
				var hashCampo = quebraCampo[2];
				
				if(hashCampo == hash)
				{	
					var qtdFiltros = 0;
					$(".fielFiltrosDetail").each(function() { qtdFiltros++; }); 
		
					if (qtdFiltros > 1)
					{
						$(this).parent().remove();
						
						$('.btnDivAddDetail').html("");
			
						$('.btnDivAddDetail:last').html(imagemAddDetail);
					}
					else
					{
						$(".fielFiltrosDetail .resultFiltroDetail").html("");
			
						$(".btnDivDelDetail").html("");
			
						$(".fielFiltrosDetail select[name='filtroCamposDetail'] option:first").attr("selected", "selected");
			
						$(".fielFiltrosDetail select[name='filtroCamposDetail']").attr("id", "filtroCamposDetail");
					}

					contar++;
				}
			}
		}
	});
	
	// MENSAGEM
	if(contar > 0)
	{
		$("select").multiselect('refresh');
	
		$(".tipTip").tipTip({maxWidth: "auto", edgeOffset: 30, defaultPosition: "right"});
	
		jAlert('Os dados adicionados para esse campo calculado foram removidos.', "Alerta!", function(){ return false; });
	}
}

/**
 * Adiciona a Formula do Campo Calculado o valor escolhido
**/
function adicionarCampoTextarea(valor)
{
	var position = $("#campoCalculadoFormula").getCursorPosition();
	
	var valorAntigo = $("#campoCalculadoFormula").val();
	
	var novoValor = valorAntigo.substr(0, position) + valor + valorAntigo.substr(position);
	
	$("#campoCalculadoFormula").val(novoValor).focus();
}

/**
 * Troca de aba nos Campos Calculados
**/
function trocarAbaCampoCalculado(abaCampo)
{
	tabsCamposCalculados = $("#tabsCamposCalculados").children('ul').children();
	divsCamposCalculados = $("#tabsCamposCalculados").children('div');
	
	tabsCamposCalculados.removeClass('in');
	$(tabsCamposCalculados[abaCampo]).addClass('in');
	
	divsCamposCalculados.hide();
	$(divsCamposCalculados[abaCampo]).fadeIn('slow');
}

/* MODAL - ADICIONAR CAMPOS GRAFICO HORIZONTAL */
function adicionarColunas()
{
	var tabela = $("#tabela").val();
	var tipo   = $("input[name='formato']:radio:checked").val();
	
	// Campos Calculados
	var calcNome = new Array();
	$(".tbListaCampoCalculado1 input[name='campoCalculadoLegenda']").each(function(){ calcNome.push($(this).val()); });
	
	var calcFormula = new Array();
	$(".tbListaCampoCalculado1 input[name='campoCalculadoFormula']").each(function(){ calcFormula.push($(this).val()); });
	
	var calcTipoData = new Array();
	$(".tbListaCampoCalculado1 input[name='campoCalculadoTipo']").each(function(){ calcTipoData.push($(this).val()); });
	
	var calcIndice = new Array();
	$(".tbListaCampoCalculado1 input[name='campoCalculadoIndice']").each(function(){ calcIndice.push($(this).val()); });
	
	$.post(basepath + "principal/addCamposGH", {
		tabela : tabela,
		tipo : tipo,
		'calcNome[]' : calcNome,
		'calcIndice[]' : calcIndice,
		'calcFormula[]' : calcFormula,
		'calcTipoData[]' : calcTipoData
	}, function(data){
	
		$("#janela_modal").html('');
		$("#overlay").html('');
		
		var overlay = '<div id="overlay"></div>';
		var overlayCSS = {'width' : pageWidth + 'px','height' : pageHeight + 'px'};
		
		var janela = '<div id="janela_modal"></div>';
		var janelaCSS = {'top' : '50%','left' : '50%','width' : '420px','height' : '275px','margin-left' : '-210px','margin-top' : '-130px'};
		
		var btnFechar = '<a onClick="fechar()"><img id="btnFechar" src="' + basepath + 'www/imagem/close.png" alt="Fechar" title="Fechar" /></a>';
		var btnFecharCSS = {'position' : 'absolute','top' : '50%','left' : '50%','cursor' : 'pointer','margin-left' : '185px','margin-top' : '-144px'}
		
		var btnCancelar = '<input type="image" id="btn_cancelar" name="btn_cancelar" src="' + basepath + 'www/imagem/btn_cancelar.png" onClick="fechar()" />';
		var btnCancelaCSS = {'position' : 'absolute','top' : '100%','left' : '100%','margin-left' : '-115px','margin-top' : '-45px','width' : '100px'}
		
		var btnOK = '<input type="image" id="btn_enviar" name="btn_enviar" src="' + basepath + 'www/imagem/btn_ok.png" onClick="listaColunasGrafico()" />';
		var btnOKCSS = {'position' : 'absolute','top' : '100%','left' : '0%','margin-left' : '215px','margin-top' : '-45px','width' : '100px'}
		
		$("body").append(overlay);
		$("body").append(janela);
		$("#overlay").css(overlayCSS).fadeIn('fast', function(){
			
			$("#janela_modal").append(data);
			
			$("#janela_modal").append(btnFechar);
			$("#btnFechar").css(btnFecharCSS).fadeIn("slow");
			
			$("#janela_modal").append(btnCancelar);
			$("#btn_cancelar").css(btnCancelaCSS);
			
			$("#janela_modal").append(btnOK);
			$("#btn_enviar").css(btnOKCSS);
			
			$("#janela_modal").css(janelaCSS).fadeIn("slow");
			
			$("#graficoValor").multiselect({ multiple: false, header: false, selectedList: 1, minWidth: "auto" });
			$("#graficoValor").multiselect('refresh');
			$(".tipTip").tipTip({maxWidth: "auto", edgeOffset: 30, defaultPosition: "right"});
		});
		
		return false;
	});
}

/* EXCLUIR - CAMPOS GRAFICO HORIZONTAL */
function excluirColunaGrafico(ID)
{
	$("#tb_" + ID).remove();
}

/* MODAL - EDITAR CAMPOS GRAFICO HORIZONTAL */
function editarColunaGrafico(ID)
{
	var tabela = $("#tabela").val();
	var tipo   = $("input[name='formato']:radio:checked").val();
	
	var legenda = $("#inputLegenda_" + ID).val();
	var campo = $("#inputCampo_" + ID).val();
	var funcao = $("#inputFuncao_" + ID).val();
	
	// Campos Calculados
	var calcNome = new Array();
	$(".tbListaCampoCalculado1 input[name='campoCalculadoLegenda']").each(function(){ calcNome.push($(this).val()); });
	
	var calcFormula = new Array();
	$(".tbListaCampoCalculado1 input[name='campoCalculadoFormula']").each(function(){ calcFormula.push($(this).val()); });
	
	var calcTipoData = new Array();
	$(".tbListaCampoCalculado1 input[name='campoCalculadoTipo']").each(function(){ calcTipoData.push($(this).val()); });
	
	var calcIndice = new Array();
	$(".tbListaCampoCalculado1 input[name='campoCalculadoIndice']").each(function(){ calcIndice.push($(this).val()); });
	
	$.post(basepath + "principal/editCamposGH", {
		tabela  		 : tabela,
		tipo 			 : tipo,
		legenda 		 : legenda,
		campo 			 : campo,
		funcao  		 : funcao,
		'calcNome[]' 	 : calcNome,
		'calcIndice[]'   : calcIndice,
		'calcFormula[]'  : calcFormula,
		'calcTipoData[]' : calcTipoData
	}, function(data){
		$("#janela_modal").html('');
		$("#overlay").html('');
		
		var overlay = '<div id="overlay"></div>';
		var overlayCSS = {'width' : pageWidth + 'px','height' : pageHeight + 'px'};
		
		var janela = '<div id="janela_modal"></div>';
		var janelaCSS = {'top' : '50%','left' : '50%','width' : '420px','height' : '275px','margin-left' : '-210px','margin-top' : '-130px'};
		
		var btnFechar = '<a onClick="fechar()"><img id="btnFechar" src="' + basepath + 'www/imagem/close.png" alt="Fechar" title="Fechar" /></a>';
		var btnFecharCSS = {'position' : 'absolute','top' : '50%','left' : '50%','cursor' : 'pointer','margin-left' : '185px','margin-top' : '-144px'}
		
		var btnCancelar = '<input type="image" id="btn_cancelar" name="btn_cancelar" src="' + basepath + 'www/imagem/btn_cancelar.png" onClick="fechar()" />';
		var btnCancelaCSS = {'position' : 'absolute','top' : '100%','left' : '100%','margin-left' : '-115px','margin-top' : '-45px','width' : '100px'}
		
		var btnOK = '<input type="image" id="btn_enviar" name="btn_enviar" src="' + basepath + 'www/imagem/btn_ok.png" onClick="listaColunasGrafico('+ ID +')" />';
		var btnOKCSS = {'position' : 'absolute','top' : '100%','left' : '0%','margin-left' : '215px','margin-top' : '-45px','width' : '100px'}
		
		$("body").append(overlay);
		$("body").append(janela);
		$("#overlay").css(overlayCSS).fadeIn('fast', function(){
			
			$("#janela_modal").append(data);
			
			$("#janela_modal").append(btnFechar);
			$("#btnFechar").css(btnFecharCSS).fadeIn("slow");
			
			$("#janela_modal").append(btnCancelar);
			$("#btn_cancelar").css(btnCancelaCSS);
			
			$("#janela_modal").append(btnOK);
			$("#btn_enviar").css(btnOKCSS);
			
			$("#janela_modal").css(janelaCSS).fadeIn("slow");
			
			$("#graficoValor").multiselect({ multiple: false, header: false, selectedList: 1, minWidth: "auto" });
			$("#graficoValor").multiselect('refresh');
			$(".tipTip").tipTip({maxWidth: "auto", edgeOffset: 30, defaultPosition: "right"});
		});
		
		return false;
	});
}

/* LISTA - CAMPOS GRAFICO HORIZONTAL */
function listaColunasGrafico(ID)
{
	$(".erroCriar").remove();
	
	if(typeof(ID) == 'undefined') ID = '';
	
	var tipo   = $("input[name='formato']:radio:checked").val();
	
	if(tipo == 'L')
		var legenda = $("#graficoCampo2L").val();
	else
		var legenda = $("#graficoCampo2").val();
		
	var campo = $("#graficoValor").val();
	var campoT = $("#graficoValor option:selected").text();
	var funcao = $("#graficoSumario").val();
	var funcaoT = $("#graficoSumario option:selected").text();
	
	var erro = 0;
	$('.msgErro').remove();
	
	if(legenda == '')
	{
		$('#graficoCampo2').after('<span class="msgErro">*Campo de preenchimento obrigatório.</span>');
		$('#graficoCampo2L').after('<span class="msgErro">*Campo de preenchimento obrigatório.</span>');
		erro++;
	} 
	
	if(campo == '')
	{
		$('#graficoValor').after('<span class="msgErro">*Por favor, escolha um campo.</span>');
		erro++;
	} 
	
	if(erro == 0)
	{
		$.post(basepath + "principal/listaColunasGrafico", {
			legenda : legenda,
			campo : campo,
			campoT : campoT,
			funcao : funcao,
			funcaoT : funcaoT
		}, function(data){
			if(ID != '')
			{
				$("#tb_" + ID).after(data);
				$("#tb_" + ID).remove();
			}
			else
			{
				$("#listaColunasGrafico").append(data);
			}

			$("#janela_modal").fadeOut().remove();
			$("#overlay").fadeOut().remove();
		});
	}
	else
	{
		return false;
	}
}

function verificarAgrupamento(indice)
{	
	if(typeof(indice) == 'undefined') indice = '';
	
	var count = 0;
	var grupoCampo = new Array();
	$("input[name='groupField" + indice + "']").each(function(){ grupoCampo.push($(this).val()); count++; });
	
	if(count > 0)
	{
		var countTipo = 0;
		var grupoTipo = new Array();
		$("input[name='groupTipo" + indice + "']").each(function(){ var tipo = $(this).val(); grupoTipo.push(tipo); if(tipo == 1) countTipo++; });
		
		if(countTipo > 0)
		{
			var grupoOperador = new Array();
			$("input[name='groupOperador" + indice + "']").each(function(){ grupoOperador.push($(this).val()); });
			
			var campo = $("#colCampos").val();
			campo = campo.split(',');
		
			var valor = campo[1] + '-' + $("#colOperador").val() + '-' + 1;
			
			var join = '';
			var desabilitar = false;
			for(var i = 0; i < count; i++)
			{
				join = grupoCampo[i] + '-' + grupoOperador[i] + '-' + grupoTipo[i];
				
				if(valor == join)
				{
					desabilitar = true;
				}
			}
			
			if(desabilitar)
			{
				$("#colSumario option:first").attr('selected', true).show();
				$("#colSumario").attr('disabled', true);
			}
			else
			{
				//$("#colSumario option:first").hide();
				$("#colSumario option:last").attr('selected', true);
				$("#colSumario").removeAttr('disabled');
			}
		}
		else
		{
			return false;
		}
	}
	else
	{
		return false;
	}
}

/* MODAL - ADICIONAR GRUPO */
function addColumn(indice)
{
	if(typeof(indice) == 'undefined') 
		indice = '';
	
	var tabela = (indice == '' || indice == 1) ? $("#tabela").val() : $("#tabelaDetail").val();

	// Tipos de grupos -> AGRUPAMENTO OU SUMARIO
	var tiposGruposEscolhidos = new Array();
	$("input[name='groupTipo" + indice + "']").each(function(){ tiposGruposEscolhidos.push($(this).val()); });
	
	// Campos do grupos escolhidos
	var camposGruposEscolhidos = new Array();
	$("input[name='groupField" + indice + "']").each(function(){ camposGruposEscolhidos.push($(this).val()); });
	
	// Campos Calculados
	var indiceCC = (indice == '') ? 1 : indice;
	var calcNome = new Array();
	$(".tbListaCampoCalculado"+ indiceCC +" input[name='campoCalculadoLegenda']").each(function(){ calcNome.push($(this).val()); });
	
	var calcFormula = new Array();
	$(".tbListaCampoCalculado"+ indiceCC +" input[name='campoCalculadoFormula']").each(function(){ calcFormula.push($(this).val()); });
	
	var calcTipoData = new Array();
	$(".tbListaCampoCalculado"+ indiceCC +" input[name='campoCalculadoTipo']").each(function(){ calcTipoData.push($(this).val()); });
	
	var calcIndice = new Array();
	$(".tbListaCampoCalculado"+ indiceCC +" input[name='campoCalculadoIndice']").each(function(){ calcIndice.push($(this).val()); });

	$.post(basepath + "principal/addColumn", {
		tabela : tabela,
		indice : indice,
		'tipos[]' : tiposGruposEscolhidos,
		'campos[]' : camposGruposEscolhidos,
		'calcNome[]' : calcNome,
		'calcIndice[]' : calcIndice,
		'calcFormula[]' : calcFormula,
		'calcTipoData[]' : calcTipoData
	}, function(data){

		$("#janela_modal").html('');
		$("#overlay").html('');
		
		var overlay = '<div id="overlay"></div>';
		var overlayCSS = {'position' : 'absolute','width' : pageWidth + 'px','height' : pageHeight + 'px','left' : '0','top' : '0','display' : 'none', 'z-index' : '50'};
		
		var janela = '<div id="janela_modal"></div>';
		var janelaCSS = {'position' : 'absolute','top' : '50%','left' : '50%','width' : '500px','height' : '360px','margin-left' : '-250px','margin-top' : '-210px','background-color' : '#FFF','padding' : '15px 10px 10px 15px','display' : 'none','border' : '4px solid #63A0CE','border-radius' : '10px','z-index' : '51'};
		
		var btnFechar = '<a onClick="fechar()"><img id="btnFechar" src="' + basepath + 'www/imagem/close.png" alt="Fechar" title="Fechar" /></a>';
		var btnFecharCSS = {'position' : 'absolute','top' : '50%','left' : '50%','cursor' : 'pointer','margin-left' : '225px','margin-top' : '-187px'}
		
		var btnCancelar = '<input type="image" id="btn_cancelar" name="btn_cancelar" src="' + basepath + 'www/imagem/btn_cancelar.png" onClick="fechar()" />';
		var btnCancelaCSS = {'position' : 'absolute','top' : '100%','left' : '100%','margin-left' : '-115px','margin-top' : '-40px','width' : '100px'}
		
		var btnOK = '<input type="image" id="btn_enviar" name="btn_enviar" src="' + basepath + 'www/imagem/btn_ok.png" onClick="coluna('+ indice +')" />';
		var btnOKCSS = {'position' : 'absolute','top' : '100%','left' : '0%','margin-left' : '295px','margin-top' : '-40px','width' : '100px'}
		
		$("body").append(overlay);
		$("body").append(janela);
		$("#overlay").css(overlayCSS).fadeIn('fast', function(){
			
			$("#janela_modal").append(data);
			
			verificarAgrupamento(indice);
			
			$("#janela_modal").append(btnFechar);
			$("#btnFechar").css(btnFecharCSS).fadeIn("slow");
			
			$("#janela_modal").append(btnCancelar);
			$("#btn_cancelar").css(btnCancelaCSS);
			
			$("#janela_modal").append(btnOK);
			$("#btn_enviar").css(btnOKCSS);
			
			$("#janela_modal").css(janelaCSS).fadeIn("slow");

			$("#colCampos").multiselect({ multiple: false, header: false, selectedList: 1, minWidth: "auto" });
			$("#colCampos").multiselect('refresh');
			$(".tipTip").tipTip({maxWidth: "auto", edgeOffset: 30, defaultPosition: "right"});		
		});
		
		return false;
	});	
}

/* MODAL - ADICIONAR COLUNA */
function addGroup(indice)
{
	if(typeof(indice) == 'undefined') indice = '';
	
	if(indice == '' || indice == 1)
		var tabela = $("#tabela").val();
	else
		var tabela = $("#tabelaDetail").val();
	
	var colunas = 0;
	$("input[name='colField" + indice + "']").each(function(){ colunas++; });
	
	var gruposEscolhidos = new Array();
	
	$("input[name='groupField" + indice + "']").each(function(){
		gruposEscolhidos.push($(this).val());
	});
	
	$.post(basepath + "principal/addGroup", {
		tabela : tabela,
		colunas : colunas,
		'grupos[]' : gruposEscolhidos
	}, function(data){

		$("#janela_modal").html('');
		$("#overlay").html('');
		
		var overlay = '<div id="overlay"></div>';
		var overlayCSS = {'position' : 'absolute','width' : pageWidth + 'px','height' : pageHeight + 'px','left' : '0','top' : '0','display' : 'none', 'z-index' : '50'};
		
		var janela = '<div id="janela_modal"></div>';
		var janelaCSS = {'position' : 'absolute','top' : '50%','left' : '50%','width' : '500px','height' : '300px','margin-left' : '-250px','margin-top' : '-175px','background-color' : '#FFFFFF','padding' : '10px','display' : 'none','border' : '4px solid #63A0CE','border-radius' : '10px','z-index' : '51'};
		
		var btnFechar = '<a onClick="fechar()"><img id="btnFechar" src="' + basepath + 'www/imagem/close.png" alt="Fechar" title="Fechar" /></a>';
		var btnFecharCSS = {'position' : 'absolute','top' : '50%','left' : '50%','cursor' : 'pointer','margin-left' : '225px','margin-top' : '-156px'}
		
		var btnCancelar = '<input type="image" id="btn_cancelar" name="btn_cancelar" src="' + basepath + 'www/imagem/btn_cancelar.png" onClick="fechar()" />';
		var btnCancelaCSS = {'position' : 'absolute','top' : '100%','left' : '100%','margin-left' : '-115px','margin-top' : '-50px','width' : '100px'}
		
		var btnOK = '<input type="image" id="btn_enviar" name="btn_enviar" src="' + basepath + 'www/imagem/btn_ok.png" onClick="grupo('+ indice +')" />';
		var btnOKCSS = {'position' : 'absolute','top' : '100%','left' : '0%','margin-left' : '300px','margin-top' : '-50px','width' : '100px'}
		
		$("body").append(overlay);
		$("body").append(janela);
		$("#overlay").css(overlayCSS).fadeIn('fast', function(){
			
			$("#janela_modal").append(data);
			
			$("#colLegenda").val($("#colCampos option:selected").text());
			
			$("#janela_modal").append(btnFechar);
			$("#btnFechar").css(btnFecharCSS).fadeIn("slow");
			
			$("#janela_modal").append(btnCancelar);
			$("#btn_cancelar").css(btnCancelaCSS);
			
			$("#janela_modal").append(btnOK);
			$("#btn_enviar").css(btnOKCSS);
			
			$("#janela_modal").css(janelaCSS).fadeIn("slow");
			
			$("#colCampos").multiselect({ multiple: false, header: false, selectedList: 1, minWidth: "auto" });
			$("#colCampos").multiselect('refresh');
			$(".tipTip").tipTip({maxWidth: "auto", edgeOffset: 30, defaultPosition: "right"});	
		});
		
		return false;
	});
}

/* FECHAR A JANELA MODAL */
function fechar(janela) 
{
	$("select").multiselect("close");
	
	if(janela == undefined) {
		$("#janela_modal").fadeOut();
		$("#overlay").fadeOut();
	} else {
		$("#janela_modal" + janela).fadeOut();
		$("#overlay").fadeOut();
	}
}

/* FUNCAO DE CRIACAO DA DIV DE COLUNAS */
function coluna(indice) 
{
	if(typeof(indice) == 'undefined') 
		indice = '';

	var coluna 	 = $('#colCampos').val();
	var operador = $('#colOperador').val();
	var mostrar  = $("input[name='rdoVisivel']:checked").val();
	var legenda	 = $('#colLegenda').val();
	
	var aQuebra = coluna.split(',');
	var quebra = new Array();
	quebra[0] = aQuebra[0];
	aQuebra.splice(0, 1);
	quebra[1] = aQuebra.join();

	if(quebra[0] == 0)
	{
		coluna = '0,calculado';
		
		if(mostrar == 'hide')
		{
			var sumario = 'calculatedHide';
			var ordenar = 'N';
		}
		else
		{
			var sumario = 'calculated';
			var ordenar = $("input[name='ordenarColuna']:radio:checked").val();
		}
		
		var quebraCampo = quebra[1].split(':');
		
		var colunaTipo = 2;
		var colunaData = quebraCampo[0];
		var formula = quebraCampo[1];
		var nomeCampo = quebraCampo[2];
		var indiceCampo = quebraCampo[3];
	}
	else
	{
		if(mostrar == 'hide')
		{
			var sumario = 'hide';
			var ordenar = 'N';
		}
		else
		{
			var sumario = $('#colSumario').val();
			var ordenar = $("input[name='ordenarColuna']:radio:checked").val();
		}
		
		var colunaTipo = 1;
		var colunaData = '';
		var formula = '';
		var indiceCampo = '';
	}

	$.post(basepath + "principal/saveColumn", {
		coluna      : coluna,
		legenda     : legenda,
		sumario     : sumario,
		operador    : operador,
		indice      : indice,
		ordenar     : ordenar,
		colunaTipo  : colunaTipo,
		colunaData  : colunaData,
		formula     : formula,
		indiceCampo : indiceCampo
	}, function(data){
		var dados = eval('(' + data + ')');
		
		$("#addColumn" + indice).before(dados.html);
		
		$("#janela_modal").fadeOut();
		$("#overlay").fadeOut();
		
		$(".column").click(selectColumn);
	});
}

/* FUNCAO DE CRIACAO DA DIV DE GRUPOS */
function grupo(indice) 
{
	if(typeof(indice) == 'undefined') indice = '';
	
	var grupo 	  = $('#colCampos').val();
	var legenda	  = $('#colLegenda').val();
	var tipo	  = $('input[name=rdoTipo]:radio:checked').val();
	var operador  = $('#colOperador').val();
	
	var nomeGrupo = $('#colCampos option:selected').text();

	$.post(basepath + "principal/saveGroup", {
	    grupo 	 : grupo,
		legenda  : legenda,
		tipo 	 : tipo,
		operador : operador,
		indice   : indice
	}, function(data){
		var dados = eval('(' + data + ')');
		
		$("#addGroup" + indice).before(dados.html);
		
		$("#janela_modal").fadeOut();
		$("#overlay").fadeOut();
		
		var empty = 0;
	
		$(".emptyGroup" + indice).each(function(){ empty++; });
		
		if(empty == 0)
			$('#addGroup' + indice).hide();
		else
			$('.emptyGroup' + indice).first().remove();

		$(".group").click(selectGroup);
		 
		if(tipo == 2)
		{
			var add = true;
			var array = grupo.split(",");
			$("input[name='colField" + indice + "']").each(function(){ 
				if( $.trim(array[1]) == $.trim($(this).val())) { add = false; }
			});
		
			if(add)
			{
				jAlert("A coluna <em>'" + nomeGrupo + "'</em> foi adicionado para o método ordenação.", 'Alerta!');
				
				$("#addColumn" + indice).before(dados.coluna);
				$(".column").click(selectColumn);
			}
		}
	});
}

/* BUSCA DADOS DA COLUNA */
function buscaDadosCampos(indice) 
{
	if(typeof(indice) == 'undefined') indice = '';
	
	// Tipos de grupos -> AGRUPAMENTO OU SUMARIO
	var tiposGruposEscolhidos = new Array();
	$("input[name='groupTipo" + indice + "']").each(function(){ tiposGruposEscolhidos.push($(this).val()); });
	
	// Campos do grupos escolhidos
	var camposGruposEscolhidos = new Array();
	$("input[name='groupField" + indice + "']").each(function(){ camposGruposEscolhidos.push($(this).val()); });
	
	// Tabela
	if(indice == '' || indice == 1)
		var tabela = $("#tabela").val();
	else
		var tabela = $("#tabelaDetail").val();
	
	// Campo selecionado
	var campo = $("#colCampos").val();
	
	$.post(basepath + "principal/buscaDadosCampos", {
		tabela 		: tabela,
		campo  		: campo,
		'tipos[]' 	: tiposGruposEscolhidos,
		'campos[]'  : camposGruposEscolhidos		
	}, function(data){
		var dados = eval('(' + data + ')');
		$("#colLegenda").val(dados.legenda);

		if(dados.disabled)
			$("#colSumario").attr("disabled", true);
		else
			$("#colSumario").removeAttr("disabled");
		
		$("#colSumario option").remove();
		$("#colSumario").append(dados.opcoes);
		
		if(dados.opcoesOp)
		{
			$("#colOperador").fadeIn("show");
			$("#colOperador option").remove();
			$("#colOperador").append(dados.opcoesOp);
		}
		else
		{
			$("#colOperador").fadeOut("fast");
		}
	});
}

/* BUSCA FUNCAO DA COLUNA */
function buscaComboFuncao(funcao, operador, indice)
{
	if(typeof(indice) == 'undefined') indice = '';
	
	// Tipos de grupos -> AGRUPAMENTO OU SUMARIO
	var tiposGruposEscolhidos = new Array();
	$("input[name='groupTipo" + indice + "']").each(function(){ tiposGruposEscolhidos.push($(this).val()); });
	
	// Campos do grupos escolhidos
	var camposGruposEscolhidos = new Array();
	$("input[name='groupField" + indice + "']").each(function(){ camposGruposEscolhidos.push($(this).val()); });
	
	// Tabela
	if(indice == '' || indice == 1)
		var tabela = $("#tabela").val();
	else
		var tabela = $("#tabelaDetail").val();
	
	// Campo selecionado
	var campo = $("#colCampos").val();
	
	$.post(basepath + "principal/buscaDadosCampos", {
		tabela 		: tabela,
	    campo  		: campo,
		'tipos[]' 	: tiposGruposEscolhidos,
		'campos[]'  : camposGruposEscolhidos		
	}, function(data){
		var dados = eval('(' + data + ')');
		
		if(dados.disabled)
			$("#colSumario").attr("disabled", true);
		else
			$("#colSumario").removeAttr("disabled");
		
		$("#colSumario option").remove();
		$("#colSumario").append(dados.opcoes);

		if(dados.opcoesOp)
		{
			$("#colOperador").show();
			$("#colOperador option").remove();
			$("#colOperador").append(dados.opcoesOp);
			$("#colOperador option[value='" + operador + "']").attr('selected', true);
		}
		else
		{
			$("#colOperador").hide();
		}

		$("#colSumario option[value='" + funcao + "']").attr("selected", true); 		
	});
}

function editarCampo(indice)
{
	if(typeof(indice) == 'undefined') 
		indice = '';
		
	var id = $('#compoSelected').val();
	
	var tabela = (indice == '' || indice == 1) ? $("#tabela").val() : $("#tabelaDetail").val();
	
	// Variaveis dos Campos Calculados
	var calcNome = new Array();
	var calcFormula = new Array();
	var calcTipoData = new Array();
	var calcIndice = new Array();
		
	if(id)
	{
		var novoArray = id.split('_');
		var tipo = novoArray[0];
		
		var colunas = 0;
		var gruposEscolhidos = new Array();
		
		var tiposGruposEscolhidos = new Array();
		var camposGruposEscolhidos = new Array();
		
		if(tipo == 'group')
		{
			var cTable = $("#" + id).children("input[name='groupTable" + indice + "']:first").val();
			var cField = $("#" + id).children("input[name='groupField" + indice + "']:first").val();
			var cLegend = $("#" + id).children("input[name='groupLegend" + indice + "']:first").val();
			var cFunction = $("#" + id).children("input[name='groupTipo" + indice + "']:first").val();
			var cOperador = $("#" + id).children("input[name='groupOperador" + indice + "']:first").val();
			var cOrdenar = '';
			var cTypeColumn = '';
			var cTypeData = '';
			var cTypeFormula = '';
			
			$("input[name='colField" + indice + "']").each(function(){ colunas++; });

			$("input[name='groupField" + indice + "']").each(function(){ gruposEscolhidos.push($(this).val()); });

			var parametros = 1 + ", \'" + id + "\', \'" + indice + "\' ";
			
			var modalHeight = 310;
			var fecharAltura = -160;
		}
		else if(tipo == 'col')
		{
			var cTable = $("#" + id).children("input[name='colTable" + indice + "']:first").val();
			var cField = $("#" + id).children("input[name='colField" + indice + "']:first").val();
			var cLegend = $("#" + id).children("input[name='colLegend" + indice + "']:first").val();
			var cFunction = $("#" + id).children("input[name='colFunction" + indice + "']:first").val();
			var cOperador = $("#" + id).children("input[name='colOperador" + indice + "']:first").val();
			var cOrdenar = $("#" + id).children("input[name='colOrdenar" + indice + "']:first").val();
			
			var cTypeColumn = $("#" + id).children("input[name='colTypeColumn" + indice + "']:first").val();
			var cTypeData = $("#" + id).children("input[name='colTypeData" + indice + "']:first").val();
			var cTypeFormula = $("#" + id).children("input[name='colFormula" + indice + "']:first").val();
			
			cOrdenar = (cOrdenar == 'N') ? 'N' : 'S';
			
			$("input[name='groupTipo" + indice + "']").each(function(){ tiposGruposEscolhidos.push($(this).val()); });
			$("input[name='groupField" + indice + "']").each(function(){ camposGruposEscolhidos.push($(this).val()); });

			var parametros = 2 + ", \'" + id + "\', \'" + indice + "\' ";
			
			var modalHeight = 390;
			var fecharAltura = -200;

			// Campos Calculados
			var indiceCC = (indice == '') ? 1 : indice;
			$(".tbListaCampoCalculado"+ indiceCC +" input[name='campoCalculadoLegenda']").each(function(){ calcNome.push($(this).val()); });
			$(".tbListaCampoCalculado"+ indiceCC +" input[name='campoCalculadoFormula']").each(function(){ calcFormula.push($(this).val()); });
			$(".tbListaCampoCalculado"+ indiceCC +" input[name='campoCalculadoTipo']").each(function(){ calcTipoData.push($(this).val()); });	
			$(".tbListaCampoCalculado"+ indiceCC +" input[name='campoCalculadoIndice']").each(function(){ calcIndice.push($(this).val()); });
		}
		else
		{
			var cTable = $("#" + id).children("input[name='colTable1']:first").val();
			var cField = $("#" + id).children("input[name='colField1']:first").val();
			var cLegend = $("#" + id).children("input[name='colLegend1']:first").val();
			var cFunction = $("#" + id).children("input[name='colFunction1']:first").val();
			var cOperador = '';
			var cOrdenar = '';
			var cTypeColumn = '';
			var cTypeData = '';
			var cTypeFormula = '';
			
			var parametros = 3 + ", \'" + id + "\', \'" + indice + "\' ";
			
			var modalHeight = 310;
			var fecharAltura = -160;
		}
	
		$.post(basepath + "principal/editarCampo", {
			tabela 			 : tabela,
			tipo 			 : tipo,
			indice 			 : indice,
			tabelaid 		 : cTable,
			nomeCampo 		 : cField,
			nomeLegenda 	 : cLegend,
			funcao 			 : cFunction,
			operador 		 : cOperador,
			ordenar			 : cOrdenar,
			colunas 		 : colunas,
			colunaTipo  	 : cTypeColumn,
			colunaData  	 : cTypeData,
			formula     	 : cTypeFormula,
			'grupos[]'  	 : gruposEscolhidos,
			'tipos[]'   	 : tiposGruposEscolhidos,
			'campos[]'  	 : camposGruposEscolhidos,
			'calcNome[]'     : calcNome,
			'calcIndice[]'	 : calcIndice,
			'calcFormula[]'  : calcFormula,
			'calcTipoData[]' : calcTipoData
		}, function(data){

			$("#janela_modal").html('');
			$("#overlay").html('');
			
			var overlay = '<div id="overlay"></div>';
			var overlayCSS = {'position' : 'absolute','width' : pageWidth + 'px','height' : pageHeight + 'px','left' : '0','top' : '0','display' : 'none', 'z-index' : '50'};
			
			var janela = '<div id="janela_modal"></div>';
			var janelaCSS = {'position' : 'absolute','top' : '50%','left' : '50%','width' : '500px','height' : modalHeight+'px','margin-left' : '-250px','margin-top' : '-195px','background-color' : '#FFFFFF','padding' : '10px','display' : 'none','border' : '4px solid #63A0CE','border-radius' : '10px','z-index' : '51'};
			
			var btnFechar = '<a onClick="fechar()"><img id="btnFechar" src="' + basepath + 'www/imagem/close.png" alt="Fechar" title="Fechar" /></a>';
			var btnFecharCSS = {'position' : 'absolute','top' : '50%','left' : '50%','cursor' : 'pointer','margin-left' : '225px','margin-top' : fecharAltura+'px'}
			
			var btnCancelar = '<input type="image" id="btn_cancelar" name="btn_cancelar" src="' + basepath + 'www/imagem/btn_cancelar.png" onClick="fechar()" />';
			var btnCancelaCSS = {'position' : 'absolute','top' : '100%','left' : '100%','margin-left' : '-115px','margin-top' : '-40px','width' : '100px'}
			
			var btnOK = '<input type="image" id="btn_enviar" name="btn_enviar" src="' + basepath + 'www/imagem/btn_alterar.png" onClick="grupoORColumn(' + parametros + ')" />';
			var btnOKCSS = {'position' : 'absolute','top' : '100%','left' : '0%','margin-left' : '295px','margin-top' : '-40px','width' : '100px'}

			$("body").append(overlay);
			$("body").append(janela);
			$("#overlay").css(overlayCSS).fadeIn('fast', function(){
				
				$("#janela_modal").append(data);

				buscaComboFuncao(cFunction, cOperador, indice);

				$("#janela_modal").append(btnFechar);
				$("#btnFechar").css(btnFecharCSS).fadeIn("slow");
				
				$("#janela_modal").append(btnCancelar);
				$("#btn_cancelar").css(btnCancelaCSS);
				
				$("#janela_modal").append(btnOK);
				$("#btn_enviar").css(btnOKCSS);
				
				$("#janela_modal").css(janelaCSS).fadeIn("slow");
				
				$("#colCampos").multiselect({ multiple: false, header: false, selectedList: 1, minWidth: "auto" });
				$("#colCampos").multiselect('refresh');
				$(".tipTip").tipTip({maxWidth: "auto", edgeOffset: 30, defaultPosition: "right"});
			});
			
			return false;
		});
	}
	else
	{
		return false;
	}
}

function grupoORColumn(tipo, id, indice)
{
	if(typeof(indice) == 'undefined') 
		indice = '';
	
	$(".erroCriar").remove();
	var erro = 0;
	
	// Campo Calculado
	var colunaTipo = 1;
	var colunaData = '';
	var formula = '';
	
	// Grupo
	if(tipo == 1)
	{
		var campo 	  = $('#colCampos').val();
		var legenda	  = $('#colLegenda').val();
		var funcao	  = $('input[name=rdoTipo]:radio:checked').val();
		var operador  = $('#colOperador').val();
		var ordenar   = '';
		
		$.post(basepath + "principal/editGrupColumn", {
			tipo	   : tipo,
			campo 	   : campo,
			legenda    : legenda,
			funcao 	   : funcao,
			operador   : operador,
			ordenar    : ordenar,
			indice     : indice,
			colunaTipo : colunaTipo,
			colunaData : colunaData,
			formula    : formula
		}, function(data){
			$("#" + id).html(data);
			
			$("#janela_modal").fadeOut();
			$("#overlay").fadeOut();
			
			$(".group").click(selectGroup);
			$(".column").click(selectColumn);
		});
	}
	// Coluna
	else if(tipo == 2)
	{
		var campo 	 = $('#colCampos').val();
		var operador = $('#colOperador').val();
		var mostrar  = $("input[name='rdoVisivel']:checked").val();
		var legenda	 = $('#colLegenda').val();
	
		var aQuebra = campo.split(',');
		var quebra = new Array();
		quebra[0] = aQuebra[0];
		aQuebra.splice(0, 1);
		quebra[1] = aQuebra.join();

		if(quebra[0] == 0)
		{
			campo = '0,calculado';
			
			if(mostrar == 'hide')
			{
				var funcao = 'calculatedHide';
				var ordenar = 'N';
			}
			else
			{
				var funcao = 'calculated';
				var ordenar = $("input[name='ordenarColuna']:radio:checked").val();
			}
			
			var quebraCampo = quebra[1].split(':');
			
			var colunaTipo = 2;
			var colunaData = quebraCampo[0];
			var formula = quebraCampo[1];
		}
		else
		{
			if(mostrar == 'hide')
			{
				var funcao = 'hide';
				var ordenar = 'N';
			}
			else
			{
				var funcao = $('#colSumario').val();
				var ordenar = $("input[name='ordenarColuna']:radio:checked").val();
			}
			
			var colunaTipo = 1;
			var colunaData = '';
			var formula = '';
		}
		
		$.post(basepath + "principal/editGrupColumn", {
			tipo	   : tipo,
			campo 	   : campo,
			legenda    : legenda,
			funcao 	   : funcao,
			operador   : operador,
			ordenar    : ordenar,
			indice     : indice,
			colunaTipo : colunaTipo,
			colunaData : colunaData,
			formula    : formula
		}, function(data){
			$("#" + id).html(data);
			
			$("#janela_modal").fadeOut();
			$("#overlay").fadeOut();
			
			$(".group").click(selectGroup);
			$(".column").click(selectColumn);
		});
	}
	// Coluna Obrigatória
	else
	{
		var campo 	  = $('#colCampos').val();
		var legenda	  = $('#colLegenda').val();
		var funcao	  = $('input[name=rdoVisivel]:radio:checked').val();
		var operador  = '';
		var ordenar   = '';
		
		$.post(basepath + "principal/editGrupColumn", {
			tipo	   : tipo,
			campo 	   : campo,
			legenda    : legenda,
			funcao 	   : funcao,
			operador   : operador,
			ordenar    : ordenar,
			indice     : indice,
			colunaTipo : colunaTipo,
			colunaData : colunaData,
			formula    : formula
		}, function(data){
			$("#" + id).html(data);
			
			$("#janela_modal").fadeOut();
			$("#overlay").fadeOut();
			
			$(".group").click(selectGroup);
			$(".column").click(selectColumn);
		});
	}
}

/* MODAL ORDENAR COLUNAS */
function modalOrdenar(tipo)
{
	var stringOrdenar = $("#stringOrdenar").val();
	var ordemOrdenar = $("#ordemOrdenar").val();
	
	var stringOrdenarDetail = $("#stringOrdenarDetail").val();
	var ordemOrdenarDetail = $("#ordemOrdenarDetail").val();

	if(stringOrdenar != '' && stringOrdenarDetail != '')
	{
		var janelaW = '800px';
		var janelaMargin = '-400px';
		var btnLeft = '374px';
	}
	else
	{
		var janelaW = '400px';
		var janelaMargin = '-200px';
		var btnLeft = '174px';
	}

	$.post(basepath + "principal/modalOrdenar", {
		tipo : tipo,
		campos : stringOrdenar,
		orderby : ordemOrdenar,
		camposDetail : stringOrdenarDetail,
		orderbyDetail : ordemOrdenarDetail
	}, function(data){
	
		$("#janela_modal").html('');
		$("#overlay").html('');
		
		var overlay = '<div id="overlay"></div>';
		var overlayCSS = {'width' : pageWidth + 'px','height' : pageHeight + 'px'};
		
		var janela = '<div id="janela_modal"></div>';
		var janelaCSS = {'top' : '50%','left' : '50%','width' : janelaW,'height' : '360px','margin-left' : janelaMargin,'margin-top' : '-180px'};
		
		var btnFechar = '<a onClick="fechar()"><img id="btnFechar" src="' + basepath + 'www/imagem/close.png" alt="Fechar" title="Fechar" /></a>';
		var btnFecharCSS = {'position' : 'absolute','top' : '50%','left' : '50%','cursor' : 'pointer','margin-left' : btnLeft,'margin-top' : '-185px'};
		
		var btnOK = '<input type="image" id="btn_enviar" name="btn_enviar" src="' + basepath + 'www/imagem/btn_confirmar.png" onClick="camposOrdenar()" />';
		var btnOKCSS = {'position' : 'absolute','top' : '100%','left' : '100%','margin-left' : '-115px','margin-top' : '-40px','width' : '100px'};
		
		$("body").append(overlay);
		$("body").append(janela);
		$("#overlay").css(overlayCSS).fadeIn('fast', function(){
			$("#janela_modal").append(data);
			
			$("#janela_modal").append(btnFechar);
			$("#btnFechar").css(btnFecharCSS).fadeIn("slow");
			
			$("#janela_modal").append(btnOK);
			$("#btn_enviar").css(btnOKCSS);
			
			$("#janela_modal").css(janelaCSS).fadeIn("slow");
		});
		
		return false;
	});
}

function camposOrdenar()
{
	var tipo = $("input[name='formato']:radio:checked").val();
	
	if(tipo == 'T')
	{
		var optCampos = '';
		var ordemColunas = '';
		var countCampos = 0;
		var ordem = $("input[name='ordenarAscDesc']:radio:checked").val();
		
		$("#camposOrdenar option").each(function(){ 
			if( countCampos != 0 )
			{
				optCampos += ':';
				ordemColunas += ' ' + ordem + ',';
			} 
			
			var valorCampo = $(this).val();	

			optCampos += valorCampo;
			
			valorCampo = valorCampo.split(',');
			
			ordemColunas += valorCampo[3];
			
			countCampos++;
		});
		
		$("#stringOrdenar").val(optCampos);
		$("#colunasOrdenar").val(ordemColunas);
		$("#ordemOrdenar").val(ordem);
	}
	else if(tipo == 'D')
	{
		var optCampos = '';
		var ordemColunas = '';
		var countCampos = 0;
		var ordem = $("input[name='ordenarAscDesc']:radio:checked").val();
		
		$("#camposOrdenar1 option").each(function(){ 
			if( countCampos != 0 )
			{
				optCampos += ':';
				ordemColunas += ' ' + ordem + ',';
			} 
			
			var valorCampo = $(this).val();	

			optCampos += valorCampo;
			
			valorCampo = valorCampo.split(',');
			
			ordemColunas += valorCampo[3];
			
			countCampos++;
		});
		
		if(countCampos > 0)
		{
			$("#stringOrdenar").val(optCampos);
			$("#colunasOrdenar").val(ordemColunas);
			$("#ordemOrdenar").val(ordem);
		}
		else
		{
			$("#stringOrdenar").val('');
			$("#colunasOrdenar").val('1');
			$("#ordemOrdenar").val('asc');
		}
		
		var optCampos = '';
		var ordemColunas = '';
		var countCampos = 0;
		var ordemDetail = $("input[name='ordenarAscDescDetail']:radio:checked").val();
		
		$("#camposOrdenar2 option").each(function(){ 
			if( countCampos != 0 )
			{
				optCampos += ':';
				ordemColunas += ' ' + ordemDetail + ',';
			} 
			
			var valorCampo = $(this).val();	

			optCampos += valorCampo;
			
			valorCampo = valorCampo.split(',');
			
			ordemColunas += valorCampo[3];
			
			countCampos++;
		});
		
		if(countCampos > 0)
		{
			$("#stringOrdenarDetail").val(optCampos);
			$("#colunasOrdenarDetail").val(ordemColunas);
			$("#ordemOrdenarDetail").val(ordemDetail);
		}
		else
		{
			$("#stringOrdenarDetail").val('');
			$("#colunasOrdenarDetail").val('1');
			$("#ordemOrdenarDetail").val('asc');
		}
	}
	
	// Fecha o Modal
	fechar();
	
	// Troca de Aba
	aba++;
	tabs.removeClass('in');
	$(tabs[aba]).addClass('in');
	
	divs.hide();
	$(divs[aba]).fadeIn('slow');

	verificaBtn();
}

function moveOrdenaUp(indice)
{
	if(typeof(indice) == 'undefined') indice = '';
	
	var valorOptPrev = $.trim( $("#camposOrdenar"+ indice +" option:selected").prev().val() );
	
	if(valorOptPrev != '')
	{
		var valorCampoSelected = $.trim( $("#camposOrdenar"+ indice).val() );
		var txtCampoSelected = $.trim(  $("#camposOrdenar"+ indice +" option:selected").text() );
		
		var optCampo = '<option value="' + valorCampoSelected + '">' + txtCampoSelected + '</option>';

		$('#camposOrdenar'+ indice +' option[value="' + valorOptPrev + '"]').before(optCampo);
		
		$("#camposOrdenar"+ indice +" option:selected").remove();
		
		$("#camposOrdenar"+ indice).val(valorCampoSelected);
	}
	else
	{
		return false;
	}
}

function moveOrdenaDown(indice)
{
	if(typeof(indice) == 'undefined') indice = '';
	
	var valorOptNext =  $.trim( $("#camposOrdenar"+ indice +" option:selected").next().val() );
	
	if(valorOptNext != '')
	{
		var valorCampoSelected = $.trim( $("#camposOrdenar"+ indice).val() );
		var txtCampoSelected = $.trim(  $("#camposOrdenar"+ indice +" option:selected").text() );
		
		var optCampo = '<option value="' + valorCampoSelected + '">' + txtCampoSelected + '</option>';
		
		$('#camposOrdenar'+ indice +' option[value="' + valorOptNext + '"]').after(optCampo);

		$("#camposOrdenar"+ indice +" option:selected").remove();
		
		$("#camposOrdenar"+ indice).val(valorCampoSelected);
	}
	else
	{
		return false;
	}
}

function mostrarCampoVisivel()
{
	if($.trim( $("input[name='rdoVisivel']:checked").val() ) == 'show')
		$("#tbCamposVisivelRelatorio").fadeIn('fast');
	else
		$("#tbCamposVisivelRelatorio").fadeOut('fast');
}

/* FUNCTION INICIAL */
function init()
{
	pageWidth = $(window).width();
	pageHeight = $(window).height();
}

$(document).ready(init);