<?php
    @session_start();
    header( "Content-type: text/html; charset=utf-8" );
    if (!isset($_SESSION["admin"]["id"])) {
        echo "<script>location.href='index.php';</script>";
    	
    }
    include "config/conf.php";
 ?>
 <!DOCTYPE html>
<html>
<head>
	<title><?php echo $title; ?></title>
	<meta name="viewport" content="width=device-width, initial-scale=1">
	<meta charset="utf-8">
	<base href="<?php echo "http://".$_SERVER["HTTP_HOST"].$_SERVER["SCRIPT_NAME"]; ?>" />

	<link href='https://fonts.googleapis.com/css?family=Open+Sans' rel='stylesheet' type='text/css'>
	<link href='https://fonts.googleapis.com/css?family=Roboto' rel='stylesheet' type='text/css'>

	<link rel="stylesheet" type="text/css" href="css/bootstrap.min.css">
	<link rel="stylesheet" type="text/css" href="css/sb-admin.css">
	<link rel="stylesheet" type="text/css" href="css/font-awesome.min.css">
	<link rel="stylesheet" type="text/css" href="css/jasny-bootstrap.min.css">
	<link rel="stylesheet" type="text/css" href="css/jquery.autocomplete.css">
	<link rel="stylesheet" type="text/css" href="css/wysiwyg-color.css">

	<link rel="stylesheet" type="text/css" href="css/style.css">

    <link href="summernote.css" rel="stylesheet">
   

	<script type="text/javascript" src="js/jquery-1.9.1.min.js"></script>
	<script type="text/javascript" src="js/bootstrap.min.js"></script>
	<script type="text/javascript" src="js/jqBootstrapValidation.js"></script>
	<script type="text/javascript" src="js/bootstrap-inputmask.min.js"></script>
	<script type="text/javascript" src="js/jquery.maskMoney.min.js"></script>
	<script type="text/javascript" src="js/prettify.js"></script>
	<script type="text/javascript" src="js/jquery.colorbox-min.js"></script>

    <script src="js/jquery.complexify.js"></script> 
    <script src="summernote.min.js"></script>

	<link rel="stylesheet" type="text/css" href="colorbox.css">
	<script>
	  $(function () { $("input,select,textarea").not("[type=submit]").jqBootstrapValidation(); } );
	  function esconder ()  {
	  	$("#mask").hide();
	  }
	</script>
	<style type="text/css">
		html, body { height: 100%; }
	</style>
</head>
<body onload="esconder()">
<div id="mask" style="top:0;width:100%;height:100%;background: rgba(0,0,0,0.9);position: fixed;z-index: 10000;padding:20px;box-sizing: border-size">
	<img src="img/loading.gif" alt="Carregando..." title="Carregando...">
	<p style="font-size:2em;color:#fff;"><strong>Aguarde, carregando dados...</strong></p>
</div>
<div class="container">
 <?php


    //print_r ( $_FILES );
    //print_r ( $_POST );

    if ( $_POST ) {

    	$mes = trim ( $_POST["mes"] );
    	if ( $mes < 10 ) $mes = "0$mes";

    	$name = $mes."_".date("Y");

    	$dir = "../../downloads/".$name;

    	$arq = $dir ."/$mes.zip";

    	$extensao = pathinfo($_FILES["arquivo"]["name"]);
		$extensao = $extensao['extension'];

		if ( $extensao != "zip" ) {

			echo "<script>alert('Arquivo com extensão $extensao. Por favor envie um arquivo ZIP');</script>";
			exit;

		}

		if ( !extension_loaded( 'zip' ) ) {

			echo "<script>alert('Nao esta habilitado php_zip.dll, edite seu php.ini');</script>";
			exit;

		}

    	if ( !is_dir( $dir ) ) {
    		mkdir ( $dir );
    	}

    	$erro = "";

    	if ( file_exists($arq) ) unlink($arq);

    	if ( copy ( $_FILES["arquivo"]["tmp_name"] , $arq ) ) {

 			$zip = new ZipArchive;
			$zip->open( $arq);
			if ( $zip->extractTo( $dir."/" ) ) {

				echo "<script>alert('Arquivos Descompactados com Sucesso!');</script>";
				@unlink( $arq );
				
				$zip->close();	
				$i = 0;

				if ($handle = opendir("$dir")) {
					while (false !== ($file = readdir($handle))) {
						
						if ( ( $file != "$mes.zip" ) and ( strlen($file) > 10 ) ) {
							$i++;
				        	
				        	$extensao = pathinfo($file);
							$extensao = $extensao['extension'];

							$dados = explode("_",$file);

							$n = count($dados);
							$tipo = $dados[0];

							if ($tipo == "BL") $tipo = "Boleto";
							else $tipo = "Nota Fiscal";

							$empresa = $dados[1];
							@$cnpj = $dados[2];
							$mes = $dados[3];

							print_r($dados);

							$mes = explode(".",$mes);
							$mes = $mes[0];

							echo $sql = "select * from cliente where cnpj = '$cnpj' limit 1";
							$consulta = $db->prepare($sql);
							$consulta->execute();
							$dados = $consulta->fetch(PDO::FETCH_OBJ);
							exit;

							if ($mes == "JANEIRO") $mes = "01";
							else if ($mes == "FEVEREIRO") $mes = "02";
							else if ($mes == "MARCO") $mes = "03";
							else if ($mes == "ABRIL") $mes = "04";
							else if ($mes == "MAIO") $mes = "05";
							else if ($mes == "JUNHO") $mes = "06";
							else if ($mes == "JULHO") $mes = "07";
							else if ($mes == "AGOSTO") $mes = "08";
							else if ($mes == "SETEMBRO") $mes = "09";
							else if ($mes == "OUTUBRO") $mes = "10";
							else if ($mes == "NOVEMBRO") $mes = "11";
							else $mes = "12";


							$data = date("Y-m-d");

							if ( !empty ( $dados->id ) ) {

								$nome = $dados->id."_".md5($cnpj)."_".$mes.date("Y").".".$extensao;

								$sql2 = "select * from arquivo where arquivo = ? limit 1";
					            $consulta2 = $db->prepare($sql2);
					            $consulta2->bindParam(1,$nome);
								$consulta2->execute();
								$dados2 = $consulta2->fetch(PDO::FETCH_OBJ);

								if ( empty( $dados2->id ) ) {

									$novo = $name."/".$nome;

									$sql = "insert into arquivo values(NULL,?,?,?,?,?)";
						            $consulta = $db->prepare($sql);
						            $consulta->bindParam(1, $tipo);
						            $consulta->bindParam(2, $dados->id);
						            $consulta->bindParam(3, $data);
						            $consulta->bindParam(4, $novo);
						            $consulta->bindParam(5, $dados->valor);

						            rename ( $dir."/".$file , $dir."/".$nome );

									if ( $consulta->execute() ) {
										echo "<p class='alert alert-success'>Arquivo $nome enviado com sucesso - $dados->nome </p>";
										
									}
									else {
										echo "<p class='alert alert-danger'>Erro ao gravar $file para $dados->nome ".$consulta->errorInfo()[2]."</p>";
										$erro .= "<br>$file";
										exit;
									}


								} else {

									echo "<p class='alert alert-warning'>Arquivo $file já registrado $nome para $dados->nome</p>";

								}


							} else {

								echo "<p class='alert alert-danger'>Cliente do arquivo $cnpj - $file não encontrado na base.</p>";

							}


				        }
				    }
				    $id = $_SESSION["admin"]["id"];
					$data = date("Y-m-d H:i");

					$sql = "insert into importacao values (NULL, ?, ?, ?)";
					$consulta = $db->prepare($sql);
		            $consulta->bindParam(1, $data);
		            $consulta->bindParam(2, $i);
		            $consulta->bindParam(3, $id);
		            if (!$consulta->execute()) 
		            	echo "<p>Erro ao gravar importacao: ".$consulta->errorInfo()[2]."</p>";
		            else
		            	echo "<p>OK</p>";
				}
				echo "<p class='alert alert-info'>$i arquivos analisados.<br><br>Erro nos arquivos: $erro</p>";


			}

    	} else {

    		echo "<script>alert('Erro ao copiar arquivo para o servidor');</script>";

    	}

    	
    }
?>