<?php
require_once("Buscar_coluna_primary.php");
class Gerar_view_filtro_arqDAO
{
	function montarArquivo($_tabela_bd, $nome_classe, $funcoes_data, $_lista_carga_tabela)
	{
		$view = "<div id=\"statusRequisicao\" ></div>\n";
		$view .="<div style='border-bottom: solid 1px #cccccc; width: 100%;'><b>".$_tabela_bd->getDescricao()."</b></div><br>";
		$view .= "<a href=\"javaScript:void(0);\" class=\"cor_verde abrir_modal\" abrir-modal=\"#modaleditar".$_tabela_bd->getTabela()."\" id=\"btnNovo\" onclick=\"atualizaSeletor('src/controller/".$nome_classe."Controller.php?carragar_formulario_seletor=<?php echo \$_GET['carragar_formulario_seletor'];?>&mod=form<?php if (isset(\$campo_buscar)) {echo str_replace(\"'\",\"\'\",\$campo_buscar);}?>','#<?php echo \$_GET['carragar_formulario_seletor'];?>')\" >Novo</a>\n";
		$view .= "|\n";
		///$view .= "<a href=\"javaScript:void(0)\" class=\"cor_verde abrir_modal\" abrir-modal=\"#modalfiltro".$_tabela_bd->getTabela()."\" style=\"\" >  <i class=\"fa fa-search\" aria-hidden=\"true\"></i> Filtros</a>\n";
		///$view .= "|\n";
		$view .= "<a href=\"javaScript:void(0);\" class=\"cor_verde\" onclick=\"$('#btn_fechar_filtro".$_tabela_bd->getTabela()."').click();  tableToExcel2('listtable".$_tabela_bd->getTabela()."', 'listtable".$_tabela_bd->getTabela()."')\"><i class=\"fa fa-file-excel-o\" aria-hidden=\"true\"></i> Excel</a>\n";
		$view .= "|\n";
		$view .= "<a href=\"javaScript:void(0);\" class=\"cor_verde\" onclick=\"$('#btn_fechar_filtro".$_tabela_bd->getTabela()."').click();  tableTocsv('listtable".$_tabela_bd->getTabela()."', 'listtable".$_tabela_bd->getTabela()."')\"><i class=\"fa fa-file-o\" aria-hidden=\"true\"></i> CSV</a>\n";
		$view .= "<br>\n";
		$buscar_coluna_primary = new Buscar_coluna_primary();
		
		$view.="<form  action='src/controller/".$nome_classe."Controller.php?mod=busca_por_campo_filtro&carragar_formulario_seletor=<?php echo \$_GET[\"carragar_formulario_seletor\"];?>' id=\"formDados".$_tabela_bd->getTabela()."Filtro\" class=\"form_filtro\">\n";
		//$view.="<div class=\"modal\" id=\"modalfiltro".$_tabela_bd->getTabela()."\" > \n";
		//$view.="<div class=\"modal_documento modal_medio modal_medio modal_medio_filtro\" >  \n";
		//$view.="	<div class=\"modal_titulo\">  \n";
		//$view.="		<button class=\"modal_fechar\" fecha-modal=\"#modalfiltro".$_tabela_bd->getTabela()."\" type=\"button\" id=\"btn_fechar_filtro".$_tabela_bd->getTabela()."\" ><i class=\"fa fa-times\" aria-hidden=\"true\"></i></button> \n";
		//$view.="	</div> \n";
		//$view.="	<div class=\"modal_conteudo modal_conteudo_filtro\"   > \n";
		//$view.="	<!-- conteudo--> \n";
		
		$colunas = $_tabela_bd->getLista_colunas();
		for ($i=0; $i <count($colunas); $i++)
		{	
			
			//($colunas[$i]->getTipo() == "tabela" or $colunas[$i]->getTipo() == "varchar") and
																														//essa condição é para carga de tabelas	
			if(  ($colunas[$i]->getFiltrar() == "1" or ($colunas[$i]->getTipo() == "tabela" and $colunas[$i]->getLeitura() != "")))
			{	
						
				$view.="	<div class='filtroForm' >\n";
				$tipoDatList = "text";
				$nome_coluna = strtoupper(substr($colunas[$i]->getColuna(),0,1)).substr($colunas[$i]->getColuna(),1);
				$class = "form";
				$coluna_form = "		<input ";
				$mascara = "";
				$mascaraReverse = "";
				$eventoClick = "";
				$valuesPadrao = 'value="<?php echo $'.$_tabela_bd->getTabela().'->get'.$nome_coluna.'();?>" valueDefault="<?php echo $'.$_tabela_bd->getTabela().'->get'.$nome_coluna.'();?>"';
				$htmlFinal = "";
				$fimTag = "/>";
				if ($colunas[$i]->getTipo() == 'data')
				{
					$view.="		<label>Período ".$colunas[$i]->getDescricao()."</label><br>\n";
					$coluna_form = '<input class="form mask" style="width: 150px;" name="'.$colunas[$i]->getColuna().'Ini" placeholder="'.$colunas[$i]->getMascara().'" placeholder="data" data-mask="'.$colunas[$i]->getMascara().'" value="" valuedefault="" autocomplete="off" maxlength="10">';
					$coluna_form .= ' a <input class="form mask" style="width: 150px;" name="'.$colunas[$i]->getColuna().'Fim" placeholder="'.$colunas[$i]->getMascara().'" placeholder="data" data-mask="'.$colunas[$i]->getMascara().'" value="" valuedefault="" autocomplete="off" maxlength="10"><br>';
				}
				else
				{	
					/*if ($colunas[$i]->getIndice() == "PRIMARY" )
					{
						$coluna_form .= 'type="hidden"';
					}
					else
					{*/
						switch($colunas[$i]->getTipo())
						{
							case "BIGINT":
								$coluna_form .= 'type="text"';
								$colunas[$i]->setMascara('000000000000');
							break;
							case "int":
								$coluna_form .= 'type="text"';
								$colunas[$i]->setMascara('000000000000000000000000');
							break;
							case "varchar":
								$coluna_form .= 'type="text"';
							break;
							case "float":
								$coluna_form .= 'type="text"';
								$colunas[$i]->setMascara('000.000.000.000.000,00');
								$mascaraReverse = "data-mask-reverse=\"true\"";
							break;
							case "TINYINT":
								$coluna_form .= 'type="checkbox"';
								$class = "";
								$eventoClick = "onclick=\"checkboxForm(this);\"";
								$htmlFinal .= " <br>";
							break;
							case "md5":
								$coluna_form .= 'type="password"';
								$valuesPadrao = 'value="" valueDefault=""';
							break;
							case "data":
								if($colunas[$i]->getIndice() == "DATAATUAL" or $colunas[$i]->getIndice() == "DATACRIACAO")
								{
									$coluna_form .= 'type="text" readonly';
								}	
								$valuesPadrao = 'value="<?php if ($'.$_tabela_bd->getTabela().'->get'.$nome_coluna.'() instanceof DateTime) {echo $'.$_tabela_bd->getTabela().'->get'.$nome_coluna.'()->format(\''.$funcoes_data->converterDataMaskParaDataPHP($colunas[$i]->getMascara()).'\');}?>"'; 
								$valuesPadrao .= ' valueDefault="<?php if ($'.$_tabela_bd->getTabela().'->get'.$nome_coluna.'() instanceof DateTime) {echo $'.$_tabela_bd->getTabela().'->get'.$nome_coluna.'()->format(\''.$funcoes_data->converterDataMaskParaDataPHP($colunas[$i]->getMascara()).'\');}?>"';
							break;
							case "tabela":
								$nome_coluna_fk = strtoupper(substr($colunas[$i]->getTipoColuna()->getColuna(),0,1)).substr($colunas[$i]->getTipoColuna()->getColuna(),1);
								$nome_coluna_fk_ultimo_nivel = $this->buscaNomeColuna($colunas[$i]);
								$nome_tabela_fk = strtoupper(substr($colunas[$i]->getTipoTabela()->getTabela(),0,1)).substr($colunas[$i]->getTipoTabela()->getTabela(),1);
								$coluna_primary = $colunas[$i]->getTipoColunaPrimaria()->getColuna();//$buscar_coluna_primary->buscar($colunas[$i]->getTipoTabela())->getColuna();
								$nome_coluna_pk = strtoupper(substr($coluna_primary,0,1)).substr($coluna_primary,1);
								$nome_tabela_atual = strtoupper(substr($_tabela_bd->getTabela(),0,1)).substr($_tabela_bd->getTabela(),1);
								//$valueSelect = " $".$_tabela_bd->getTabela()."->get".$nome_coluna."()->get".$nome_coluna_fk_ultimo_nivel."()";
								
								$nome_coluna_fk_ultimo_nivel_primary = $this->buscaNomeColunaPrimaria($colunas[$i]);
								$valuePadrao = " $".$_tabela_bd->getTabela()."->get".$nome_coluna."()->get".$nome_coluna_fk_ultimo_nivel_primary."()";
								
								$ifSeTemRegNoValue = "";
								if ($colunas[$i]->getComposta() == "1") //se for composta o valor é um array
									{
										//$valueSelect = " '{'.";
										$valuePadrao =" '{'.";
										$ifSeTemRegNoValue = " if (";
										foreach($colunas[$i]->getListaColunaComposta() as $colunafkatual)
										{
											$colunaEsrangeiraatual = $colunafkatual->getColunaEstrangeira();
											$ColunaPrimariaAtual =  $colunafkatual->getColunaPrimaria();
											
											$nome_colunaComposta_pk = strtoupper(substr($ColunaPrimariaAtual->getColuna(),0,1)).substr($ColunaPrimariaAtual->getColuna(),1);
											$nome_colunaComposta_fk = strtoupper(substr($colunaEsrangeiraatual->getColuna(),0,1)).substr($colunaEsrangeiraatual->getColuna(),1);
											
											//$valueSelect .= "'\"".$ColunaPrimariaAtual->getColuna()."\":\"'.\$umRegistro".$nome_coluna_fk."->get".$nome_colunaComposta_pk."()";
											$valuePadrao .= "'\'".$ColunaPrimariaAtual->getColuna()."\':\''.\$".$_tabela_bd->getTabela()."->get".$nome_colunaComposta_fk."()";
											$ifSeTemRegNoValue .= "! empty(\$".$_tabela_bd->getTabela()."->get".$nome_colunaComposta_fk."()";
											if ($ColunaPrimariaAtual->getTipo() == "tabela")
											{
												//$nome_colunaComposta_pk = strtoupper(substr($ColunaPrimariaAtual->getTipoColunaPrimaria()->getColuna(),0,1)).substr($ColunaPrimariaAtual->getTipoColunaPrimaria()->getColuna(),1);
												//$valuePadrao .= "->get".$nome_colunaComposta_pk."()";
											}
											if ($colunaEsrangeiraatual->getTipo() == "tabela" and $colunaEsrangeiraatual->getColunaOrigem()->getId() == "")//empty($colunaEsrangeiraatual->getColunaOrigem()->getId()))
											{
												$nome_colunaComposta_fk = strtoupper(substr($colunaEsrangeiraatual->getTipoColunaPrimaria()->getColuna(),0,1)).substr($colunaEsrangeiraatual->getTipoColunaPrimaria()->getColuna(),1);
												$valuePadrao .= "->get".$nome_colunaComposta_fk."()";
												$ifSeTemRegNoValue .= "->get".$nome_colunaComposta_fk."()";
											}
											$ifSeTemRegNoValue .= ")";
											if ($colunafkatual != $colunas[$i]->getListaColunaComposta()[count($colunas[$i]->getListaColunaComposta())-1])
											{
												//$valueSelect .= ". '\",'. ";
												$valuePadrao .= ". '\','. ";
												$ifSeTemRegNoValue .= " or ";
											}
										}
										//$valueSelect .= ".'\"}' ";
										$valuePadrao .= ".'\'}' ";
										$ifSeTemRegNoValue .= ")";
									}
								if ($ifSeTemRegNoValue == "")//empty($ifSeTemRegNoValue))
								{
									$ifSeTemRegNoValue = "if (".$valuePadrao." != \"\") ";
								}
								if ($colunas[$i]->getMultiRegistros() == '1')
								{
									
									$nomeDaFuncaoBuscar = "buscar".$nome_tabela_fk."Por".$nome_coluna_fk;
									$diretorio_view = "src/controller/".$nome_tabela_atual."Controller.php?mod=".$nomeDaFuncaoBuscar;
									$phpValorPadrao = '$'.$_tabela_bd->getTabela().'->get'.$nome_coluna.'()->get'.$nome_coluna_pk.'()';
									$coluna_form .= 'type="hidden"';
									$valuesPadrao = "value=\"<?php  ".$ifSeTemRegNoValue."{echo ".$valuePadrao.";}?>\""; 
									$valuesPadrao .= " valueDefault=\"<?php  ".$ifSeTemRegNoValue."{echo ".$valuePadrao.";}?>\"";
									$fimTag .= "\n		<br>";
									$fimTag .= "\n		<div class='filtroForm formGroup'  >";
									$fimTag .= "\n			<input class=\"datalist ".$class."\" id=\"filtrodatalist".$colunas[$i]->getColuna()."\" list=\"filtro_datalist".$colunas[$i]->getColuna()."\"   placeholder=\"Pesquisa...\" valuePost=\"".$colunas[$i]->getColuna()."\" requisicao=\"".$diretorio_view."\"";
									$fimTag .= " valueDefault=\"<?php echo $".$_tabela_bd->getTabela()."->get".$nome_coluna."()->get".$nome_coluna_fk_ultimo_nivel."();?>\"";
									$fimTag .= " value=\"<?php echo $".$_tabela_bd->getTabela()."->get".$nome_coluna."()->get".$nome_coluna_fk_ultimo_nivel."();?>\" />";
									$fimTag .= "\n			<button type=\"button\" class=\"fa fa-search btnPrimary\" aria-hidden=\"true\" onclick=\"buscarListaValor('filtrodatalist".$colunas[$i]->getColuna()."', 'filtro_datalist".$colunas[$i]->getColuna()."','filtro')\"></button>";
									$fimTag .= "\n			<div id=\"filtro_datalist".$colunas[$i]->getColuna()."\" class=\"dataListCustom\"></div>";
									$fimTag .= "\n		</div> ";
								}
								else
								{	
									$valueSelect = " \$umRegistro".$nome_coluna_fk."->get".$nome_coluna_pk."()";
									$valuePadrao = ' $'.$_tabela_bd->getTabela().'->get'.$nome_coluna.'()->get'.$nome_coluna_pk.'()';
									if ($colunas[$i]->getComposta() == "1") //se for composta o valor é um array
									{
										$valueSelect = " '{'.";
										$valuePadrao =" '{'.";
										foreach($colunas[$i]->getListaColunaComposta() as $colunafkatual)
										{
											$colunaEsrangeiraatual = $colunafkatual->getColunaEstrangeira();
											$ColunaPrimariaAtual =  $colunafkatual->getColunaPrimaria();
											
											$nome_colunaComposta_pk = strtoupper(substr($ColunaPrimariaAtual->getColuna(),0,1)).substr($ColunaPrimariaAtual->getColuna(),1);
											$nome_colunaComposta_fk = strtoupper(substr($colunaEsrangeiraatual->getColuna(),0,1)).substr($colunaEsrangeiraatual->getColuna(),1);
											
											$valueSelect .= "'\"".$ColunaPrimariaAtual->getColuna()."\":\"'.\$umRegistro".$nome_coluna_fk."->get".$nome_colunaComposta_pk."()";
											$valuePadrao .= "'\"".$ColunaPrimariaAtual->getColuna()."\":\"'.\$".$_tabela_bd->getTabela()."->get".$nome_colunaComposta_fk."()";
											if ($ColunaPrimariaAtual->getTipo() == "tabela")
											{
												$nome_colunaComposta_pk = strtoupper(substr($ColunaPrimariaAtual->getTipoColunaPrimaria()->getColuna(),0,1)).substr($ColunaPrimariaAtual->getTipoColunaPrimaria()->getColuna(),1);
												//$nome_colunaComposta_fk = strtoupper(substr($ColunaPrimariaAtual->getTipoColunaPrimaria()->getColuna(),0,1)).substr($ColunaPrimariaAtual->getTipoColunaPrimaria()->getColuna(),1);
												$valueSelect .= "->get".$nome_colunaComposta_pk."()";
												//$valuePadrao .= "->get".$nome_colunaComposta_fk."()";
											}
											if ($colunaEsrangeiraatual->getTipo() == "tabela" and $colunaEsrangeiraatual->getColunaOrigem()->getId() == "")//empty($colunaEsrangeiraatual->getColunaOrigem()->getId()))
											{
												$nome_colunaComposta_fk = strtoupper(substr($colunaEsrangeiraatual->getTipoColunaPrimaria()->getColuna(),0,1)).substr($colunaEsrangeiraatual->getTipoColunaPrimaria()->getColuna(),1);
												$valuePadrao .= "->get".$nome_colunaComposta_fk."()";
											}
											if ($colunafkatual != $colunas[$i]->getListaColunaComposta()[count($colunas[$i]->getListaColunaComposta())-1])
											{
												$valueSelect .= ". '\",'. ";
												$valuePadrao .= ". '\",'. ";
											}
										}
										$valueSelect .= ".'\"}' ";
										$valuePadrao .= ".'\"}' ";
									}
									
									$phpValorPadrao = '$'.$_tabela_bd->getTabela().'->get'.$nome_coluna.'()->get'.$nome_coluna_pk.'()';
									$coluna_form = "		<select ";
									$coluna_form .= '';	
									$valuesPadrao = 'value=\'<?php echo '.$valuePadrao.';?>\''; 
									$valuesPadrao .= ' valueDefault=\'<?php echo '.$valuePadrao.';?>\''; 
									$fimTag = ">\n";
									$fimTag .= "			<option value=\"\"></option>\n";
									$fimTag .= "			<?php foreach (\$lista".$nome_coluna."  as \$umRegistro".$nome_coluna_fk."){ ?>\n";
									$fimTag .= "					<option value='<?php echo $valueSelect; ?>'><?php echo \$umRegistro".$nome_coluna_fk."->get".$nome_coluna_fk."(); ?></option>\n";
									$fimTag .= "			<?php } ?>\n";
									
									$fimTag .= " 		</select>\n"
									;
								}	
							break;
						}
						$campo_obiratorio = "";
						if ($tipoDatList != "hidden")
						{	
							$view.="		<label>".$campo_obiratorio.$colunas[$i]->getDescricao()."</label>\n";
						}
						//cria label em compos normais
					//}	
					
					if ($colunas[$i]->getMascara() != "")
					{
						$class .= " mask";
						$mascara = 'data-mask="'.$colunas[$i]->getMascara().'"';
					}	
					$coluna_form .= ' class="'.$class.'" name="'.$colunas[$i]->getColuna().'" placeholder="'.$colunas[$i]->getDescricao().'" '.$mascara.' '.$mascaraReverse.' '.$colunas[$i]->getLeitura(). '  ';
					$coluna_form .= $valuesPadrao;
					$coluna_form .= ' '.$eventoClick.' '.$fimTag;
					$coluna_form .= $htmlFinal;
				}	
				$view.= $coluna_form."\n";
				$view.="	</div>\n";
			}
		}	
		$view.=" 	<!-- fim conteudo-->\n";	
		$view.=" 	</div>\n";
		//$view.=" 	<div class=\"modal_rodape modal_filtro_rodape\" >\n";
		$view.=" 		 <button type=\"button\" class=\"btnSuccess btnSn\"   onclick=\" if(filtraDados('formDados".$_tabela_bd->getTabela()."Filtro','resultado$nome_classe')) { $('#btn_fechar_filtro".$_tabela_bd->getTabela()."').prop('disabled',false); $('#btn_fechar_filtro".$_tabela_bd->getTabela()."').click(); }\">Filtrar </button>\n";	
		//$view.=" 		 <button type=\"button\" class=\"btnDefault btnSn\" onclick=\"$('#btn_fechar_filtro".$_tabela_bd->getTabela()."').click();  tableToExcel2('listtable".$_tabela_bd->getTabela()."', 'listtable".$_tabela_bd->getTabela()."')\"><i class=\"fa fa-file-excel-o\" aria-hidden=\"true\"></i> Excel</button>\n";
		//$view.=" 		 <button type=\"button\" class=\"btnDefault btnSn\" onclick=\"$('#btn_fechar_filtro".$_tabela_bd->getTabela()."').click();  tableTocsv('listtable".$_tabela_bd->getTabela()."', 'listtable".$_tabela_bd->getTabela()."')\"><i class=\"fa fa-file-o\" aria-hidden=\"true\"></i> CSV</button>\n";

		$view.=" 	</div>\n";
			
		$view.=" </div> \n";
		$view.=" </div> \n";
		//$view.=" <div style='float: left; margin: 5px;'><label></label><br> <button type=\"button\" class=\"btnSuccess\"   onclick=\"filtraDados('formDados".$_tabela_bd->getTabela()."Filtro','resultado$nome_classe')\">Filtrar </button></div>\n";	
		//$view.=" <div style='float: left; margin: 5px;'><label></label><br> <button type=\"button\" class=\"btnDefault\" onclick=\"tableToExcel2('listtable', 'listtable')\"><i class=\"fa fa-file-excel-o\" aria-hidden=\"true\"></i> Excel</button></div>\n";
		//$view.=" <div style='float: left; margin: 5px;'><label></label><br> <button type=\"button\" class=\"btnDefault\" onclick=\"tableTocsv('listtable', 'listtable')\"><i class=\"fa fa-file-o\" aria-hidden=\"true\"></i> CSV</button></div>\n";

		$view .= "</form>\n";
		
		$contColunasTabela = 0;
		for ($i=0; $i <count($colunas); $i++)
		{	
			if ($colunas[$i]->getTipo() != "md5" and $colunas[$i]->getNaoExibirTabela() != "1")
			{
				$contColunasTabela += 1;
			}
		}
		$view .= "<div style=\"width: 100%; overflow: auto; position: relative; \">\n ";
		$view .= "<table class=\"table\" id=\"listtable".$_tabela_bd->getTabela()."\" style=\"width: ".($contColunasTabela*150+300)."px; min-width:100%; margin-bottom: 30px;   position: relative; \" >\n";
		$colunas = $_tabela_bd->getLista_colunas();
		$view .= "	<thead>\n";
		$view .= "		<tr class=\"tableHead\">\n";
		$view .= "			<td>Editar</td>\n";
		$view .= "			<td>Excluir</td>\n";
		if (count($_lista_carga_tabela) > 0) 
		{
			$view .= "			<td></td>\n";
		}	
		for ($i=0; $i <count($colunas); $i++)
		{	
			if ($colunas[$i]->getTipo() != "md5" and $colunas[$i]->getNaoExibirTabela() != "1")
			{	
				$nome_coluna = strtoupper(substr($colunas[$i]->getColuna(),0,1)).substr($colunas[$i]->getColuna(),1);
				$view .= "			<td>".$colunas[$i]->getDescricao()."</td>\n";
			}	
		}
		//$coluna_primary = $buscar_coluna_primary->buscar($_tabela_bd)->getColuna();
		
		$view .= "		</tr>\n";
		$view .= "	</thead>\n";
		$view .= "	<tbody id=\"resultado$nome_classe\">\n";
		$view .= "	</tbody>\n";
		$view .= "</table>\n";
		$view .= "</div>";
		
		$view .= "<div class=\"modal\" id=\"modaleditar".$_tabela_bd->getTabela()."\"> \n";
		$view .= "<div class=\"modal_documento modal_largo\"> \n";
		$view .= "	<div class=\"modal_titulo\"> \n";
		$view .= "		<button class=\"modal_fechar\" fecha-modal=\"#modaleditar".$_tabela_bd->getTabela()."\"><i class=\"fa fa-times\" aria-hidden=\"true\"></i></button>\n";	
		$view .= "	</div>\n";
		$view .= "	<div class=\"modal_conteudo\" id=\"modal_conteudo".$_tabela_bd->getTabela()."\">\n";	
		$view .= "	</div>\n";
		$view .= "	<div class=\"modal_rodape\"></div>\n";
		$view .= "</div> 	\n";
		$view .= "</div>\n";
		$view .= "\n";
		$view .= "<div id=\"iniciar_tabulator".$_tabela_bd->getTabela()."\"></div>\n";
		$view .= "\n";
		if (count($_lista_carga_tabela) > 0) 
		{
			//$view .= "<button class=\"btnSuccess abrir_modal\" id=\"btnNovo\" abrir-modal=\"#modalteste\">Abrir Modal</button>\n";
			$view .= "<div class=\"modal\" id=\"modalteste".$_tabela_bd->getTabela()."\"> \n";
			$view .= "	<div class=\"modal_documento modal_largo\"> \n";
			$view .= "		<div class=\"modal_titulo\">\n";
			$view .= "			<button class=\"modal_fechar\" fecha-modal=\"#modalteste".$_tabela_bd->getTabela()."\"><i class=\"fa fa-times\" aria-hidden=\"true\"></i></button>\n";
			$view .= "			\n";
			$view .= "		</div>\n";
			$view .= "		<div class=\"modal_conteudo\" id=\"conteudo_carga_tabela".$_tabela_bd->getTabela()."\">\n";
			$view .= "			<div class=\"formulario_esquerda\" id=\"formulario_esquerda_carga\"></div>\n";
			$view .= "			<div class=\"formulario_direita\" id=\"formulario_direita_carga\"></div>\n";
			$view .= "		</div>\n";
			$view .= "		<div class=\"modal_rodape\"></div>\n";
			$view .= "	</div> 	\n";
			$view .= "</div>\n";
		}	
		$view .= "<script>\n";
		$view .= "	iniciar_tabulator(\"#iniciar_tabulator".$_tabela_bd->getTabela()."\", \"#listtable".$_tabela_bd->getTabela()."\");\n";
		$view .= "</script>\n";
		$view .= "<script src=\"js/formulario.js\"></script>\n";
		$view .= "<script src=\"js/relatorio.js\"> </script>";
		
		
		/*$view  ="<div style='border-bottom: solid 1px #cccccc;'><b>".$_tabela_bd->getDescricao()."</b></div><br>";
		$view .= "<a href=\"javaScript:void(0);\" class=\"cor_verde\" id=\"btnNovo\" onclick=\"atualizaSeletor('src/controller/".$nome_classe."Controller.php?carragar_formulario_seletor=<?php echo \$_GET['carragar_formulario_seletor'];?>&mod=form<?php if (isset(\$campo_buscar)) {echo \$campo_buscar;}?>','#<?php echo \$_GET['carragar_formulario_seletor'];?>')\" >Novo</a><br>\n";
		$view .= "<table class=\"table\">\n";
		$colunas = $_tabela_bd->getLista_colunas();
		$view .= "	<thead>\n";
		$view .= "		<tr class=\"tableHead\">\n";
		if (count($_lista_carga_tabela) > 0) 
		{
			$view .= "			<td></td>\n";
		}	
		for ($i=0; $i <count($colunas); $i++)
		{	
			if ($colunas[$i]->getTipo() != "md5" and $colunas[$i]->getNaoExibirTabela() != "1")
			{	
				$nome_coluna = strtoupper(substr($colunas[$i]->getColuna(),0,1)).substr($colunas[$i]->getColuna(),1);
				$view .= "			<td>".$colunas[$i]->getDescricao()."</td>\n";
			}	
		}
		$coluna_primary = $buscar_coluna_primary->buscar($_tabela_bd)->getColuna();
		$view .= "			<td>Editar</td>\n";
		$view .= "			<td>Excluir</td>\n";
		$view .= "		</tr>\n";
		$view .= "	</thead>\n";
		$view .= "	<tbody>\n";
		$view .= "		<?php foreach(\$lista".$nome_classe." as \$".$_tabela_bd->getTabela().") {?>\n";
		
		
		
		$view .= "		<tr class=\"formTab\" >\n";
		if (count($_lista_carga_tabela) > 0) 
		{
			$view .= "			<td>\n";
			$view .= "				<i class=\"fa fa-chevron-circle-down cargaTabela\" aria-hidden=\"true\">\n";
			$view .= "				<div class=\"tableCargaTabela\" >\n";
			$view .= "					<table class=\"table\">\n";
			foreach($_lista_carga_tabela as $_carga_tabela)
			{
				$colunaDaTabelaNpraNqueReferenciaEssa = "";
				$listaColunasCarregada = $_carga_tabela->getTabelaCarregada()->getLista_colunas();
				foreach ($listaColunasCarregada as $conula_n_pra_n)
				{
					if ($conula_n_pra_n->getTipo() == "tabela")
					{	
						//$colunaDaTabelaNpraNqueReferenciaEssa .= $conula_n_pra_n->getTipoTabela()->getId() ." ".$_tabela_bd->getId()." ->";
						if ($conula_n_pra_n->getTipoTabela()->getId() == $_tabela_bd->getId() )
						{
							$colunaDaTabelaNpraNqueReferenciaEssa = $conula_n_pra_n->getColuna();
							break;
						}
					}		
				}	
				$nome_tabela_carregada = strtoupper(substr($_carga_tabela->getTabelaCarregada()->getTabela(),0,1)).substr($_carga_tabela->getTabelaCarregada()->getTabela(),1);
				$view .= "						<tr class=\"formTab abrir_modal\" abrir-modal=\"#modalteste\" onclick=\"atualizaSeletor('src/controller/".$nome_tabela_carregada."Controller.php?mod=busca_por_campo&".$_tabela_bd->getTabela()."=<?php echo \$".$_tabela_bd->getTabela()."->get".$coluna_primary."();?>&".$colunaDaTabelaNpraNqueReferenciaEssa."=<?php echo \$".$_tabela_bd->getTabela()."->get".$coluna_primary."()?>&carragar_formulario_seletor=formulario_esquerda_carga','#formulario_direita_carga'); \n";
				$view .= "						atualizaSeletor('src/controller/".$nome_tabela_carregada."Controller.php?carragar_formulario_seletor=formulario_esquerda_carga&mod=form&".$colunaDaTabelaNpraNqueReferenciaEssa."=<?php echo \$".$_tabela_bd->getTabela()."->get".$coluna_primary."()?>','#formulario_esquerda_carga');\"><td>".$_carga_tabela->getDescricao()."</td></tr>\n";
			}	
			$view .= "					</table>\n";
			$view .= "				</div>\n";
			$view .= "				</i>\n";
			$view .= "			</td>\n";
		}
		for ($i=0; $i <count($colunas); $i++)
		{	
			if ($colunas[$i]->getNaoExibirTabela() != "1")
			{	
				switch ($colunas[$i]->getTipo())
				{
					case "md5":
					
					break;
					case "data":
						$nome_coluna = strtoupper(substr($colunas[$i]->getColuna(),0,1)).substr($colunas[$i]->getColuna(),1);
						$view .= "			<td><?php if(\$".$_tabela_bd->getTabela()."->get".$nome_coluna."() instanceof DateTime) {echo \$".$_tabela_bd->getTabela()."->get".$nome_coluna."()->format('".$funcoes_data->converterDataMaskParaDataPHP($colunas[$i]->getMascara())."');}?></td>\n";
					break;
					case "tabela":
							$nome_coluna_estrangeira = strtoupper(substr($colunas[$i]->getTipoColuna()->getColuna(),0,1)).substr($colunas[$i]->getTipoColuna()->getColuna(),1);
							$nome_coluna_fk_ultimo_nivel = $this->buscaNomeColuna($colunas[$i]);
							$nome_coluna = strtoupper(substr($colunas[$i]->getColuna(),0,1)).substr($colunas[$i]->getColuna(),1);
							$view .= "			<td><?php echo \$".$_tabela_bd->getTabela()."->get".$nome_coluna."()->get".$nome_coluna_fk_ultimo_nivel."();?></td>\n";
						break;
					default:
						$nome_coluna = strtoupper(substr($colunas[$i]->getColuna(),0,1)).substr($colunas[$i]->getColuna(),1);
						$view .= "			<td><?php echo \$".$_tabela_bd->getTabela()."->get".$nome_coluna."();?></td>\n";	
					
				}
			}	
				
		}
		$view .= "			<td><a href=\"javaScript:void(0)\" class=\"cor_verde\" onclick=\"atualizaSeletor('src/controller/".$nome_classe."Controller.php?carragar_formulario_seletor=<?php echo \$_GET['carragar_formulario_seletor'];?>&mod=form&".$coluna_primary."=<?php echo \$".$_tabela_bd->getTabela()."->get".$coluna_primary."();?><?php if (isset(\$campo_buscar)) {echo \$campo_buscar;}?>','#<?php echo \$_GET[\"carragar_formulario_seletor\"];?>');\"><i class=\"fa fa-pencil\" aria-hidden=\"true\"></i></td>\n";
		$view .= "			<td><a href=\"javaScript:void(0)\" class=\"cor_verde\" onclick=\"excluirDados('src/controller/".$nome_classe."Controller.php?mod=excluir&id=<?php echo \$".$_tabela_bd->getTabela()."->get".$coluna_primary."();?>')\"><i class=\"fa fa-trash\" aria-hidden=\"true\"></i></td>\n";
		$view .= "		</tr>\n";
		$view .= "		<?php }?>\n";
		$view .= "	</tbody>\n";
		$view .= "</table>\n";
		
		if (count($_lista_carga_tabela) > 0) 
		{
			//$view .= "<button class=\"btnSuccess abrir_modal\" id=\"btnNovo\" abrir-modal=\"#modalteste\">Abrir Modal</button>\n";
			$view .= "<div class=\"modal\" id=\"modalteste\"> \n";
			$view .= "	<div class=\"modal_documento modal_largo\"> \n";
			$view .= "		<div class=\"modal_titulo\">\n";
			$view .= "			<button class=\"modal_fechar\" fecha-modal=\"#modalteste\"><i class=\"fa fa-times\" aria-hidden=\"true\"></i></button>\n";
			$view .= "			\n";
			$view .= "		</div>\n";
			$view .= "		<div class=\"modal_conteudo\">\n";
			$view .= "			<div class=\"formulario_esquerda\" id=\"formulario_esquerda_carga\"></div>\n";
			$view .= "			<div class=\"formulario_direita\" id=\"formulario_direita_carga\"></div>\n";
			$view .= "		</div>\n";
			$view .= "		<div class=\"modal_rodape\"></div>\n";
			$view .= "	</div> 	\n";
			$view .= "</div>\n";
		}	*/

		return $view;
		
	}
	
	
	
	function buscaNomeColuna($coluna)
	{
		$nomeColuna = "";
		
		if ($coluna->getTipoColuna()->getTipo() == "tabela")
		{	
	
			$primeiroNivel = strtoupper(substr($coluna->getTipoColuna()->getTipoTabela()->getTabela(),0,1)).substr($coluna->getTipoColuna()->getTipoTabela()->getTabela(),1);
			$ultimoNivel = strtoupper(substr($coluna->getTipoColuna()->getTipoColuna()->getColuna(),0,1)).substr($coluna->getTipoColuna()->getTipoColuna()->getColuna(),1);
			$nomeColuna =  $primeiroNivel . "()->get".$ultimoNivel;
		}
		else
		{		
			$nomeColuna = strtoupper(substr($coluna->getTipoColuna()->getColuna(),0,1)).substr($coluna->getTipoColuna()->getColuna(),1);
		}	
		return $nomeColuna;
	}
	function buscaNomeColunaPrimaria($coluna)
	{
		$nomeColuna = "";
		
		if ($coluna->getTipoColuna()->getTipo() == "tabela")
		{	
	
			$primeiroNivel = strtoupper(substr($coluna->getTipoColuna()->getTipoTabela()->getTabela(),0,1)).substr($coluna->getTipoColuna()->getTipoTabela()->getTabela(),1);
			$ultimoNivel = strtoupper(substr($coluna->getTipoColuna()->getTipoColunaPrimaria()->getColuna(),0,1)).substr($coluna->getTipoColuna()->getTipoColunaPrimaria()->getColuna(),1);
			$nomeColuna =  $primeiroNivel . "()->get".$ultimoNivel;
		}
		else
		{		
			$nomeColuna = strtoupper(substr($coluna->getTipoColunaPrimaria()->getColuna(),0,1)).substr($coluna->getTipoColunaPrimaria()->getColuna(),1);
		}	
		return $nomeColuna;
	}
}