<?php
header('Access-Control-Allow-Origin: *');
header('Access-Control-Allow-Methods: GET, PUT, POST, DELETE, OPTIONS');

/* Change to the correct path if you copy this example! */
// require __DIR__ . '/../../autoload.php';
require 'api/Mike42/autoload.php';
use Mike42\Escpos\Printer;
use Mike42\Escpos\PrintConnectors\WindowsPrintConnector;

// arquivo de exemplo para receber o xml e "processar", no caso só imprimo o objeto gerado.
// o script de impressão vai fazer o que o script erpc_nfccode_venda_imprimir.php faz hoje, da linha 52 até 112

if(isset($_GET['teste'])){
	echo "<br>Teste de GET realizado com sucesso!";
}

	$myfile = fopen("xml/post_get_enviado.txt", "w+") or die("Unable to open file!");
    // header( 'Content-type: text/xml' ); preg_replace("/(\t+)/", "", $xml_string);
    fwrite($myfile, "teste de escrita no arquivo de texto");
    fclose($myfile);




$bo_xml = isset($_POST['xml']);
if ($bo_xml==true) {
  // $xml = simplexml_load_string($_POST['xml']);
  $xml_string  = $_POST['xml'];     // xml    d informações
  $include     = $_POST['include']; // classe q formata a impressão
  $caminho     = $_POST['printer']; // nome da impressora de destino
  $id_usuario  = $_POST['id_usuario'];
  $nm_usuario  = $_POST['nm_usuario'];
  $ds_versao_sw= $_POST['ds_versao_sw'];

  @include_once("$include");

  /*
  faz todo o processo
  print_r($xml);
  echo PHP_EOL . '----' . PHP_EOL;
  echo 'agora é só enviar pra impressora...' . PHP_EOL;*/
  try {

    /* escreve o arquivo no diretorio temporario */

	$myfile = fopen("xml/post_do_xml.xml", "w+") or die("Unable to open file!");
    // header( 'Content-type: text/xml' ); preg_replace("/(\t+)/", "", $xml_string);
    fwrite($myfile, $xml_string);
    fclose($myfile);

    $connector   = new WindowsPrintConnector($caminho);
    $NfcCodePrint= new NfcCodePrint($connector);

    $NfcCodePrint->setInformacaoSW($id_usuario, $nm_usuario, $ds_versao_sw);
    $NfcCodePrint->montarCupom($xml_string);
    $NfcCodePrint->imprimir();

  } catch (Exception $e) {
    echo "Couldn't print to this printer: " . $e -> getMessage() . "\n";
  }
} else {
  // mensagem de erro
  echo 'parâmetro xml não enviado';
}
