
<head>
	<style>
		.tabela_view tr:nth-child(even) {background-color: #f2f2f2;}
		.tabela_view { border-collapse: collapse;}
		.tabela, td, th {
		  padding: 10px;
		}
		/*#table, td, th {
		  border: 1px solid;
		}*/
	</style>
</head>
<script>
	listaInfoArmazenada = "<?php echo $bi_analise->getColunas_informarcao_analise_vertical(); ?>";
	listaColunaVerticalInfoArmazenada = "<?php echo $bi_analise->getColuna_analise_vertical(); ?>";
	listaInfoValoresArmazenada = "<?php echo $bi_analise->getColunas_valores_analise_vertical(); ?>";
	listaQuebraArmazenada = "<?php echo $bi_analise->getColunas_quebrar_parcial_analise_vertical(); ?>";
	listaInfoArmazenada = listaInfoArmazenada.replaceAll("`","");
	listaColunaVerticalInfoArmazenada = listaColunaVerticalInfoArmazenada.replaceAll("`","");
	listaInfoValoresArmazenada = listaInfoValoresArmazenada.replaceAll("`","");
	listaQuebraArmazenada = listaQuebraArmazenada.replaceAll("`","");
	listaCorDinamicaArmazenada = <?php if ($bi_analise->getJson_cor_dinamica_widget() ==""){echo "null";} else { echo $bi_analise->getJson_cor_dinamica_widget();} ?>;
	listaLatitudeArmazenada = "<?php echo $bi_analise->getColuna_latitude(); ?>";
	listaLongitudeArmazenada = "<?php echo $bi_analise->getColuna_longitude(); ?>";
	listaLatitudeArmazenada = listaLatitudeArmazenada.replaceAll("`","");
	listaLongitudeArmazenada = listaLongitudeArmazenada.replaceAll("`","");
	sequenci_linha_cor_dinamica = 0;
	$("#titulo_modal_analide").html("<b>Mapa</b>");
	
	function escolher_tipo_analise()
	{
		
		//$("#select_colunas_valores_vertical").val(listaInfoValoresArmazenada);
		for(i =0; i < colunas.length; i++)
		{
			selected = false;
			if(listaLatitudeArmazenada.includes(colunas[i].nome))
			{
				selected = true;
			}
			if(! $("#select_coluna_latitude").html().includes(colunas[i].nome))
			{
				$("#select_coluna_latitude").append($('<option>', {
						value: colunas[i].nome,
						text: colunas[i].nome,
						"selected": selected
						
					}));
			}
				
			selected = false;
			if(listaLongitudeArmazenada.includes(colunas[i].nome))
			{
				selected = true;
			}
			if(! $("#select_coluna_longitude").html().includes(colunas[i].nome))
			{
				$("#select_coluna_longitude").append($('<option>', {
						value: colunas[i].nome,
						text: colunas[i].nome,
						"selected": selected
						
					}));
			}
			
			selected = false;
			if(listaInfoArmazenada.includes(colunas[i].nome))
			{
				selected = true;
			}
			if(! $("#select_colunas_info").html().includes(colunas[i].nome))
			{
				if(! listaInfoValoresArmazenada.includes(colunas[i].nome) )
				{
					$("#select_colunas_info").append($('<option>', {
						value: colunas[i].nome,
						text: colunas[i].nome,
						"selected": selected
						
					}));
				}
			}
		}
		$("#select_colunas_info").select2({ width: '100%' });
		$("#select_colunas_info").on("select2:select", function (evt) {var element = evt.params.data.element; var $element = $(element); $element.detach(); $(this).append($element); $(this).trigger("change");});
		
		//$("#select_coluna_latitude").select2({ width: '100%' });
		//$("#select_coluna_longitude").select2({ width: '100%' });
		
	}
	
	function sequenciar_colunas_conforme_escolhidas(colunas)
	{
		//função obrigatória par as análies, a etapa 1 chama ela
		return colunas;
	}
	function avancar_analise_etapa4_mapa()
	{
		if($("#titulo").val() == "")
		{
			alert("Informe o título do mapa")
			return;
		}
		if($("#select_coluna_latitude").val() == "")
		{
			alert("Informe a coluna latitude")
			return;
		}
		if($("#select_coluna_longitude").val() == "" && $('#tipo_coluna_lat_lng').val() == "lat_lng_separada")
		{
			alert("Informe a coluna longitude")
			return;
		}
		//validar cores
		valido = true;
		erro ="";
		linhaCor = 0;
		
		
		/*$("#etapa2").css("display", "none");
		$("#etapa3").css("display", "none");
		$("#etapa4").css("display", "block");*/
	
		
		//validar cores
		valido = true;
		erro ="";
		linhaCor = 0;
		$('.linha_cor_dinamica').each(function(){
			linhaCor += 1;
			tipo_validacao = $(this).find('[name="tipo_validacao"]').val();
			//alert(tipo_validacao)
			if(tipo_validacao == "")
			{
				erro = "Informe a condição na linha "+linhaCor+" das cores dinâmicas!";
				valido = false;
			}
			else if (tipo_validacao == "porcentagem_de_ate_da_coluna" || 
				tipo_validacao == "diferenca_de_ate_da_coluna" ||
				tipo_validacao == "de_ate" )
			{
				//alert($(this).find('[name="valueval_de"]').val())
				if($(this).find('[name="val_de"]').val() == "" || $(this).find('[name="val_ate"]').val() == "" )
				{
					erro = "Informe o valor de até na linha "+linhaCor+" das cores dinâmicas!";
					valido = false;
				}
			}
			else if (tipo_validacao == "menor_que" || 
				tipo_validacao == "maior_que" ||
				tipo_validacao == "igual_que" 
				)
			{
				//alert($(this).find('[name="valueval_de"]').val())
				if($(this).find('[name="valor"]').val() == ""  )
				{
					erro = "Informe o valor na linha "+linhaCor+" das cores dinâmicas!";
					valido = false;
				}
			}
			else 
			{
				//alert($(this).find('[name="valueval_de"]').val())
				if($(this).find('[name="col_valor"]').val() == ""  )
				{
					erro = "Informe a coluna para comparação na linha "+linhaCor+" das cores dinâmicas!";
					valido = false;
				}
			}
			 if (tipo_validacao == "porcentagem_de_ate_da_coluna" || 
				tipo_validacao == "diferenca_de_ate_da_coluna" 
				 )
			{
				if($(this).find('[name="col_valor"]').val() == ""  )
				{
					erro = "Informe a coluna para comparação na linha "+linhaCor+" das cores dinâmicas!";
					valido = false;
				}
			}
		});
		if(! valido)
		{
			alert(erro);
			return;
		}
		colunasSelecionadas = $("#select_colunas_info").val();
		aColunasSelecionadas = [];
		colunas_view_vertical = "";
		colunas_valores_vertical = "";
		coluna_vertical = "";
		colunas_quebra_parcial_vertical = "";
		colunas_valores_ocultas_para_calculo = "";
	
		if($("#select_colunas_info").val() != null)
		{
			//colunas_view_vertical = $("#select_colunas_info").val().toString();
			for(k =0; k < $("#select_colunas_info").val().length; k++)
			{
				if(colunas_view_vertical != ""){colunas_view_vertical += ",";}
				colunas_view_vertical += "`"+$("#select_colunas_info").val()[k]+"`";
			}
			colunas_view_vertical.replaceAll("``","`");
			//colunas_view_vertical += "`"+$("#select_colunas_info").val()+"`";
			
		}
		//marcar colunas usadas
		for(i =0; i < colunas.length; i++)
		{
			if(colunas_valores_vertical.includes(colunas[i].nome.trim()) ||
			   coluna_vertical.includes(colunas[i].nome.trim()) ||
			   colunas_quebra_parcial_vertical.includes(colunas[i].nome.trim())  ||
			   colunas_view_vertical.includes(colunas[i].nome.trim())
			)
			{
				colunas[i].oculto = false;
			}
			$('.linha_cor_dinamica').each(function(){
				//alert($(this).find('[name="col_valor"]').val())
				if($(this).find('[name="col_valor"]').length > 0)
				{
					//alert($(this).find('[name="col_valor"]').val())
					if($(this).find('[name="col_valor"]').val().trim() == colunas[i].nome.trim())
					{
						colunas[i].utilizada_para_calculo = true;
						if(colunas_valores_ocultas_para_calculo != "")
						{
							colunas_valores_ocultas_para_calculo += ",";
						}
						colunas_valores_ocultas_para_calculo += "`"+colunas[i].nome.trim()+"`";
					}
				}
			});
		}
		monta_tabela_agregacao();
		
		$("#etapa2").css("display", "none");
		$("#etapa3").css("display", "none");
		$("#etapa4").css("display", "block");
	
	}
	
	function finalizar_analise_mapa()
	{

		//lista cor dinamica
		lista_cor_dinamica = [];
	
		query = $("#query").val();
		colunas_view_vertical = "";
		colunas_valores_vertical = "";
		coluna_vertical = "";
		colunas_quebra_parcial_vertical = "";
		colunas_valores_ocultas_para_calculo  = "";
		if($("#select_colunas_info").val() != null)
		{
			//colunas_view_vertical = $("#select_colunas_info").val().toString();
			for(k =0; k < $("#select_colunas_info").val().length; k++)
			{
				if(colunas_view_vertical != ""){colunas_view_vertical += ",";}
				colunas_view_vertical += "`"+$("#select_colunas_info").val()[k]+"`";
			}
			colunas_view_vertical.replaceAll("``","`");
			//colunas_view_vertical += "`"+$("#select_colunas_info").val()+"`";
			
		}
		analise = {nome: $("#nome_analise").val(), query: query, colunas_view_vertical: colunas_view_vertical, 
				colunas_valores_vertical: colunas_valores_vertical, coluna_vertical: coluna_vertical,
				colunas_quebra_parcial_vertical: colunas_quebra_parcial_vertical, codigo: $("#codigo_analise").val(),
				grafico: "6", lista_filtros: lista_filtros, cor: "", icone: "",
				colunas: colunas, json_cor_dinamica_widget: lista_cor_dinamica,
				colunas_valores_ocultas_para_calculo: colunas_valores_ocultas_para_calculo,
				titulo_widget_grafico: $("#titulo").val(),
				conexao: $("#conexao").val(), unidade_widget: $("#separador").val(),
				colunas_quebrar_parcial_analise_vertical: "", colunas_quebrar_media_parcial_analise_vertical: "",
				colunas_total_analise_vertical: "", colunas_media_analise_vertical: "",
				coluna_latitude: $("#select_coluna_latitude").val(), coluna_longitude: $("#select_coluna_longitude").val(),
				tipo_coluna_lat_lng: $("#tipo_coluna_lat_lng").val(),
				tipo_view_mapa: $("#tipo_view_mapa").val(),
				modelo_dados: $("#modelo_dados").val(),
				"area": $("#area").val(), "exibir_em_analise": $("#exibir_em_analise").val()
			};
		//console.log(analise);
		abrir_modal_aviso("<b>Aguarde ...</b>");	
		$.post("src/controller/Bi_analiseControllerUser.php?mod=salvar_analise", 
			analise, 
			function (retorno)
			{
				fechar_modal_aviso();
				if(! retorno.status)
				{
					alert(retorno.mensagem);
				}
				else
				{
					$("#codigo_analise").val(retorno.codigo);
					if(confirm("Sucesso! Código "+retorno.codigo+". Deseja visualizar a análise?"))
					{
						window.open('Analise_view.php?analise='+retorno.codigo, '_blank');
					}
					$(".modal_fechar").click();
						
					//alert(retorno.mensagem);
				}
			},'json'
		);	
	}
</script>

<?php include("Etapa1_criacao.php"); //<script src="js/analise_widget_query.js"></script>?>

<?php 
if($bi_analise->getCor_widget() == "" or $bi_analise->getCor_widget() == null)
{
	$bi_analise->setCor_widget("black");
}
if($bi_analise->getIcone_widget() == "" or $bi_analise->getIcone_widget() == null)
{
	$bi_analise->setIcone_widget("fa fa fa-dollar");
}
?>
<div id="etapa3" class="etapas_criar_analise" style=" display: none; width: 100%; max-width: 800px; margin: 0 auto; padding: 10px; padding-top: 0px;">
	<b style="color: #a6a6a6;">Etapa 3 de 4 - Configurar Mapa</b> <Br>
	<a href="javaScript:void(0)" style=" font-weight: bold;" onclick="voltar_etapa2()"><i class="fa-solid fa-left-long"></i> Voltar etapa</a>
	<Br>
	
	<div style='  display: table; width: 100%; text-align: left; position: relative; background: white; ' >
		
			<b style=' '>Título Mapa</b> <br>
			<input type="text"  class="form " id="titulo" placeholder="Título" style="width: 100%;" value="<?php echo $bi_analise->getTitulo_widget_grafico(); ?>">
			<br>
			<div class='filtroForm'  style="width: 100%; ">
				<b style="margin-top: -3px;">Tipo coluna lat/lng</b><br>
				<select class="form" id="tipo_coluna_lat_lng" onchange="atualiza_form_separador()" value="<?php echo $bi_analise->getTipo_coluna_lat_lng(); ?>"  placeholder="Tipo"  style="width: 100%; ">
					<option  value="lat_lng_separada">Lat Lng em colunas separadas</option>
					<option value="lat_lng_junta">Lat Lng na mesma coluna com separador</option>
				</select>
			</div>
			<br>
			<div class='filtroForm' id="form_separador" style="width: 100%; display: none;">
				<b>Separador exemplo (-12.000;-10.000 ou -12.000/-10.000)</b><br>
				<input type="text"  class="form " id="separador" placeholder="Separador" style="width: 150px;" value="<?php echo $bi_analise->getUnidade_widget(); ?>">
			</div>
			<div class='filtroForm'  style="width: 200px; float: left;">
				<b style="margin-top: -3px;" id="label_lat_lng">Latitude</b><br>
				<select class="form" id="select_coluna_latitude" placeholder="Latitude" >
						<option value=""></option>
				</select>
			</div>	
			<div class='filtroForm' id="form_longitude" style="width: 200px; float: left; ">
				<b style="margin-top: -3px;">Longitude</b><br>
				<select class="form" id="select_coluna_longitude" placeholder="Longitude" >
						<option value=""></option>
				</select>
			</div>	
			
			<div class='filtroForm'  style="width: 100%; ">
				<b style="margin-top: -3px;">Colunas info. Utilizado no PopUp ao clicar no marcador</b><br>
				<select class="form" id="select_colunas_info" placeholder="Tipo" multiple  style="width: 150px; padding: 5px; ">
						<option value=""></option>
				</select>
			</div>
			<div class='filtroForm'  style="width: 100%; ">
				<b style="margin-top: -3px;">Tipo visualização</b><br>
				<select class="form" id="tipo_view_mapa"  value="<?php echo $bi_analise->getTipo_view_mapa(); ?>"  placeholder="Tipo"  style="width: 100%; ">
					<option  value="marcador">Marcador</option>
					<option value="polilinha">Polilinha</option>
					<option value="marcador_polilinha">Marcador+Polilinha</option>
				</select>
		</div>
		<br>
		<b style="color: white; background: #eab580;">Será limitado a 4000 localizações</b>
	
		
	</div>
				
	<div class='filtroForm'  style="width: 100%; display: none;">
		<b style="margin-top: -3px;">Coluna Valor</b>
		<select class="form" id="select_colunas_valores_vertical"  placeholder="Tipo"  style="width: 150px; padding: 5px;">
			<option value=""></option>
		</select>
		<b class="valor_widget" style='color: <?php echo $bi_analise->getCor_widget();?>; opacity: 0.9; margin-left: 5px;'><!--Valor exemplo--></b>
	</div>
	
	
	<Br>
	<button class="btnSuccess btnSn" onclick="avancar_analise_etapa4_mapa()">Avançar etapa 4</button>
</div>

<div id="etapa4" style=" display: none; width: 100%; max-width: 800px; margin: 0 auto; padding: 10px; padding-top: 0px;">
	<b style="color: #a6a6a6;">Etapa 4 de 4 - Configurar colunas</b> <Br>
	<a href="javaScript:void(0)" style=" font-weight: bold;" onclick="voltar_etapa3()"><i class="fa-solid fa-left-long"></i> Voltar etapa</a>
	<Br>
	
	<div id="config_coluna"  style="width: 100%; padding: 10px; ">
	
		
	</div>
	
	<button class="btnSuccess btnSn" onclick="finalizar_analise_mapa()">Finalizar</button>
</div>
	
<script>
	
	$('#tipo_coluna_lat_lng option[value=\'<?php echo $bi_analise->getTipo_coluna_lat_lng();?>\']').attr('selected','selected');
	$('#tipo_view_mapa option[value=\'<?php echo $bi_analise->getTipo_view_mapa();?>\']').attr('selected','selected');
	function atualiza_form_separador()
	{
		if($('#tipo_coluna_lat_lng').val() == "lat_lng_junta")
		{
			$('#form_separador').css("display", "block");
			$('#form_longitude').css("display", "none");
			$('#label_lat_lng').html("Latitude"+" "+$('#separador').val()+" Longitude");
		}
		else
		{
			$('#form_separador').css("display", "none");
			$('#form_longitude').css("display", "block");
			$('#label_lat_lng').html("Longitude");
		}
	}
	atualiza_form_separador();
</script>