<?php
include 'header.php';
include 'erpc_financeiro_plano_contas_toolbar.php';
include_once 'connect.php';

if (isset($_POST['submit'])) {


	$mensagem_erro = "<h1>Erro</h1><hr>Não foi possível importar o plano de contas. É provável que haja lançamentos utilizando o seu plano de contas atual, sendo assim <br> o novo plano de contas não poderá ser importado.";



        $limpar_tabela = "update erpc_financeiro_plano_contas set st_ativo = 0"; //esvaziando a tabela 
        $stmt = mysqli_prepare($conexao, $limpar_tabela) or die(mysqli_error($conexao) . '<br />' . $limpar_tabela);
        //mysqli_stmt_execute($stmt) or die(mysqli_error($conexao));
        mysqli_stmt_execute($stmt);// or trigger_error(mysqli_error($conexao));

       // echo "Imprimindo código de erro" . mysqli_stmt_errno($stmt);
       //Verificando se houve erro na execução do statement, fiz isso para tratar a mensagem de erro da fk que ocorre quando o usuário tenta zerar a 
       //tabela de plano de contas, já tendo utilizado um plano cadastrado. Nestes casos o importador não deve funcionar para não substituir o plano.

     
        //VERIFICANDO SE HOUVE ERRO AO EFETUAR O DELETE - REGISTROS FILHOS FK.
        if(mysqli_stmt_errno($stmt)!=0){
        	echo $mensagem_erro;	
        }else{ 

        }

if (is_uploaded_file($_FILES['filename']['tmp_name'])) {
	$filename = explode(".", $_FILES['filename']['name']);
		echo "<h1>" . "Arquivo ". $_FILES['filename']['name'] ." transferido com sucesso para o servidor." . "</h1>";
	
		echo "<hr>";
		echo "Tipo de arquivo: " . $filename[1];	
		echo "<hr>";

		//Verificando se o arquivo é CSV
		if ($filename[1]=='csv'){

				        $limpar_tabela = "update erpc_financeiro_plano_contas set st_ativo = 0 where 1"; //esvaziando a tabela 
				        $stmt = mysqli_prepare($conexao, $limpar_tabela) or die(mysqli_error($conexao) . '<br />' . $limpar_tabela);
				        //mysqli_stmt_execute($stmt) or die(mysqli_error($conexao));
				        mysqli_stmt_execute($stmt);// or trigger_error(mysqli_error($conexao));

				       // echo "Imprimindo código de erro" . mysqli_stmt_errno($stmt);
				        /*Verificando se houve erro na execução do statement, fiz isso para tratar a mensagem de erro da fk que ocorre quando o usuário tenta zerar a 
				        tabela de plano de contas, já tendo utilizado um plano cadastrado. Nestes casos o importador não deve funcionar para não substituir o plano. */


				        //VERIFICANDO SE HOUVE ERRO AO EFETUAR O DELETE - REGISTROS FILHOS FK.
				        if(mysqli_stmt_errno($stmt)!=0){
				        	echo $mensagem_erro;	
				        }else{ 

						      	$zerar_tabela = "ALTER TABLE erpc_financeiro_PLANO_CONTAS AUTO_INCREMENT = 1"; //setando o contador para 1
						        $stmt = mysqli_prepare($conexao, $zerar_tabela) or die(mysqli_error($conexao) . '<br />' . $zerar_tabela);
						        mysqli_stmt_execute($stmt) or die(mysqli_error($conexao));


								//Importar o arquivo para a base
								//Ignorando a primeira linha -> Cabeçalho
								$handle = fopen($_FILES['filename']['tmp_name'], "r");
								$firstRow = true;

								while (($data = fgetcsv($handle, 1000, ";")) !== FALSE) {
									if($firstRow) 
										{ 
											$firstRow = false; //Ignorando a primeira linha
										} else {
												$import="INSERT INTO erpc_financeiro_plano_contas (id_classe,id_condicao,ds_codigo,ds_plano,st_bloqueado, st_ativo) values('$data[0]','$data[1]','$data[2]','$data[3]',0,1)";

												//$import="INSERT into teste (ds_teste) values('$data[0]')";

												$stmt = mysqli_prepare($conexao, $import) or die(mysqli_error($conexao) . '<br />' . $import);
							        			mysqli_stmt_execute($stmt) or die(mysqli_error($conexao));
										}
								}

							fclose($handle);

							print "Plano de contas atualizado com sucesso!" . "<hr><br><br>";

							echo "<a href='erpc_financeiro_plano_contas_list.php'><button class='btn btn-default' type='button' value='Voltar'>Listar Planos de Contas</button></a>";

						}
			}else{
					echo "O arquivo selecionado não é um arquivo do tipo CSV requerido para esta operação! Escolha um arquivo CSV no layout correto.";
				}
		}

	//}
}else{ //else do submit


?>

<!-- Nav tabs -->
<ul class="nav nav-tabs" role="tablist">
  <li role="presentation" class="active"><a href="#form1" aria-controls="form1" role="tab" data-toggle="tab">Importar Arquivo CSV</a></li>
  <!--
  <li role="presentation"><a href="#form2" aria-controls="form2" role="tab" data-toggle="tab">Form #2</a></li>
  <li role="presentation"><a href="#form3" aria-controls="form3" role="tab" data-toggle="tab">Form #3</a></li>
  <li role="presentation"><a href="#form4" aria-controls="form4" role="tab" data-toggle="tab">Form #4</a></li>
  -->
</ul>


<!-- Tab panes -->
<div class="tab-content">
  <div role="tabpanel" class="tab-pane fade in active" id="form1">
<form enctype='multipart/form-data' id=validate_custom method=POST action="erpc_financeiro_plano_contas_importar.php">
  <div class=block>
    <div class=header>
      <h2>Importar Plano de Contas Financeiro</h2>
      <!--div class="side pull-right"> <button class="btn btn-default btn-clean" onClick="clear_form('#validate_custom');" type=button>Clear form</button>          </div-->
    </div>
        
    <div class="content controls">
      	
      <div class=form-row>
        <div class=col-md-3>Escolha o arquivo:</div>
        <div class=col-md-9><input size='50' type='file' name='filename'> </div>
      </div>
    </div>
    <div class=footer>
      <div class="side pull-right">
        <div class=btn-group> 
		<button class="btn btn-default" type="button" onClick="window.history.go(-1)" value="Voltar">Voltar</button>
              <button class="btn btn-success" type="submit" value="submit" onClick="$('#validate_custom').validationEngine('hide');" name="submit">Importar</button>
			  <!--botao antigo
		<button class="btn btn-default" type=button onClick="$('#validate_custom').validationEngine('hide');">Hide prompts</button>            <button class="btn btn-success" type=submit>Submit</button> 
		-->
		</div>
      </div>
    </div>
  </div>
</form>

  </div>
  
</div>
<!-- Fechando o ELSE do PHP para exibir o FORM -->
<?php 
	}//fechametno do else do submit

?>


  <?php
include 'footer.php';
?>