<?php
// Criar objeto Janela
$oJanelaPrinc = New R_Janela();
$oJanelaPrinc->sIdObj  = "iJan_LstCadBar"; 
$oJanelaPrinc->nTop    = 80;
$oJanelaPrinc->nLeft   = 40;
$oJanelaPrinc->nWidth  = 450;   // Largura
$oJanelaPrinc->nHeight = 0;     // Altura
$oJanelaPrinc->nLeft  += ($nTela_W/2)-($oJanelaPrinc->nWidth/2);
$oJanelaPrinc->sTitulo = 'Código de Barras';
//$oJanelaPrinc->sJavOnClick = "document.getElementById('iCadTel_PChave').focus();";
$oJanelaPrinc->sJavKeyDown = "return Car_".$sNomeAcesso."4.Teclas_F(this,event);";
//
$sJavaTravarJ = "parent.document.getElementById('".$oJanelaPrinc->sIdObj."_Travar').style.visibility='visible'; parent.Disabled_In_Elems('".$oJanelaPrinc->sIdObj."',true);";
$oJanelaPrinc->sJavOnClickF = 
    $sJavaTravarJ.
	"parent.document.forms.fmPCadBar.acao.value='FECHAR'; ".
	"parent.document.forms.fmPCadBar.submit();".
	"";
//
// Criar objeto GRID dos Codigos de barras
$oListaBar = New Pad_GridPesq();
$oListaBar->bUsarSoMatriz = True;
$oListaBar->sNomeTabela   = 'cad_codigo_barras';
$oListaBar->sIdObjTabela  = 'iQdr_ListaBar';
$oListaBar->GLstCampos( 'BAR_CODBAR,Código de Barras,438px;'.
								'BAR_SEQUEN,Sequencia,100px;');
$oListaBar->sCampoIndice = 'BAR_CODBAR';
$oListaBar->nWidth  = $oJanelaPrinc->nWidth;
$oListaBar->nHeight = 150;   // Altura
$oListaBar->sCampoOnClick  = "Car_".$sNomeAcesso."4.P_Sel(<NUMCAM>); ";
                             //"Car_".$sNomeAcesso."5.P_Atu();".
							 "";
$oListaBar->sLinhaOnClick  = "Car_".$sNomeAcesso."4.PRow_Sel(<QTDCOL>,<SELLIN>);";
$oListaBar->sJavSelectReg = "sSelIndice = S_Indice;".
                            "if (parseInt(sSelIndice)>0) {".
									     "parent.document.getElementById('CadEBar_BT_Rmv').style.display='inline-block';".
							"} ".
                            'parent.document.getElementById("iECadEBar_iLstBar").focus();';
//
$n_CodCad = 0;

$bInteiro = False;

If ( ISSET($_POST['Ite_CodigoI']) ) {
   $n_CodCad = $_POST['Ite_CodigoI']+0;
}

If ( ISSET($_POST['Bar_CodCad']) ) {
   $n_CodCad = $_POST['Bar_CodCad']+0;
}

$sIte_CodigoL = @$_POST['Ite_CodigoL'];
$sBar_CodBar = @$_POST['Bar_CodBar'];

If( STRLEN($sBar_CodBar)>=1){
  If( STRLEN($sBar_CodBar)<=4){
    $sBar_CodBar = Str_Zero($sBar_CodBar,4);
  }
}

If(($sBar_CodBar+0)<=9999) {
 $bInteiro = True;
}


$nBar_Sequen = 0;
$a_ListaBar = @$aSessao['CADBAR_LISTA'];
//
// MONTAR LISTA DE Codigo de Barras
If ( $sAcao=="LISTAR" ) {
   If ( ! ISSET($aSessao['CADBAR_LISTA']) ) {
      $a_ListaBar = ARRAY();
      $sSQLQuery =
        "SELECT BAR_CODBAR , BAR_SEQUEN ".
		  "FROM cad_codigo_barras ".
		  "WHERE ".
            "BAR_CODITE=".$n_CodCad. 
        " ORDER BY BAR_CODBAR ASC;";
		
      $RowsT = MYSQL_QUERY( $sSQLQuery ) Or Die( $sSQLQuery.'<br>'.MYSQL_ERROR() );
      
		While ($RowT = MYSQL_FETCH_ARRAY($RowsT)) {
	     $a_ListaBar[] = $RowT;
      }
   }
   $oListaBar->aLstItensTab = $a_ListaBar;
   //
   // Tabela dos CODIGO DE BARRAS
   $sRet_TelaJ_HTML = $oListaBar->MontaTabelaHTML();
   // Java
   $sRet_Javs .=
      "parent.document.getElementById('CadEBar_BT_Rmv').style.display='none';".
      "var iQdr_ListaBar = parent.document.getElementById('".$oListaBar->sIdObjTabela."');".
      'iQdr_ListaBar.innerHTML = '.JAVA_CharCode_Mini($sRet_TelaJ_HTML).';'.
      'parent.Car_'.$sNomeAcesso.'4.'.$oListaBar->sNomeTabela.'_Rowsel = 1;'.
      '';
   // Java posterior
   $sRet_JavsPos .=
      'parent.Car_'.$sNomeAcesso.'4.P_Sel(0);'.
      '';
   $sRet_TelaJ_HTML = '';
//
// ADICIONAR barras
} ElseIf ( $sAcao=="BAR_ADC" ) {
   $bIncluir = True;
   If ($sBar_CodBar==0 ) {
      // Erro: Erro codigo inválido
	  $sRet_Javs .= 
	                "parent.document.getElementById('iCadEBar_CodBar').value='';".
                   "parent.document.getElementById('iCadEBar_CodBar').focus();".
	                Info_Evento('Não foi informado nenhum código !',1);
      $bIncluir = False;
   }
   
	
	If ( $bIncluir ) {
       ForEach ( $a_ListaBar As $aBar ) {
	      If ( $aBar['BAR_CODBAR'] == $sBar_CodBar ) {
             // Erro: Já existe o codigo de barras
	         $sRet_Javs .= 
				              "parent.document.getElementById('iCadEBar_CodBar').value='';".
                          "parent.document.getElementById('iCadEBar_CodBar').focus();".
				              Info_Evento('Já existe este código de barras neste produto e não pode ser adicionado.',1);
		     $bIncluir = False;
		     BREAK;
		  }
	   }
   }
	// verificar se existe codigo livre com esse codigo de barras digitado
	If($bInteiro){
	  $sIte_CodBar  = Str_Zero($sBar_CodBar,4);
	  $sIte_CodigoL = Str_Zero($sIte_CodigoL,4);
	  
	  If($sIte_CodigoL==$sIte_CodBar){
       $sRet_Javs .= "parent.document.getElementById('iCadEBar_CodBar').value='';".
                     "parent.document.getElementById('iCadEBar_CodBar').focus();".
		               Info_Evento('Código Cardápio já cadastrado para o produto atual.' ,1);
   	 $bIncluir = False;	 

	  } Else {
	  
	    $sSQLQueryA =
		     "SELECT ".
			  "cad_produto.ITE_CODIGOL, ".
		     "cad_produto.ITE_DESCRIC  ".
			  "FROM cad_produto ".
			  "WHERE cad_produto.ITE_CODIGOL='".$sIte_CodBar."'". 
		 "";
				
		 $RowsT = MYSQL_QUERY( $sSQLQueryA ) Or Die( $sSQLQueryA.'<br>'.MYSQL_ERROR() );
		 $NUM = MYSQL_NUM_ROWS($RowsT);
		 $RowT = MYSQL_FETCH_ARRAY($RowsT);
		
		 If ($NUM >0) {
		   $sRet_Javs .= "parent.document.getElementById('iCadEBar_CodBar').value='';".
                       "parent.document.getElementById('iCadEBar_CodBar').focus();".
			              Info_Evento('Código Cárdapio já Cadastrado para o produto: <br>'.$RowT['ITE_CODIGOL'].'-'.$RowT['ITE_DESCRIC'].'.' ,1);
			$bIncluir = False;
		 } Else {
        $sSQLQueryB =
		         "SELECT cad_codigo_barras.BAR_CODBAR, cad_codigo_barras.BAR_CODITE,cad_codigo_barras.BAR_SEQUEN, ".
		                "cad_produto.ITE_CODIGOL, ".
		                "cad_produto.ITE_DESCRIC  ".
		                "FROM cad_codigo_barras, cad_produto ".
		                "WHERE cad_produto.ITE_CODIGOI=cad_codigo_barras.BAR_CODITE AND ".
		                "cad_codigo_barras.BAR_CODBAR='".$sBar_CodBar."'".
		         "";
		
		         $RowsT = MYSQL_QUERY( $sSQLQueryB ) Or Die( $sSQLQueryB.'<br>'.MYSQL_ERROR() );
		         $NUM = MYSQL_NUM_ROWS($RowsT);
		         $RowT = MYSQL_FETCH_ARRAY($RowsT);
		
		         If ($NUM >0) {
		            $sRet_Javs .= 
		               "parent.document.getElementById('iCadEBar_CodBar').value='';".
                     "parent.document.getElementById('iCadEBar_CodBar').focus();".
		               Info_Evento('Código de Barras já Cadastrado para o produto: <br>'.$RowT['ITE_CODIGOL'].'-'.$RowT['ITE_DESCRIC'].'.' ,1);
		            $bIncluir = False;
	         	}			

		 }
		
		
	  }
	} Else {
	//verificar se existe codigo de barras digitado em outro produto ja cadastrado
	   $sSQLQuery =
		     "SELECT cad_codigo_barras.BAR_CODBAR, cad_codigo_barras.BAR_CODITE,cad_codigo_barras.BAR_SEQUEN, ".
			  "cad_produto.ITE_CODIGOL, ".
			  "cad_produto.ITE_DESCRIC  ".
			  "FROM cad_codigo_barras, cad_produto ".
			  "WHERE cad_produto.ITE_CODIGOI=cad_codigo_barras.BAR_CODITE AND ".
			  "cad_codigo_barras.BAR_CODBAR='".$sBar_CodBar."'".
			  "";
			  
		$RowsT = MYSQL_QUERY( $sSQLQuery ) Or Die( $sSQLQuery.'<br>'.MYSQL_ERROR() );
		$NUM = MYSQL_NUM_ROWS($RowsT);
		$RowT = MYSQL_FETCH_ARRAY($RowsT);
		
		If ($NUM >0) {
		   $sRet_Javs .= "parent.document.getElementById('iCadEBar_CodBar').value='';".
                       "parent.document.getElementById('iCadEBar_CodBar').focus();".
			              Info_Evento('Código de Barras já Cadastrado para o produto: <br>'.$RowT['ITE_CODIGOL'].'-'.$RowT['ITE_DESCRIC'].'.' ,1);
			$bIncluir = False;
		}
	
	}
   If ( $bIncluir ) {
      //If ( $nTel_TipCtt==0 ) { $nTel_TipCtt=2; }
      //$RowT = MYSQL_QUERY("SELECT CTT_DESCRI FROM cad_tipo_telefone WHERE CTT_CODIGO='".$nTel_TipCtt."' ;") or die(MYSQL_ERROR());
      //$RowT = MYSQL_FETCH_ARRAY($RowT);
	  //$_Ctt_Descri = @$RowT[0];
	
	  
	  $aBar = ARRAY(
	            "BAR_CODBAR" => $sBar_CodBar ,
					"BAR_SEQUEN" => $nBar_Sequen);
	  $a_ListaBar[] = $aBar;
	  //
      $sRet_Javs .=
         "parent.document.getElementById('iCadEBar_CodBar').value='';".
         "parent.document.getElementById('iCadEBar_CodBar').focus();".
         'parent.Car_'.$sNomeAcesso.'4.P_Atu();'.
	     "";
   }
//
// REMOVER 
} ElseIf ( $sAcao=="BAR_RMV" ) {
   $bRemove = True;
   If ( STRLEN($sBar_CodBar)==0 ) {
      // Erro: Erro Codigo Barras inválido
	  $sRet_Javs .= Info_Evento('Código de barras inválido.',1);
      $bRemove = False;
   }
   $a_ListaBarN = ARRAY();
   If ( $bRemove ) {
	   $bRemove = False;
       ForEach ( $a_ListaBar As $aBar ) {
	      If ( $aBar['BAR_CODBAR'] == $sBar_CodBar ) {
		     $bRemove = True;
		  } Else {
		     $a_ListaBarN[] = $aBar;
		  }
	   }
   }
   If ( $bRemove ) {
      $a_ListaBar = $a_ListaBarN;
      $sRet_Javs .=
         "parent.document.getElementById('iCadEBar_CodBar').focus();".
         'parent.Car_'.$sNomeAcesso.'4.P_Atu();'.
        "";
   } Else {
	  $sRet_Javs .= Info_Evento('Código de Barras inválido.',1);
   }
//
// FECHAR
} ElseIf ( $sAcao=="FECHAR" ) {
   $sRet_Javs .=
	  "parent.document.getElementById('".$sNomeIdJ_Ant."_Travar').style.visibility='hidden';".
	  "parent.Disabled_In_Elems('".$sNomeIdJ_Ant."',false);".
	  $sJavaExePos.
	  'parent.document.getElementById("'.$sNomeIdCampo.'").focus();'.
      "parent.RmElem('".$oJanelaPrinc->sIdObj."');";
//
// JANELA TELA PRINCIPAL
} Else {
	
	//
   //$sHTML_CmbTipTel = '';
   //$RowsT = MYSQL_QUERY( "SELECT * FROM cad_tipo_telefone ORDER BY CTT_DESCRI ASC" ) Or Die(MYSQL_ERROR());
   //While ($RowT = MYSQL_FETCH_OBJECT($RowsT)) {
   //    $sHTML_CmbTipTel .= '<option value="'.$RowT->CTT_CODIGO.'">'.$RowT->CTT_DESCRI.'</option>';
  // }
   //
   $oJanelaPrinc->aIdsObjList =
      ARRAY( 'iCadEBar_CodBar', 'iECadEBar_iLstBar' );
   //
   // Tela HTML
   $sRet_TelaJ_HTML =
	  $oJanelaPrinc->MontaJanHTML(True).
      '<form name="fmPCadBar" accept-charset="utf-8" method="post" action="./car_js.php" target="car_'.$sNomeAcesso.'5">'.
       '<input name="mod" type="hidden" value="'.$sModulo.'">'.
       '<input name="submod" type="hidden" value="'.$sSubModulo.'">'.
       '<input name="acao" type="hidden" value="">'.
	   '<input name="nomeacs" type="hidden" value="'.$sNomeAcesso.'">'.
	   '<input name="Bar_NumCam" type="hidden" value="">'.
	   //'<input name="Tel_TipCod" type="hidden" value="'.$n_TipCad.'">'.
	   '<input name="Ite_CodigoL" type="hidden" value="'.$sIte_CodigoL.'">'.
	   '<input name="Ite_CodigoI" type="hidden" value="'.$n_CodCad.'">'.
		'<input name="Bar_CodCad" type="hidden" value="'.$n_CodCad.'">'.
		
		
	   //'<input name="Tel_TipCtt" type="hidden" value="">'.
	   '<input name="Bar_CodBar" type="hidden" value="">'.
	   //'<input name="Tel_Observ" type="hidden" value="">'.
      '</form>'.
   	  '<table width="100%">'.
		   '<tr>'.
   	     '<td width="4px" height="10px" align="left">&nbsp;</td>'.
   	     '<td align="left" width="130px">'.
              '<span style="font-size:14px;">'.
                 'Código de Barras:'.
              '</span>'.
   	     '</td>'.
   	     '<td align="left">'.
		       '<input id="iCadEBar_CodBar" type="text" maxlength="15" style="width:110px; height:22px; background:#FFFBEC; border-width: 1px; border-style: solid; border-color: #0099FF;">'.
   	     '</td>'.
   	     '<td width="4px" align="left">&nbsp;</td>'.
	      '</tr>'.
	      
	  '</table>'.
	  //
   	  '<table width="100%"></tr>'.
       '<td width="180px" height="40px" align="center" valign="middle">'.
        HTML_Botao( 3, 'CadEBar_BT_Adc',"Car_".$sNomeAcesso."4.AdicionaBar();"
                     , 'Adicionar (INS)','images/btimg_novo.png',130).
       '</td>'.
       '<td align="left">'.
       '</td>'.
       '<td width="180px" align="center" valign="middle">'.
        HTML_Botao( 3, 'CadEBar_BT_Rmv',"Car_".$sNomeAcesso."4.CRemoverBar();"
                     , 'Remover (F6)','images/btimg_remover.png',120).
       '</td>'.
      '</tr></table>'.
	  '<div style="position:absolute; top:-1000px; left:-1000px;">'.
	   '<input id="iECadEBar_iLstBar" type="text" maxlength="1" onkeydown="Car_'.$sNomeAcesso.'4.P_TeclasPress_fm(event);">'.
	  '</div>'.
	  $oListaBar->MontaDivHtml().
   	  '<table width="100%"></tr>'.
   	   '<td width="4px" height="40px" align="left">&nbsp;</td>'.
   	   '</td>'.
   	   '<td>'.
   	   '</td>'.
   	   '<td width="120px" align="left">'.
   	    HTML_Botao( 3, 'CadCBar_BT_Fch'   , $oJanelaPrinc->sJavOnClickF
                     , 'Sair (ESC)'       ,'images/btimg_fechar.png').
   	   '</td>'.
   	  '</tr></table>'.
	  $oJanelaPrinc->MontaJanHTML(False);
   //
   $sRet_Javs .=
	  "parent.document.getElementById('".$sNomeIdJ_Ant."_Travar').style.visibility='visible';".
	  "parent.Disabled_In_Elems('".$sNomeIdJ_Ant."',true);".
	  'parent.document.getElementById("dv_MenuL_Barra").style.visibility="hidden";'.
      "var sSelIndiceC='';".
      "function P_Atu() {".
        "sSelIndiceC='';".
	    $oListaBar->MontaJavaAgu().
     	"parent.document.forms.fmPCadBar.acao.value='LISTAR'; ".
     	"parent.document.forms.fmPCadBar.Bar_NumCam.value=nPesq_CampoSel+''; ".
     	"setTimeout( function() { parent.document.forms.fmPCadBar.submit(); }, 100);".
      '}'.
	  'function Pesq_Seleciona() {'.
	    'parent.document.getElementById("'.$sNomeIdCampo.'").value = sSelIndiceC;'.
	    $oJanelaPrinc->sJavOnClickF.
	  '}'.
      $oListaBar->MontaJavaPri().
      //
      "function AdicionaBar() {".
         "var _fm = parent.document.forms.fmPCadBar;".
         "_fm.Bar_CodBar.value=parent.document.getElementById('iCadEBar_CodBar').value; ".
        	//"_fm.Tel_TipCtt.value=parent.document.getElementById('iCadETel_TipCtt').value; ".
         //"_fm.Tel_Observ.value=parent.document.getElementById('iCadETel_Observ').value; ".
         "_fm.acao.value='BAR_ADC'; ".
         "_fm.submit();".
      "}".
      "function RemoverBar() {".
	     "var _fm = parent.document.forms.fmPCadBar;".
         "_fm.Bar_CodBar.value=sSelIndice;".
         //"_fm.Tel_TipCtt.value='';".
         "_fm.acao.value='BAR_RMV'; ".
         "_fm.submit();".
      "}".
      "function CRemoverBar() {".
         "sIdHasFocus='iECadEBar_iLstBar';".
         "parent.Qdr_Prompt_H(true,'Tem certeza que deseja REMOVER este código de barras?',".JAVA_CharCode('if (_NUM_BOT_==1) { Car_'.$sNomeAcesso.'4.RemoverBar(); }').",['Sim','Não']); ".
      "}".
      '';
   // Java posterior
   $sRet_JavsPos .=
	  "P_Atu();".
	  'parent.document.getElementById("iCadEBar_CodBar").focus();'.
	  //
	  "function Teclas_F( Objeto, Evento ) {".
         "vNumTecla = parent.Tecla_Apertada(Evento);".
	     "if ( vNumTecla==116) { ".         // ** [F5] **         Não atualizar
             //
	     "} else if ( vNumTecla==27) { ".   // ** [ESC] **        (SAIR)
             "setTimeout( parent.document.getElementById('CadCBar_BT_Fch').onclick , 100);".
         "} else if ( vNumTecla==13) { ".   // ** [ENTER] **
			 "sAntFocus = parent.sIdHasFocus;".
			 "while (true) {".
			    "sTempId = parent.Proximo_TabObj(parent.document.getElementById('".$oJanelaPrinc->sIdObj."'),sAntFocus);".
			    "if ( sTempId.length>0 ) {".
			        "parent.document.getElementById(sTempId).focus();".
			 	    "if (sTempId == parent.sIdHasFocus ) { break; }".
			 		"sAntFocus=sTempId;".
			    "} else {".
    	            'parent.document.getElementById("iCadEBar_CodBar").focus();'.
			 		'break;'.
			    "}".
			 "}".
             //
	     "} else if ( vNumTecla==45) { ".   // ** [INS] **         Adicionar
             "if ( parent.document.getElementById('CadEBar_BT_Adc').style.display != 'none') {".
                  "setTimeout( parent.document.getElementById('CadEBar_BT_Adc').onclick , 100);".
			    "}".
             //
	     "} else if ( vNumTecla==117) { ".  // ** [F6] **          Remover
             "if ( parent.document.getElementById('CadEBar_BT_Rmv').style.display != 'none') {".
                  "setTimeout( parent.document.getElementById('CadEBar_BT_Rmv').onclick , 100);".
			 "}".
		 "} else {".
	          //"P_TeclasPress_fm(Evento);".
			  //"alert( vNumTecla );".
		      "return true;".
		 "}".
		 "return false;".
	  '}'.
	  "";
}
//
$aSessao['CADBAR_LISTA'] = $a_ListaBar;
//
?>