<?php
session_start();
include('config.php');
include($rutaPhp.$rutaHtml.'/maqueta/includes.php');

include($rutaPhp.$rutaHtml.'/acceso/control.php');
include($rutaPhp.$rutaHtml.'/maqueta/arriba.php');

include($rutaPhp.$rutaHtml.'/librerias/funciones-gs1.php');


$procedencia=$_GET['procedencia'];
$subProcedencia=$_GET['subProcedencia'];



//26-03-2024 esto puede ocurrir en la preinformacion de EAN desde las entradas
if($subProcedencia=='entrada') {
	$esSubprocedenciaEntrada=true;
	$bloquearCliente=true;
	$clientePropietario=$_SESSION['entrada']['ClientePropietario'];
}
else if($subProcedencia=='recepcionCompra') {
	$esSubprocedenciaRecepcionCompra=true;
}


if( $_POST['eanDunInformar'] && $_POST['eanDunInformarCodigo'] ) {

	$eanDunInformar=$_POST['eanDunInformar'];
	$eanDunInformarCodigo=$_POST['eanDunInformarCodigo'];
	$eanDunInformarCliente=$_POST['eanDunInformarCliente'];
	$eanDunInformarDescripcion=$_POST['eanDunInformarDescripcion'];

	//AddEanAProductoDesdeTablet(EMP,Usuario,Producto,EAN,Tipo,Cliente)
	
	//AddEanAProductoDesdeTablet#PXPU#PMO#articulo#ean#cliente
	
	$peticion='AddEanAProductoDesdeTablet#'.$_SESSION['empresa'].'#'.$_SESSION['usuario']['Usuario'].'#'.$eanDunInformarCodigo.'#'.$eanDunInformar.'#'.$eanDunInformarCliente;
	$resultado=PedirDatos($wsUsuario,$wsClave,$wsEmpresa,$peticion);
	
	if($_GET['traza']=='si') {
		echo "<p>".$peticion."</p>";
		print_r($resultado);
	}
	
	$valores=explode('#',$resultado[0]['Error']);
	
	if($valores[0]=='1') {
	
		?>
		<script>
			alert('ERROR: <?php echo $valores[1]; ?>',null,'error')
			.done(function(){
				focoInicial();
			});
		</script>
		<?php
	
	}
	else {
		
		?>
		<script>
			alert('Se ha registrado el EAN <strong><?php echo $eanDunInformar; ?></strong> para el producto:<br><br><strong><?php echo $eanDunInformarCodigo; ?><?php if($eanDunInformarDescripcion) { ?> - <?php echo $eanDunInformarDescripcion; ?><?php } ?></strong>',null,'ok')
			.done(function(){
				<?php if($esSubprocedenciaEntrada) { ?>
					$('#popupCargando').show();
					window.location='entrada-mercancia-gs1.php';
				<?php } else if($esSubprocedenciaRecepcionCompra) { ?>
					$('#popupCargando').show();
					window.location='recepcion-compra.php';
				<?php } else { ?>
					focoInicial();
				<?php } ?>
			});
		</script>
		<?php
	
	}
		
}



//21-11-2024 COMPROBAMOS SI HAY GESTION DE LOTES
$gestionGeneralLotes=false;
foreach($_SESSION['comportamientosGlobales'] as $item) {
	if($item['Codigo']=='LT' && $item['Activo']=='S') $gestionGeneralLotes=true;
}




//17-01-2022
if($procedencia=='traspaso') {
	$esTraspaso=true;
	$contenedorOrigen=$_GET['contenedorOrigen'];
	$contenedorDestino=$_GET['contenedorDestino'];
	
	//echo '<p>esTraspaso: '.$esTraspaso.'</p>';
	//echo '<p>contenedorOrigen: '.$contenedorOrigen.'</p>';
	//echo '<p>contenedorDestino: '.$contenedorDestino.'</p>';
}
else if($procedencia=='ubicacion') {
	$esUbicacion=true;
	$contenedorOrigen=$_GET['contenedorOrigen'];
}
else if($procedencia=='informarEan') {
	$pantallaInformarEAN=true;
}

$gestion=$_SESSION['gestion'];
$busquedaProductoDefecto=$_SESSION['busquedaProductoDefecto'];

$clientePropietario=$_GET['clientePropietario'];
$productoPreCargado=$_GET['producto'];
$lotePreCargado=$_GET['lote'];

if( $productoPreCargado || $clientePropietario ) $esperarCarga=true;

$lecturaEspecial = ( isset( $codigosEspeciales[$clientePropietario] ) );

//////////
//$gestion='PRI';
//$busquedaProductoDefecto='E';
///////////

if($_GET['traza']=='si') {
	echo "<p>Gestión: ".$gestion."</p>";
	echo "<p>Busqueda producto por defecto: ".$busquedaProductoDefecto."</p>";
	echo '<p>Lectura codigos especiales: '.$lecturaEspecial.'</p>';
}





//01-02-2022 procedencia ENTRADA automatizacion
if($procedencia=='entrada') {
	$esEntrada=true;
	$bloquearCliente=true;
	$clientePropietario=$_SESSION['entrada']['ClientePropietario'];
}

//01-02-2022 procedencia INVENTARIO automatizacion
if($procedencia=='inventario') {
	$esInventario=true;
	$bloquearCliente=true;
	$clientePropietario=$_SESSION['inventarioSGA']['inventario']['Cliente'];
}

if($clientePropietario) $esperarCarga=true;

?>
<?php include($rutaPhp.$rutaHtml.'/librerias/teclado.php'); ?>

<h2><?php if($pantallaInformarEAN) { ?>Informar EAN de un<?php } else { ?>Buscar<?php } ?> producto</h2>

<div id="popupBusqueda" class="popup" style="display:none;overflow:scroll">
    <div class="popupContenidoScroll">
    	<div id="detalleBusqueda"></div>
	</div>
</div>

<div id="popupBusquedaCliente" class="popup" style="display:none;overflow:scroll">
    <div class="popupContenidoScroll">
    	<div id="detalleBusquedaCliente"></div>
	</div>
</div>

<?php if( $gestion=='PUBPRI' ) { ?>
<p><input name="productos" type="radio" class="checkGrande" id="productosPropios" style="position:relative;top:6px" value="propios" <?php if(!$clientePropietario) { ?>checked="checked"<?php } ?>/>
 Productos propios <input type="radio" name="productos" id="productosTerceros" value="terceros" class="checkGrande" style="position:relative;top:6px;margin-left:20px;" <?php if($clientePropietario) { ?>checked="checked"<?php } ?>/> Productos de terceros</p>
<?php } ?>

<form id="formularioCodigoCliente" name="formularioCodigoCliente" method="post" action="" <?php if( $gestion!='PUB' && !$clientePropietario ) { ?>style="display:none"<?php } ?>>
	<p>Cliente:<br />
    <?php if(!$bloquearCliente) { ?><img src="<?php echo DIR_IMAGENES; ?>/teclado.png" alt="Mostrar teclado" class="iconoTeclado" id="tecladoCliente" /><?php } ?>
    <input type="text" name="codigoCliente" id="codigoCliente" value="<?php echo $clientePropietario; ?>" class="campo <?php if($bloquearCliente) { ?>deshabilitado<?php } ?>" style="width:350px" autocomplete="off" <?php if($bloquearCliente) { ?>disabled<?php } ?>/>
    <?php if(!$bloquearCliente) { ?><img id="botonBuscarCliente" src="<?php echo DIR_IMAGENES; ?>/buscar.png" style="width:40px;margin-left:-40px;padding-top:10px;padding-left:50px;margin-bottom:-5px" class="clicable"/>
    <img src="<?php echo DIR_IMAGENES; ?>/x.png" alt="Borrar" class="boton-x" id="borrarCliente" style="margin-left:-110px;"/>
    <?php } ?>
    </p>
	<h2 id="nombreCliente" style="display:none;font-weight:bold"></h2>
</form>
<form id="formularioBusquedaCliente" name="formularioBusquedaCliente" method="post" action="" style="display:none">
	<p>Buscar Cliente:<br />
    <img src="<?php echo DIR_IMAGENES; ?>/teclado.png" alt="Mostrar teclado" class="iconoTeclado" id="tecladoBusquedaCliente" />
    <input name="busquedaCliente" type="text" class="campo mayusculas" id="busquedaCliente" size="20" maxlength="" style="width:350px" autocomplete="off"/>
	<img id="botonCodigoCliente" src="<?php echo DIR_IMAGENES; ?>/barcode.png" style="width:40px;margin-left:-40px;padding-top:10px;padding-left:50px;margin-bottom:-5px" class="clicable"/>
	<img src="<?php echo DIR_IMAGENES; ?>/x.png" alt="Borrar" class="boton-x" id="borrarBusquedaCliente" style="margin-left:-110px;"/>
    </p>
</form>

<form id="formularioEanDun" name="formularioEanDun" method="post" action="" <?php if( $gestion=='PUB' || ($gestion=='PUBPRI' && $busquedaProductoDefecto!='E') || ($gestion=='PRI' && $busquedaProductoDefecto!='E') || $productoPreCargado || $pantallaInformarEAN ) { ?>style="display:none"<?php } ?>>
	<p><span id="etiquetaEanDun">Código<?php if(!$lecturaEspecial) { ?> EAN/DUN<?php } ?>:</span><br />
	<img src="<?php echo DIR_IMAGENES; ?>/teclado.png" alt="Mostrar teclado" class="iconoTeclado" id="tecladoEanDun" />
    <input name="eanDun" type="text" class="campo mayusculas" id="eanDun" style="width:<?php if($lecturaEspecial) { ?>650px<?php } else { ?>350px<?php } ?>" autocomplete="off"/>
	<img id="botonBusquedaProducto" src="<?php echo DIR_IMAGENES; ?>/buscar.png" style="width:40px;margin-left:-40px;padding-top:10px;padding-left:50px;margin-bottom:-5px" class="botonBuscarProducto clicable"/>
	<img src="<?php echo DIR_IMAGENES; ?>/x.png" alt="Borrar" class="boton-x" id="borrarEanDun" style="margin-left:-110px;"/></p>      
</form>
    
<form id="formularioBusquedaProducto" name="formularioBusquedaProducto" method="post" action="" <?php if( ( $gestion=='PUB' || ($gestion=='PUBPRI' && $busquedaProductoDefecto!='B') || ($gestion=='PRI' && $busquedaProductoDefecto!='B') || $productoPreCargado ) && !$pantallaInformarEAN ) { ?>style="display:none"<?php } ?>>
	<p>Buscar producto:<br />
	<img src="<?php echo DIR_IMAGENES; ?>/teclado.png" alt="Mostrar teclado" class="iconoTeclado" id="tecladoBusquedaProducto" style="<?php if($pantallaInformarEAN) { ?>margin-left:-66px<?php } ?>"/>
    <input name="busquedaProducto" type="text" class="campo mayusculas" id="busquedaProducto" size="20" maxlength="" style="width:350px;" autocomplete="off"/>
	<?php if(!$pantallaInformarEAN) { ?>
    <img id="botonEanDunProducto" src="<?php echo DIR_IMAGENES; ?>/barcode.png" style="width:40px;margin-left:-40px;padding-top:10px;padding-left:50px;margin-bottom:-5px" class="clicable"/>
    <?php } ?>
	<img src="<?php echo DIR_IMAGENES; ?>/x.png" alt="Borrar" class="boton-x" id="borrarBusquedaProducto" style="margin-left:<?php if($pantallaInformarEAN) { ?>-55px<?php } else { ?>-110px<?php } ?>;"/>
	</p>
</form>

<form id="formularioCodigoProducto" name="formularioCodigoProducto" method="post" action="" <?php if( $gestion!='PRI' ) { ?>style="display:none"<?php } ?>>
	
    <p>Producto:<br />
	<img src="<?php echo DIR_IMAGENES; ?>/teclado.png" alt="Mostrar teclado" class="iconoTeclado" id="tecladoCodigoProducto" />
    <input type="text" name="codigoProducto" id="codigoProducto" value="<?php echo $productoPreCargado; ?>" class="campo" style="width:350px" autocomplete="off"/>
    <img src="<?php echo DIR_IMAGENES; ?>/x.png" alt="Borrar" class="boton-x" id="borrarCodigoProducto" style="margin-left:-55px;"/></p>
    
    <?php if( $gestionGeneralLotes && !$pantallaInformarEAN ) { ?>
    
    <p>Lote:<br />
    <img src="<?php echo DIR_IMAGENES; ?>/teclado.png" alt="Mostrar teclado" class="iconoTeclado" id="tecladoLote" /><input type="text" name="lote" id="lote" value="<?php echo $lotePreCargado; ?>" class="campo" style="width:350px" autocomplete="off"/>
    <img src="<?php echo DIR_IMAGENES; ?>/x.png" alt="Borrar" class="boton-x" id="borrarLote" style="margin-left:-55px;"/></p>

	<?php } ?>
    
</form>



<?php if( $esTraspaso || $esUbicacion || $esEntrada || $esInventario || $esSubprocedenciaEntrada || $esSubprocedenciaRecepcionCompra ) { ?>
<p><input name="botonVolver" id="botonVolver" type="button" class="boton reducido" value="Volver a la pantalla <?php if($esTraspaso) { ?>Traspaso<?php } else if($esUbicacion) { ?>Ubicación<?php } else if($esEntrada || $esSubprocedenciaEntrada) { ?>Entrada de mercancía<?php } else if($esInventario) { ?>Inventario<?php } else if($esSubprocedenciaRecepcionCompra) { ?>Recepción de compra<?php } ?>"/><p>
<?php } ?>

<div id="listaUbicaciones">
</div>

<div id="eanDunInformarBloque" style="display:none">

    <form id="eanDunInformarFormulario" name="eanDunInformarFormulario" method="post" action="">
    
        <p>Informar EAN:<br />
        <img src="<?php echo DIR_IMAGENES; ?>/teclado.png" alt="Mostrar teclado" class="iconoTeclado" id="eanDunInformarTeclado" />
        <input name="eanDunInformar" type="text" class="campo mayusculas" id="eanDunInformar" style="width:350px" autocomplete="off"/>
        <img src="<?php echo DIR_IMAGENES; ?>/x.png" alt="Borrar" class="boton-x" id="eanDunInformarBorrar" style="margin-left:-55px;"/></p>  
        
        <input type="hidden" id="eanDunInformarCliente" name="eanDunInformarCliente" value="" />
        <input type="hidden" id="eanDunInformarCodigo" name="eanDunInformarCodigo" value="" />
        <input type="hidden" id="eanDunInformarDescripcion" name="eanDunInformarDescripcion" value="" />   
          
    </form>

</div>

<script>


function carga(producto,Descripcion,EmbalajePrimarioCaja,TieneGestionFCaducidad,TieneGestionLotes,TieneGestionNSerie,PosicionPicking,TieneGestionPrecinta,Decimales,UMint) {

	if(producto) {
	
		$('#popupCargando').show();
	
		<?php if($esEntrada) { ?>
		
		window.location='entrada-mercancia-gs1.php?automatizarProducto='+producto;
		
		<?php } else if($esInventario) { ?>
		
		window.location='inventario-sga.php?automatizarProducto='+producto+'&Descripcion='+Descripcion+'&TieneGestionFCaducidad='+TieneGestionFCaducidad+'&TieneGestionLotes='+TieneGestionLotes+'&TieneGestionNSerie='+TieneGestionNSerie+'&TieneGestionPrecinta='+TieneGestionPrecinta+'&EmbalajePrimarioCaja='+EmbalajePrimarioCaja+'&Decimales='+Decimales+'&UMint='+UMint;
		
		<?php } else { ?>
	
		$("#formularioCodigoProducto").show();
		$("#codigoProducto").val(producto);
	
		if($('#productosPropios').is(':checked')) clientePropietario='PROPIO';
		else clientePropietario=$('#codigoCliente').val();
		
		console.log('/contenidos/cargar-ubicaciones-producto-S.php');
		console.log('producto: '+$('#codigoProducto').val());
		console.log('lote: '+$('#lote').val());
		console.log('clientePropietario: '+clientePropietario);
			
		
		//$.post( '<?php echo $rutaHtml; ?>/contenidos/cargar-ubicaciones-producto-S.php?producto='+$('#codigoProducto').val()+'&lote='+$('#lote').val()+'&clientePropietario='+clientePropietario+'&traza=<?php echo $_GET['traza']; ?>', { })
		//$.post('contenidos/cargar-ubicaciones-producto-S2.php?producto=16.9999.1&lote=&clientePropietario=9999&traza=')
		$.post( "<?php echo $rutaHtml; ?>/contenidos/cargar-ubicaciones-producto-S.php?traza=<?php echo $_GET['traza']; ?>", { producto : $('#codigoProducto').val() , 'lote' : $('#lote').val() , 'clientePropietario' : clientePropietario , <?php if($pantallaInformarEAN) { ?>ocultarDetalleAlmacen : true<?php } ?> })
		.done(function(data) {
		
			<?php if($esTraspaso || $esUbicacion || $esSubprocedenciaEntrada || $esSubprocedenciaRecepcionCompra) { ?>
			data+='<p><input name="botonVolver" id="botonVolver" type="button" class="boton reducido" value="Volver a la pantalla de <?php if($esTraspaso) { ?>Traspaso<?php } else if($esUbicacion) { ?>Ubicación<?php } else if($esEntrada  || $esSubprocedenciaEntrada) { ?>Entrada de mercancía<?php } else if($esSubprocedenciaRecepcionCompra) { ?>Recepción de compra<?php } ?>"/><p>';
			<?php } ?>
			
			$('#listaUbicaciones').html(data);
			
			console.log('Se carga toda la info del producto');
			
			<?php if($pantallaInformarEAN) { ?>
			
				console.log('Es pantalla de informar EAN, se muestra el form');
			
				if(clientePropietario!='PROPIO') $('#eanDunInformarCliente').val( clientePropietario );
				$('#eanDunInformarCodigo').val( $('#codigoProducto').val() );
				$('#eanDunInformarDescripcion').val( $('#descripcion').val() );
			
				$('#eanDunInformarBloque').show();
				$('#eanDunInformar').focus();
			
			<?php } ?>
			
			$('#popupCargando').hide();
			
		});
		
		<?php } ?>
		
	}

}

function reinicia(todoIncluidoCliente) {
	
	//Reiniciar todos los campos de la ficha
	
	<?php if( $gestion=='PUB' || $gestion=='PUBPRI' ) { ?>
	
	if(todoIncluidoCliente) {
	
		$('#codigoCliente').val('');
		$('#busquedaCliente').val('');
		$('#nombreCliente').html('');
		$('#nombreCliente').hide();
		
		$('#formularioEanDun').hide();
		$('#formularioBusquedaProducto').hide();
		$('#formularioCodigoProducto').hide();
		
		$('#lote').val('');
		
		$('#codigoCliente').focus();
	}
	
	<?php } ?>
	
	$('#eanDun').val('');
	$('#codigoProducto').val('');
	$('#busquedaProducto').val('');
	
	$('#lote').val('');
	
	$("#listaUbicaciones").empty();
	
	<?php if($pantallaInformarEAN) { ?>
	
	$('#formularioEanDun').hide();
	$('#formularioBusquedaProducto').show();
	
	<?php } ?>
	
}

function focoInicial() {

	//Focos iniciales
	<?php if($gestion=='PRI' || $gestion=='PUBPRI') { ?>
		<?php if($busquedaProductoDefecto=='E' && !$pantallaInformarEAN) { ?>
		$('#eanDun').focus();
		<?php } else { ?>
		$('#busquedaProducto').focus();
		<?php } ?>
	<?php } else { ?>
		$('#codigoCliente').focus();
	<?php } ?>
	
}

$(document).ready(function() {

	

	<?php if($clientePropietario) { ?>
	
		$('#popupCargando').show();
		
		$.post( "<?php echo $rutaHtml; ?>/contenidos/cargar-cliente-propietario.php", { 'codigo' : '<?php echo $clientePropietario; ?>' } )
			.done(function(data) {
			
				var datos=data.split('#');
				
				$('#nombreCliente').html( datos[1] );
				$('#nombreCliente').show();
				
				<?php if($busquedaProductoDefecto=='E' && !$productoPreCargado && !$pantallaInformarEAN) { ?>
					$('#formularioEanDun').show();
					$('#eanDun').focus();
				<?php } else if(!$productoPreCargado) { ?>
					$('#formularioBusquedaProducto').show();
					$('#busquedaProducto').focus();
				<?php } ?>
				
				if(datos[2]==1) { //Cliente con codigos lectura especial
					$('#etiquetaEanDun').html('Código:');
					$('#eanDun').css('width','650px');
				}
				else {
					$('#etiquetaEanDun').html('Código EAN/DUN:');
					$('#eanDun').css('width','350px');
				}
				
				$('#formularioCodigoProducto').show();
				
				<?php if(!$productoPreCargado) { ?>
				$('#popupCargando').hide();
				<?php } ?>
			});
	<?php } ?>
	
	
	<?php if( $gestion=='PUBPRI' ) { ?>
	
	$('#productosPropios').on("click",function(){
		
		reinicia(true);
		$('#formularioCodigoCliente').hide();
		$('#eanDunInformarBloque').hide();
		
		<?php if($busquedaProductoDefecto=='E' && !$pantallaInformarEAN) { ?>
				$('#formularioEanDun').show();
				$('#formularioBusquedaProducto').hide();
				$('#eanDun').focus();
		<?php } else { ?>
				$('#formularioEanDun').hide();
				$('#formularioBusquedaProducto').show();
				$('#busquedaProducto').focus();
		<?php } ?>
	});
	
	$('#productosTerceros').on("click",function(){
	
		reinicia(true);
		$('#eanDunInformarBloque').hide();
		
		$('#formularioEanDun').hide();
		$('#formularioBusquedaProducto').hide();
		
		$('#formularioCodigoCliente').show();
		$('#codigoCliente').focus();
		
	});
	
	<?php } ?>
	
	
	
	<?php if( $gestion=='PUB' || $gestion=='PUBPRI' ) { ?>
	
	$('#botonBuscarCliente').on("click",function(){
		reinicia(true);
		$('#formularioCodigoCliente').hide();
		$('#formularioBusquedaCliente').show();
		$('#busquedaCliente').focus();
		$('#tecladoBusquedaCliente').click();			
	});
	
	$('#botonCodigoCliente').on("click",function(){
		reinicia(true);	
		$('#formularioCodigoCliente').show();
		$('#formularioBusquedaCliente').hide();
		$('#cliente').focus();			
	});
	
	$('#tecladoCliente').on("click",function(){
		$('#teclado').show();
		$('#valor').val( $('#codigoCliente').val() );
		$('#valorOculto').val( $('#codigoCliente').val() );
		$('#enter').attr('campoValor','codigoCliente');
		$('#enter').attr('formulario','formularioCodigoCliente');
	});
	
	$('#borrarCliente').on("click",function(){
		reinicia(true);
		$("#cliente").val('');
		$("#cliente").focus();
	});
	
	$('#formularioCodigoCliente').on("submit",function(e){
		//alert('codigo cliente: '+$('#codigoCliente').val());
		e.preventDefault();
		
		reinicia();
		
		if( $('#codigoCliente').val()!='' ) {
				
			$('#popupCargando').show();
			
			$.post( "<?php echo $rutaHtml; ?>/contenidos/cargar-cliente-propietario.php?traza=<?php echo $_GET['traza']; ?>", { 'codigo' : $('#codigoCliente').val() } )
			.done(function(data) {
			
				$('#popupCargando').hide();
				
				var datos=data.split('#');
				
				if(datos[0]=='Error') {
				
					alert(datos[1],$('#codigoCliente'),'error');
				}
				else {
				
					$('#nombreCliente').html( datos[1] );
					$('#nombreCliente').show();
					
					<?php if($busquedaProductoDefecto=='E' && !$pantallaInformarEAN) { ?>
						$('#formularioEanDun').show();
						$('#eanDun').focus();
					<?php } else { ?>
						$('#formularioBusquedaProducto').show();
						$('#busquedaProducto').focus();
					<?php } ?>
					
					if(datos[2]==1) { //Cliente con codigos lectura especial
						$('#etiquetaEanDun').html('Código:');
						$('#eanDun').css('width','650px');
					}
					else {
						$('#etiquetaEanDun').html('Código EAN/DUN:');
						$('#eanDun').css('width','350px');
					}
					
					$('#formularioCodigoProducto').show();
				
				}
				
			});
				
		}
					
	});
	
	$('#tecladoBusquedaCliente').on("click",function(){
		
		$('#teclado').show();
		$('#valor').val( $('#busquedaCliente').val() );
		$('#valorOculto').val( $('#busquedaCliente').val() );
		$('#enter').attr('campoValor','busquedaCliente');
		$('#enter').attr('formulario','formularioBusquedaCliente');
		
	});
	
	$('#busquedaCliente').on("click",function(){
		
		$('#teclado').show();
		$('#valor').val( $('#busquedaCliente').val() );
		$('#valorOculto').val( $('#busquedaCliente').val() );
		$('#enter').attr('campoValor','busquedaCliente');
		$('#enter').attr('formulario','formularioBusquedaCliente');
			
	});
	
	$('#borrarBusquedaCliente').on("click",function(){
		
		$("#busquedaCliente").val('');
		$("#busquedaCliente").focus();
		
	});
	
	$('#formularioBusquedaCliente').on("submit",function(e){
				
		e.preventDefault();
		reinicia();
		
		if( $('#busquedaCliente').val()!='' ) {
				
			$('#popupCargando').show();
						
			$.post( "<?php echo $rutaHtml; ?>/contenidos/inventario-buscar-cliente.php?traza=<?php echo $_GET['traza']; ?>", { 'cadena' : $('#busquedaCliente').val() , 'busquedaProductoDefecto' : '<?php echo $busquedaProductoDefecto; ?>' })
			.done(function(data) {
				
				$('#popupCargando').hide();
				$('#popupBusquedaCliente').show();
				$('#detalleBusquedaCliente').html(data);
				
			});
				
		}
					
	});
	
	<?php } ?>
	

	////////////// BUSCAR POR EANDUN ////////////////////
	
	$('#formularioEanDun').on("submit",function(e){

		e.preventDefault();
			
		if( $('#eanDun').val()!='' ) {
				
			$('#popupCargando').show();
					
			$.post( "<?php echo $rutaHtml; ?>/contenidos/leer-codigo-barras.php?traza=<?php echo $_GET['traza']; ?>", { 'codigo' : $('#eanDun').val() , 'clientePropietario' : $('#codigoCliente').val() , 'procedencia' : 'info-producto-S' } )
			.done(function(data) {
					
				var datos=data.split('#');
							
				if( datos[0] ) {
				
					if( datos[0].substr(0,12)=='@@MULTIPLE@@' ) {
					
						//////// LLAMADA AL MISMO METODO QUE HACE LA BUSQUEDA, PERO PASANDO LOS PARAMETROS COMO CADENA DE RESULTADOS DE LA LLAMADA DE ANTES
					
						$.post( "<?php echo $rutaHtml; ?>/contenidos/inventario-buscar-producto.php?traza=<?php echo $_GET['traza']; ?>", { 'resultadoPreviamenteObtenido' : data , 'eanDun' : $('#eanDun').val() })
						.done(function(data) {
								
							$('#popupCargando').hide();
							$('#popupBusqueda').show();
							$('#detalleBusqueda').html(data);
								
						});
					
						//$('#popupCargando').hide();
						//alert(datos);
					
					}
					else {
						
						$('#formularioCodigoProducto').show();
						$('#codigoProducto').val(datos[0]);
						$("#formularioCodigoProducto").submit();
						
					}
				}
				else {
					alert("ERROR: No se ha encontrado ningún producto relacionado con ese código.",$('#codigo'),'error');
					$('#codigoProducto').val('');
					$('#popupCargando').hide();
				}
					
			});
				
		}
					
	});
	
	$('#tecladoEanDun').on("click",function(){
		
		$('#teclado').show();
		$('#valor').val( $('#eanDun').val() );
		$('#valorOculto').val( $('#eanDun').val() );
		$('#enter').attr('campoValor','eanDun');
		$('#enter').attr('formulario','formularioEanDun');
		
	});
	
	$('#borrarEanDun').on("click",function(){
		
		$("#eanDun").val('');
		reinicia();
		$("#eanDun").focus();
		
	});
	
	$('#botonBusquedaProducto').on("click",function(){
			
		reinicia();
		
		$('#formularioEanDun').hide();
		
		$('#formularioBusquedaProducto').show();
		$('#busquedaProducto').focus();
		$('#tecladoBusquedaProducto').click();
					
	});
	
	
	//////////// BUSQUEDA PRODUCTO //////////////
	
	$('#formularioBusquedaProducto').on("submit",function(e){
				
		e.preventDefault();
		
		if( $('#busqueda').val()!='' ) {
				
			$('#popupCargando').show();
			
			var clientePropietario;
			
			if($('#productosPropios').is(':checked')) clientePropietario='PROPIO';
			else clientePropietario=$('#codigoCliente').val();
						
			$.post( "<?php echo $rutaHtml; ?>/contenidos/inventario-buscar-producto.php?traza=<?php echo $_GET['traza']; ?>", { 'cadena' : $('#busquedaProducto').val() , 'clientePropietario' : clientePropietario })
			.done(function(data) {
				
				$('#popupCargando').hide();
				$('#popupBusqueda').show();
				$('#detalleBusqueda').html(data);
				
			});
				
		}
					
	});
	
	$('#tecladoBusquedaProducto').on("click",function(){
		
		$('#teclado').show();
		$('#valor').val( $('#busquedaProducto').val() );
		$('#valorOculto').val( $('#busquedaProducto').val() );
		$('#enter').attr('campoValor','busquedaProducto');
		$('#enter').attr('formulario','formularioBusquedaProducto');
		
	});
	
	$('#busquedaProducto').on("click",function(){
		
		$('#teclado').show();
		$('#valor').val( $('#busquedaProducto').val() );
		$('#valorOculto').val( $('#busquedaProducto').val() );
		$('#enter').attr('campoValor','busquedaProducto');
		$('#enter').attr('formulario','tecladoBusquedaProducto');
		
	});
	
	$('#borrarBusquedaProducto').on("click",function(){
				
		$("#busquedaProducto").val('');
		$("#busquedaProducto").focus();
		reinicia();
					
	});
	
	$('#botonEanDunProducto').on("click",function(){
			
		reinicia();	
		$('#formularioEanDun').show();
		$('#eanDun').focus();
		$('#formularioBusquedaProducto').hide();
					
	});
	
	
	
	
	
	//////////////////// CODIGO PRODUCTO

	$('#formularioCodigoProducto').on("submit",function(e){
		e.preventDefault();
		carga( $("#codigoProducto").val() );
	});
	
	$('#borrarCodigoProducto').on("click",function(){
		
		$("#codigoProducto").val('');
		reinicia();
		$("#codigoProducto").focus();
		
	});
	
	$('#tecladoCodigoProducto').on("click",function(){
		
		$('#teclado').show();
		$('#valor').val( $('#codigoProducto').val() );
		$('#valorOculto').val( $('#codigoProducto').val() );
		$('#enter').attr('campoValor','codigoProducto');
		$('#enter').attr('formulario','formularioCodigoProducto');
		
	});
	
	$('#codigoProducto').on("click",function(){
		
		$('#teclado').show();
		$('#valor').val( $('#codigoProducto').val() );
		$('#valorOculto').val( $('#codigoProducto').val() );
		$('#enter').attr('campoValor','codigoProducto');
		$('#enter').attr('formulario','formularioCodigoProducto');
			
	});
	
	
	
	//////// LOTE
	
	$('#borrarLote').on("click",function(e){
		
		$("#lote").val('');
		carga( $("#codigoProducto").val() );
		
	});
	
	$('#tecladoLote').on("click",function(){
		
		$('#teclado').show();
		$('#valor').val( $('#lote').val() );
		$('#valorOculto').val( $('#lote').val() );
		$('#enter').attr('campoValor','lote');
		$('#enter').attr('formulario','formularioCodigoProducto');
		
	});
	
	$('#lote').on('change',function(e){
		e.preventDefault();
		carga( $("#codigoProducto").val() );
	});

	
	
	$('#popupBusqueda').on("click",function(){
		$('#popupBusqueda').hide();
	});
	
	if($("#codigoProducto").val()!='') {
		carga( $("#codigoProducto").val() );
	}





	<?php if($pantallaInformarEAN) { // SI SE PUEDE INFORMAR EAN  ?>
	
		$('#eanDunInformarTeclado').on("click",function(){
			
			$('#teclado').show();
			$('#valor').val( $('#eanDunInformar').val() );
			$('#valorOculto').val( $('#eanDunInformar').val() );
			$('#enter').attr('campoValor','eanDunInformar');
			$('#enter').attr('formulario','eanDunInformarFormulario');
			
		});
		
		$('#eanDunInformarBorrar').on("click",function(){
			
			$("#eanDunInformar").val('');
			$("#eanDunInformar").focus();
			
			reiniciaVariables();
			
		});
		
		
		
		
		
	
	
		///////////////// METODOS PARA LA LECTURA GS1 POR SCANNER O MANUAL
		
		
		
		<?php if($desactivaScannerBluetooth) { ?>
		
			$('#eanDunInformar').on("change",function(){
				
				$('#popupCargando').show();
				$("#eanDunInformarFormulario").submit();
				
			});
		
		<?php } else { ?>
		
			$('#eanDunInformarFormulario').on('submit',function(){
				$('#popupCargando').show();
			});
		
			function EANDUNvalido(cadena) {
			
				var resultado='';
				const regex = /^[0-9]*$/;
			
				cadena=cadena.replace('(','');
				cadena=cadena.replace(')','');
				
				if( (cadena.length==13 || cadena.length==14) && regex.test(cadena) ) resultado=cadena;
				
				return resultado;
			
			}
		
			function extraeGTINdeGs1(cadenaGs1) {
				
				var resultado='';
				var posicion=cadenaGs1.indexOf('(02)');
				
				if(posicion>=0) {
				
					console.log('GTIN 02 encontrado');
					
					var valores=cadenaGs1.split('(02)');
					resultado=valores[1].substring(0,14);
				
				}
				else {
				
					posicion=cadenaGs1.indexOf('(01)');
					
					if(posicion>=0) {
					
						console.log('GTIN 01 encontrado');
						
						var valores=cadenaGs1.split('(01)');
						resultado=valores[1].substring(0,14);
					
					}
					else {
					
						console.log('No se ha encontrado GTIN en la cadena '+cadenaGs1);
					
						resultado=cadenaGs1;
					
					}
				}
				
				return resultado;
				
			}
	
			$("#eanDunInformar").on('keydown',function(e){
			
				e.preventDefault();
				var resultado='';
				
				//console.log(e.which);
				//console.log(e.key);
				
				if(e.which==13 || e.key=='Enter') {
					console.log('Se procede a hacer un trigger change');
					$('#eanDunInformar').trigger('change');
				}
				else {
					console.log('Pulsacion de scanner');
					lecturaScanner.push( [ String.fromCharCode(e.which) , e.which , e.key ] );
				}
			}); 
	
			$('#eanDunInformar').on('change',function(){
			
				console.log('INICIO PROCESO CAMBIO EN LECTURA CAMPO GS1');
						
				//Método que detecta que se ha hecho una nueva lectura.
				//tenemos que comprobar si procede del scanner o procede del teclado emergente
				
				
				var lecturaFinal='';
				
				<?php //if( ($desactivaScannerBluetooth || $lecturaEspecial) && !$lecturaSinSeparadores ) { ?>
				<?php if( $desactivaScannerBluetooth && !$lecturaSinSeparadores ) { ?>
				
					console.log('Escanner desactivado o lectura especial');
					console.log('Llamamos al método transformaLecturaManualAlFormatoScanner con el valor: '+$('#eanDunInformar').val());
					
					lecturaFinal=transformaLecturaManualAlFormatoScanner( $('#eanDunInformar').val() );
					
					console.log('lecturaFinal: '+lecturaFinal);
				
				<?php } else if($lecturaSinSeparadores) { ?>
				
					console.log('Lectura de códigos gs1 sin pulsaciones separadoras, o lectura manual sin paréntesis');
					
					if( $('#eanDunInformar').val().indexOf('(')!=-1 ) { 
					
						console.log('Excepción: lectura manual sin paréntesis');
						
						lecturaFinal=transformaLecturaManualAlFormatoScanner( $('#lecturaGS1').val() );
						
					}
					else {
					
						<?php if($caracterSeparadorGs1){ ?>
						
						lecturaFinal=extraeBloquesSinSeparadorCaracterSeparador( $('#eanDunInformar').val() , <?php echo $caracterSeparadorGs1; ?> );
						
						<?php } else { ?>
						
						lecturaFinal=extraeBloquesSinSeparador( $('#eanDunInformar').val() );
						
						<?php } ?>
					
					}

					
				<?php } else { ?>
				
					console.log('Lectura gs1 aparentemente normal sin excepciones');
				
					
				
					if(lecturaScanner.length > 0) {
						console.log('Lectura detectada desde scanner.');
						lecturaFinal=limpiaLecturaDesdeScanner( lecturaScanner );
					}
					else {
						console.log('Lectura manual detectada.');
						//lecturaFinal=transformaLecturaManualAlFormatoScanner( $('#lecturaGS1').val() );
					}
					
					
		
				<?php } ?>
				
				console.log('lecturaFinal SCRIPT PADRE: '+lecturaFinal);
				
				var resultado=pintaLecturaHumana( lecturaFinal );
				
				console.log('lecturaFinal: '+lecturaFinal + ' > resultado: ' + resultado);
				
			
				
				if(resultado=='error')  {
					
					
					console.log('>>>>>>>>>>>>  La lectural final da error, por lo que NO ES GS1-128');
					
					<?php if($lecturaEspecial) { ?>
					
						console.log('>>>>>>>>>>>> Tiene lectura especial');
					
						var valorFinalGTIN=EANDUNvalido(extraeGTINdeGs1(lecturaFinal) );
						
						if(valorFinalGTIN!='') {
							$('#eanDunInformar').val( valorFinalGTIN );
							$('#eanDunInformarFormulario').submit();
						}
					
						
					
					<?php } else { ?>
					
						<?php if($desactivaScannerBluetooth) { ?>
						
							console.log('>>>>>>>>>>>> Está desactivado el scanner');
						
							var mostrarLectura=lecturaFinal;
						
						<?php } else { ?>
						
							console.log('>>>>>>>>>>>> Está ACTIVADO el scanner. longitud de la lectura: '+lecturaScanner.length);
							
							if(lecturaScanner.length==0) { //esta activado, pero no se ha escaneado nada --> se ha puesto a mano
							
								var mostrarLectura=lecturaFinal;
							
							}
							else {
						
								var mostrarLectura=limpiaLecturaDesdeScannerNoGS1(lecturaScanner); //28-02-2024 se detecta que si se introduce manualmente, peta porque lecturaScanner está vacio
								//var mostrarLectura=limpiaLecturaDesdeScannerNoGS1(lecturaFinal);     //más arriba, se comprueba si es por scanner o es manual y se graba en lecturaFinal, que es el valor correcto
								
							}
						
						<?php } ?>
						
						var valorFinalGTIN=EANDUNvalido(extraeGTINdeGs1(mostrarLectura) );
						
						if(valorFinalGTIN!='') {
							$('#eanDunInformar').val( valorFinalGTIN );
							$('#eanDunInformarFormulario').submit();
						}
						
						
					
					<?php } ?>
					
					
				}
				else { //No hay error
				
					var valorFinalGTIN=EANDUNvalido(extraeGTINdeGs1(resultado) );
						
					if(valorFinalGTIN!='') {
						$('#eanDunInformar').val( valorFinalGTIN );
						$('#eanDunInformarFormulario').submit();
					}

				}
				
				reiniciaVariables();

			});
		
		<?php } //Fin si está activo scanner?>

	<?php } // FIN SI SE PUEDE INFORMAR EAN ?>


	focoInicial();

	
	//17-01-2021
	<?php if($esTraspaso || $esUbicacion || $esEntrada || $esSubprocedenciaEntrada || $esInventario || $esSubprocedenciaRecepcionCompra ) { ?>
	
	$(document).on('click','#botonVolver',function(){
	
		$('#popupCargando').show();
		
		<?php if($esTraspaso) { ?>
		window.location='traspasar-productos.php?contenedorOrigen=<?php echo $contenedorOrigen; ?>&contenedorDestino=<?php echo $contenedorDestino; ?>';
		<?php } ?>
		
		<?php if($esUbicacion) { ?>
		window.location='ubicar-contenedor.php?contenedor=<?php echo $contenedorOrigen; ?>';
		<?php } ?>
		
		<?php if($esEntrada || $esSubprocedenciaEntrada) { ?>
		window.location='entrada-mercancia-gs1.php';
		<?php } ?>
		
		<?php if($esInventario) { ?>
		window.location='inventario-sga.php';
		<?php } ?>
		
		<?php if($esSubprocedenciaRecepcionCompra) { ?>
		window.location='recepcion-compra.php';
		<?php } ?>
		
	});
	
	<?php } ?>
});


<?php if($pantallaInformarEAN && !$desactivaScannerBluetooth) { ?>

	//DEFINICION GLOBAL DE LAS VARIABLES PARA LECTURAS GS1
	
	var lecturaScanner=new Array();
	var cadenaLectura='';
	var esLecturaGS1Correcta=false;
	
	function reiniciaVariables() {
		lecturaScanner=new Array();
		cadenaLectura='';
		esLecturaGS1Correcta=false;
	}

<?php } ?>

</script>

<?php
include($rutaPhp.$rutaHtml.'/maqueta/abajo.php');
?>
