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

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

$noConectar=true;
$esPantallaOP=true;
include($rutaPhp.$rutaHtml.'/maqueta/arriba.php');

include($rutaPhp.$rutaHtml.'/librerias/teclado.php');
include($rutaPhp.$rutaHtml.'/librerias/calculadora.php');




//Borramos la secuencia de cajas del popup de carga en bloque
unset($_SESSION['preparacionSecuenciaCajasActuales']);


if($_GET['traza']=='si') {
	echo "<p>Modos lectura:</p>";
	print_r($_SESSION['modosLectura']);
	echo "<p>Modo lectura por defecto:</p>";
	print_r($_SESSION['modoLecturaPorDefecto']);
	
	// 1= Ubicacion + Lote/EAN
	// 2= Lote/EAN + Ubicacion
}



//print_r($_SESSION['orden']);

if($_POST['esCierre']) {


	
		$cadenaEnvio='';

		$cadenaEnvio.='*PXTmpCierreSGAOrden'.PHP_EOL;
		$cadenaEnvio.='Empresa='.$_SESSION['orden']['Empresa'].PHP_EOL;
		$cadenaEnvio.='Orden='.$_SESSION['orden']['OrdenPreparacion'].PHP_EOL;
		$cadenaEnvio.='Usuario='.$_SESSION['usuario']['Usuario'].PHP_EOL;
		
		foreach(arreglaArrayPXMobileProxiumResult($_SESSION['orden']['DatosCierre']) as $datoCierre) {
		
			$cadenaEnvio.='*PXTmpCierreSGAOrdenCampos'.PHP_EOL;
			$cadenaEnvio.='NumCampo='.$datoCierre['NumCampo'].PHP_EOL;
			$cadenaEnvio.='Valor='.$_POST['campoCierre-'.$datoCierre['NumCampo']].PHP_EOL;
			
		}
		$cadenaEnvio.='*FIN'.PHP_EOL;
	
		$resultado=EnviarDatos($wsUsuario,$wsClave,base64_encode(utf8_decode($cadenaEnvio)));
		
		if($_GET['traza']=='si') {
			echo nl2br($cadenaEnvio);
			echo "<p>RESULTADO OBTENIDO</p>";
			print_r($resultado['EnviarDatosResult']);
		}
		
		$resultadoEvaluar=explode("#",$resultado['EnviarDatosResult']);
		
		if($resultadoEvaluar[0]=='1') {
			
			include($rutaPhp.$rutaHtml.'/bdd/conectar.php');
			
			$temp=$conexionBdd->prepare("UPDATE ".$mysqlPrefix."Preparacion SET Cerrada=now() WHERE NOrden=? AND Abierta>'0000-00-00' AND Cerrada='0000-00-00' AND Usuario=?");
			$temp->execute(array($_SESSION['orden']['OrdenPreparacion'],$_SESSION['usuario']['Usuario']));
			
			include($rutaPhp.$rutaHtml.'/bdd/desconectar.php');
			
			?>
			<script>
				alert("Cierre realizado correctamente.").done( function(){
					$('#popupCargando').show();
					window.location="<?php echo $rutaHtml; ?>/ordenes-preparacion.php";
				});
			</script>
			<?php
		}
		else {
			?><script>alert('Error en el cierre: <?php echo str_replace(chr(10),'<br>',$resultadoEvaluar[1]); ?>');</script><?php
		}


} // Fin si es cierre

?>
<h2>Orden de Preparación Nº <?php echo $_SESSION['orden']['OrdenPreparacion']; ?></h2>

<?php
if($_SESSION['gestionPaletizado']=='N' && $_SESSION['parametrosSGA']['GestionPackingList']=='S' && $_SESSION['orden']['RequierePackingList']=='S') {
	?><p class="mini" id="mensajeAsociacionPacking"><?php if($_SESSION['orden']['PackingList']) { ?>Esta orden de preparación está asociada al <strong>Packing List <?php echo $_SESSION['orden']['PackingList']; ?></strong><?php } else { ?><span class="error">Esta orden de preparación requiere Packing List</span><?php } ?></p><?php
}
?>

<input name="requierePackingList" type="hidden" id="requierePackingList" value="<?php echo $_SESSION['orden']['RequierePackingList']; ?>"/>
<input name="packingList" type="hidden" id="packingList" value="<?php echo $_SESSION['orden']['PackingList']; ?>"/>
<input name="paletSeleccionado" type="hidden" id="paletSeleccionado" value="<?php echo $_SESSION['preparacionPaletActual']; ?>"/>
<input name="cajaSeleccionada" type="hidden" id="cajaSeleccionada" value="<?php echo $_SESSION['preparacionCajaActual']; ?>"/>

<?php

$peticion='SGAPreparar#'.$_SESSION['empresa'].'#'.$_SESSION['usuario']['Usuario'].'#CARGAUBICACION#'.$_SESSION['almacen'].';'.$_SESSION['orden']['Empresa'].';'.$_SESSION['orden']['OrdenPreparacion'];
	
if($_GET['siguiente'] || $_GET['inicio']) $peticion.=';'.$_SESSION['parametros'];
else if($_GET['siguienteUbicacion']) $peticion.=';'.$_SESSION['parametrosUbicacion'];

if($_GET['fuerzaS'] || $_GET['inicio']) $peticion.=';S';
	
if($_GET['traza']=='si') {
	echo "<p>Parámetros producto anterior: </p>";
	print_r($_SESSION['parametros']);
}
	
$resultado=PedirDatos($wsUsuario,$wsClave,$wsEmpresa,$peticion);
	
$producto=$resultado[0];
$datos=$producto['Datos']['PXMobileProxiumResult'];

//5-12-2018 guardamos la lista de otras ubicaciones, en sesion para poder llamar por ajax al script que pinta el listado popup
unset($_SESSION['listaUbicaciones']);
$_SESSION['listaUbicaciones']=arreglaArrayPXMobileProxiumResult($producto['ListaContUbiLot']);

$_SESSION['lineaOrden']=$producto; //Guardamos la linea para utilizarla después en la grabación mysql de las cajas en "orden-preparacion-S-preparar.php"

//print_r($_SESSION['lineaOrden']);

if($_GET['traza']=='si') {
	echo "<p>".$peticion."</p>";
	print_r($producto);
	//echo "<p>Array comportamientos globales:</p>";
	//print_r($_SESSION['comportamientosGlobales']);
}


//echo "<p>Control lotes: ".$producto['ControlLotes']."</p>";
//echo "<p>Modo lectura: ".$_SESSION['modoLecturaPorDefecto']."</p>";



?>

<script>


//Inicialiación de los arrays de control de ubicaciones<->lotes

var listaUbicaciones=new Array();

<?php foreach($_SESSION['listaUbicaciones'] as $item) { ?>
listaUbicaciones.push( { 'ubicacion' : '<?php echo $item['Ubicacion']; ?>' , 'ubicacionAlias' : '<?php echo $item['UbicacionAlias']; ?>' , 'lote' : '<?php echo $item['Lote']; ?>' , 'EAN' : '<?php echo $item['EAN']; ?>' , 'DUN' : '<?php echo $item['DUN']; ?>' , 'stock' : '<?php echo $item['Stock']; ?>' , 'stockCajas' : '<?php echo $item['StockCajas']; ?>' } );
<?php } ?>

function validaEanDun(codigo) {

	var valor='';

	for (i=0;i<listaUbicaciones.length;i++) {
		if( listaUbicaciones[i]['EAN']==codigo ) valor='EAN';
		else if( listaUbicaciones[i]['DUN']==codigo ) valor='DUN';
	}
	
	return valor;
}


function cargaCoincidenciaUnicaUbicacion(ubicacion,lote) {

	var cuantos=0;
	var resultado=new Array();

	for (i=0;i<listaUbicaciones.length;i++) {
		if( (ubicacion && listaUbicaciones[i]['ubicacion']==ubicacion) || (lote && listaUbicaciones[i]['lote']==lote) ) { 
			cuantos++;
			if(ubicacion) resultado=listaUbicaciones[i]['lote'];
			else resultado=listaUbicaciones[i]['ubicacion'];
		}
	}
	
	//alert("ubicacion: "+ubicacion+" / lote: "+lote+" -> cuantas coincidencias: "+cuantos);
	
	if(cuantos==0) return 'error';
	if(cuantos==1) return resultado;
	else return false;
}

function cargaCantidadAutomatica(ubicacion,lote,cantidadSolicitada,esCajas) {

	var cantidad='';
	var cantidadComparar=0;
	
	for (i=0;i<listaUbicaciones.length;i++) {
	
		if(esCajas) cantidadComparar=listaUbicaciones[i]['stockCajas'];
		else cantidadComparar=listaUbicaciones[i]['stock'];
	
		if( (ubicacion && listaUbicaciones[i]['ubicacion']==ubicacion) || (lote && listaUbicaciones[i]['lote']==lote) ) { 
			if( cantidadSolicitada <= cantidadComparar ) cantidad=cantidadSolicitada;
		}
	}
	
	return cantidad;
}


//Inicialización del orden de lectura de los campos

var modoLectura='<?php echo $_SESSION['modoLecturaPorDefecto']; ?>';
var controlLotes=<?php if($producto['ControlLotes']=='S') echo 'true'; else echo 'false'; ?>;
var controlFCaducidad=<?php if($producto['ControlFCaducidad']=='S') echo 'true'; else echo 'false'; ?>;

var secuenciaCampos=new Array();

function inicializaSecuencia(modoLectura) {

	secuenciaCampos=[];

	//alert("modo lectura: "+modoLectura+" / control lotes: "+controlLotes+" / control fecha caducidad: "+controlFCaducidad);

	if(modoLectura==1 || modoLectura=='') {
		secuenciaCampos.push('ubicacion');
		if(controlLotes) secuenciaCampos.push('lote'); else secuenciaCampos.push('eanDun');
	}
	else if(modoLectura==2) {
		if(controlLotes) secuenciaCampos.push('lote'); else secuenciaCampos.push('eanDun');
		secuenciaCampos.push('ubicacion');
	}
	if(controlFCaducidad) secuenciaCampos.push('fechaCaducidad');
	secuenciaCampos.push('cantidad');

}

function construyeBloques() {

	//Inicialización bloques de introducción de datos
	//Por defecto bloque0=ubicacion, bloque1=lote, bloqu2=fechaCaducidad
		
	var bloques=new Array();
	
	bloques['ubicacion']=$('#bloqueUbicacion').parent('div').html();
	
	if(controlLotes) bloques['lote']=$('#bloqueLote').parent('div').html();
	else bloques['eanDun']=$('#bloqueEanDun').parent('div').html();

	bloques['fechaCaducidad']=$('#bloqueFechaCaducidad').parent('div').html();
	
	for (i=0;i<secuenciaCampos.length;i++) {
		$('#bloque'+i).html( bloques[ secuenciaCampos[i] ] );
	}
}

function focoSiguiente(campoActual) {

	if(campoActual=='') foco=secuenciaCampos[0];
	else {
		for (i=0;i<secuenciaCampos.length;i++) {
			if(secuenciaCampos[i]==campoActual) foco=secuenciaCampos[i+1];
		}
	}
	//alert("el foco coresponde a: "+foco);
	$('#'+foco).focus();
	
	return foco;
}

</script>


<div id="contenedorPrincipal" class="contenedorPestanyas sombra anchoMaximo" style="margin-top:70px">

	<?php if( $_SESSION['parametrosSGA']['GestionPackingList']=='S' && $_SESSION['orden']['RequierePackingList']=='S' ) { ?>

	<div class="pestanya" id="pestanyaListadoPalets" style="min-height:500px">
		<div class="pestanyaEtiqueta" id="etiquetaListadoPalets">Selector de Palets</div>
        <div class="pestanyaContenido" style="text-align:center">
        	
            <div id="popupPackingLists" class="popup" style="display:none;"></div>
			<div class="popupContenidoScroll" id="popupPackingListsContenido" style="display:none;margin-top:-120px"></div>
            
            <form id="formularioPalet" name="formularioPalet" method="post" action="" >
          		<p>Nuevo Palet:<br />
        		<img src="img/teclado.png" alt="Mostrar teclado" class="iconoTeclado" id="tecladoPalet" />
                <input name="nuevoPalet" type="text" class="campo mayusculas" id="nuevoPalet" size="14" maxlength="14"/>
        		<img src="img/x.png" alt="Borrar" class="boton-x" id="borrarPalet" />
                </p>
                <p><input type="submit" name="paletAceptar" id="paletAceptar" value="Aceptar" class="boton"/></p>
    		</form>
            
            <div id="contenidoPaletsListado"></div>
            
        </div>
    </div>
    
    <?php } ?>

	<div class="pestanya" id="pestanyaListadoCajas" style="min-height:500px">
		<div class="pestanyaEtiqueta" id="etiquetaListadoCajas">Selector de Cajas</div>
        <div class="pestanyaContenido" style="text-align:center" >
        	
            <form id="formularioCaja" name="formularioCaja" method="post" action="" >
          		<p>Nueva Caja de Expedición:<br />
        		<img src="img/teclado.png" alt="Mostrar teclado" class="iconoTeclado" id="tecladoCaja" />
                <input name="nuevaCaja" type="text" class="campo mayusculas" id="nuevaCaja" size="14" maxlength="10"/>
        		<img src="img/x.png" alt="Borrar" class="boton-x" id="borrarCaja" />
                </p>
                <p><input type="submit" name="cajaAceptar" id="cajaAceptar" value="Aceptar" class="boton"/></p>
    		</form>
            
            <div id="contenidoCajasListado"></div>
            
        </div>
    </div>

	<div class="pestanya primeroSeleccionaCaja" id="pestanyaContenidoCaja" style="min-height:500px">
        <div class="pestanyaEtiqueta" id="etiquetaContenidoCaja">Caja actual: <strong id="etiquetaCodigoCaja"></strong></div>
      <div class="pestanyaContenido" id="contenidoCaja">
        </div>
    </div>

	<div class="pestanya primeroSeleccionaCaja" id="pestanyaPreparar" style="min-height:500px">
        <div class="pestanyaEtiqueta" id="etiquetaPreparar"><?php if($producto && !$producto['Error']) { ?>Preparar<?php } else { ?>DATOS PARA EL CIERRE<?php } ?></div>
        <div class="pestanyaContenido" style="text-align:center">
        
        
        
        
        
        
        
        <?php

	if($producto && !$producto['Error']) {

		$columnasFijas=2;
		if(count($_SESSION['empresas'])>1) $columnasFijas++;
		if($_SESSION['verEnCajas']=='S') $columnasFijas++;
		
		$columnasVariables=0;
	
		?>
        <form id="formulario" name="formulario" method="post" action="">
        
		<h3>Producto a Preparar</h3>
		<table class="tablaFormateada">
		<tr>
			<?php if(count($_SESSION['empresas'])>1) { ?><th>Emp.</th><?php } ?>
			<th>Código</th>
			<th>Descripción</th>
			<?php foreach($_SESSION['comportamientos'] as $comportamiento) { ?>
				<?php if($comportamiento['Activo']) { ?><th><?php echo $comportamiento['Nombre']; ?></th><?php } ?>
<?php } ?>
			<th>Cant.</th>
			<?php if($_SESSION['verEnCajas']=='S') { ?><th>Cajas</th><?php } ?>
			<th width="100">Ubicación</th>
		 </tr>
		 <tr>
			<?php if(count($_SESSION['empresas'])>1) { ?><td><?php echo $producto['Empresa']; ?></td><?php } ?>
			<td><?php echo $producto['Codigo']; ?></td>
			<td align="left" style="max-width:400px;word-wrap:break-word;"><?php echo $producto['Descripcion']; ?></td>
			<?php foreach($_SESSION['comportamientos'] as $comportamiento) { ?>
				<?php if($comportamiento['Activo']=='S') { ?>
                	<td>
						<?php
						$columnasVariables++;
						foreach($datos as $dato) {
							if($dato['Codigo']==$comportamiento['Codigo']) {
								echo formateaTipo($dato['Valor'],$comportamiento['Tipo']);
								break;
							}
						}
						?>                	</td>
				<?php } ?>
        	<?php } ?>
			<td align="right"><?php echo number_format($producto['Cantidad'],0,',','.'); ?><br /></td>
			<?php if($_SESSION['verEnCajas']=='S') { ?><td align="right"><?php echo number_format($producto['Cajas'],2,',','.'); ?><br /></td><?php } ?>
			<td><?php if($producto['UbicacionAlias']) echo $producto['UbicacionAlias']; else echo $producto['Ubicacion']; ?></td>
		</tr>
		 <tr <?php if($producto['TotalCantidad']>$producto['Cantidad']) { ?>class="parpadea rojo"<?php } ?>>
         
           <?php $colspan=$columnasFijas+$columnasVariables; ?>
           <?php if($_SESSION['verEnCajas']=='S') $colspan--; ?>
         
		   <td colspan="<?php echo $colspan; ?>" align="right">Total solicitado:</td>
		   <td align="right"><?php echo number_format($producto['TotalCantidad'],0,',','.'); ?></td>
		   <?php if($_SESSION['verEnCajas']=='S') { ?><td align="right"><?php echo number_format($producto['TotalCajas'],2,',','.'); ?></td><?php } ?>
           <td></td>
	      </tr>
		</table>
        
        <?php
		if($producto['Gamas']) {
		
			$gamas=arreglaArrayPXMobileProxiumResult($producto['Gamas']);
			
			$hayIndivisibles=false;
			
			foreach($gamas as $gama) if($gama['Indivisible']=='S') $hayIndivisibles=true;
		
		
			if($hayIndivisibles && ($producto['CantTotPtePreparar']>$producto['CantTotPtePrepararDisponible']) ) {
			
			?>
            <h3><img src="<?php echo $rutaHtml; ?>/img/gama.png" alt="Gama" width="40" height="40" style="margin-bottom:-10px" /> Cantidades y productos asociados a preparar en función de la Gama:</h3>
			
			
			<table class="tablaFormateada">
                
            	<tr style="white-space:nowrap">
					<th width="100">Gama</th>
					<th>Descripción</th>
                    <th width="50">Cant.</th>
                    <?php if($_SESSION['verEnCajas']=='S') { ?><th width="50">Cajas</th><?php } ?>
                    <th width="100">Seleccionar</th>
				</tr>
			<?php
		
			foreach($gamas as $gama) {
			
				$columnas=1;
				foreach($_SESSION['comportamientos'] as $comportamiento) if($comportamiento['Activo']) $columnas++;
			
				?>
                <tr>
                	<td><strong><?php echo $gama['Gama']; ?></strong> </td>
                    <td align="left"><strong><?php echo $gama['DescripcionGama']; ?></strong></td>
                    <td align="right"><?php echo number_format($gama['CantPrep'],0,',','.'); ?></td>
                    <?php if($_SESSION['verEnCajas']=='S') { ?><td align="right"><?php echo number_format($gama['Cajas'],2,',','.'); ?></td><?php } ?>
                    <td><input type="radio" name="radioGama" id="radioGama-<?php echo $gama['LinPedGama']; ?>" value="<?php echo $gama['LinPedGama']; ?>" class="checkGrande" cantidad="<?php echo $gama['CantPrep']; ?>" cajas="<?php echo $gama['Cajas']; ?>" /></td>
                </tr>
				<?php
			}
			?>
            </table>
            <?php
			
			}
                
		}
		?>
        
        <br />
        
        <?php
        if($_SESSION['verEnCajas']=='S' && $producto['EmbalajePrimarioCaja']) {
			$etiqueta="Cajas";
			$etiquetaInversa="Unidades";
			$cajas=true;
		}
		else {
			$etiqueta="Unidades";
			$etiquetaInversa="Cajas";
			$cajas=false;
		}
		?>
        <input type="hidden" name="cajas" id="cajas" value="<?php if($cajas) { ?>1<?php } else { ?>0<?php } ?>"/>
        <input type="hidden" name="EmbalajePrimarioCaja" id="EmbalajePrimarioCaja" value="<?php echo $producto['EmbalajePrimarioCaja']; ?>" />
        
        <table style="margin:0 auto 30px">
      <tr>
		<td rowspan="2" align="left" valign="top">
       	  <table class="tablaFormateada" style="width:500px;height:200px;margin:0 20px 0 0">
                    <tr><th style="height:20px">Observaciones de Comercial</th></tr>
                    <tr><td><?php if($producto['ComentariosComercial'] && is_string($producto['ComentariosComercial'])) echo nl2br($producto['ComentariosComercial']); ?></td></tr>
                </table>
          <p class="alternarModoLectura clicable" style="font-size:1.1em"><img src="img/barcode-alternar.png" alt="Alternar" style="width:40px;height:40px;margin-bottom:-12px" /> Alternar modo de introducción de datos.</p>
          </td>
          <td width="60" valign="top"></td>
        </tr>
        <tr>
          <td valign="top">&nbsp;</td>
          <td valign="top">
          	
           
            <div id="bloque0">
            
            	<div id="bloqueUbicacion">
                    <p style="margin:0 0 5px 0;">Ubicación:</p>
                    <div style="width:360px;height:53px;position:relative;margin:0;text-align:left">
                    <img src="img/teclado.png" alt="Mostrar teclado" class="iconoTeclado" id="tecladoUbicacion" /><input name="ubicacion" type="text" class="campo" id="ubicacion" maxlength="11" style="font-size:2em;width:330px;height:43px;position:absolute;left:5px;"/>
                    <img src="img/lupa.png" alt="Buscar" class="boton-lupa" id="buscarUbicacion" style="with:55px;height:55px;position:absolute;left:5px;cursor:pointer"/><img src="img/x.png" alt="Borrar" id="borrarUbicacion" style="position:absolute;right:5px;cursor:pointer;"/>
                    </div>
                </div>

            </div>
                
            <div id="bloque1">
            
                <?php if($producto['ControlLotes']=='S') { ?>
                
                <div id="bloqueLote">
                    <p style="margin:0 0 0 0;">Lote:</p>
                    <div style="width:360px;height:53px;position:relative;margin:0;text-align:left">
                    <?php if($lotePorDefecto) { ?>
                        <img src="img/lote-neutro.png" alt="Lote <?php echo $lotePorDefecto; ?>" id="botonLotePorDefecto" class="iconoTeclado"/>
                    <?php } ?>
                    <input name="lote" type="text" class="campo" id="lote" style="font-size:2em;width:330px;height:43px;position:absolute;left:5px;"/><img src="img/lupa.png" alt="Buscar" class="boton-lupa" id="buscarOtrosLotesEnUbicacion" style="with:55px;height:55px;position:absolute;left:5px;cursor:pointer"/><img src="img/x.png" alt="Borrar" id="borrarLote" style="position:absolute;right:7px;cursor:pointer;"/>
                    </div>
                </div>
                
                <?php } else{ ?>
                
               	<div id="bloqueEanDun">
                	<p style="margin:0 0 5px 0;">Código EAN/DUN:</p>
                    <div style="width:360px;height:53px;position:relative;margin:0;text-align:left">
                    <img src="img/teclado.png" alt="Mostrar teclado" class="iconoTeclado" id="tecladoEanDun" /><input name="eanDun" type="text" class="campo" id="eanDun" style="font-size:2em;width:330px;height:43px;position:absolute;left:5px;"/><input name="eanDunCorrecto" type="hidden" id="eanDunCorrecto" value="0" style="z-index:2000"/>
                    <img src="img/x.png" alt="Borrar" id="borrarEanDun" style="position:absolute;right:5px;cursor:pointer;"/>
                    </div>
                </div>
                
                <?php } ?>

            </div>
            
            <div id="bloque2">
            
                <div id="bloqueFechaCaducidad">
                <?php if($producto['ControlFCaducidad']=='S') { ?>
                    <p style="margin:5px 0 5px 0;">Fecha Caducidad:<br />
                    <input name="fechaCaducidad" type="text" class="campo" id="fechaCaducidad" style="width:330px"/><img src="img/x.png" alt="Borrar" id="borrarFechaCaducidad" style="position:absolute;right:30px;cursor:pointer;"/>
                    </p>
                <?php } ?>
                </div>
            
            </div>
            
   	        <p style="margin:0 0 5px 0;">Cantidad (<span id="etiqueta"><?php echo $etiqueta; ?></span>)</p>
             <div style="width:360px;height:53px;position:relative;margin:0;text-align:left">
             <img src="img/<?php echo $etiquetaInversa; ?>.png" alt="Informar en <?php echo $etiqueta; ?>" class="iconoTeclado" id="iconoUnidades" /><input name="cantidad" type="text" class="campo cantidad" id="cantidad" style="font-size:2em;width:330px;height:43px;position:absolute;left:5px;"/><img src="img/x.png" alt="Borrar" id="borrarCantidad" style="position:absolute;right:5px;cursor:pointer;"/>
             </div>
             
             </td>
        </tr>
        </table>
	    
        </form>
        
        <div id="popupBusquedaLotes" class="popup" style="display:none">
            <div class="popupContenidoScroll" id="popupBusquedaLotesContenido"></div>
        </div>
        
        <div id="popupBusqueda" class="popup" style="display:none">
            <div class="popupContenidoScroll" id="popupBusquedaContenido"></div>
        </div>
        
        
        <p><input type="submit" name="botonCargaCajasEnBloque" id="botonCargaCajasEnBloque" value="Cajas de Expedición en bloque" class="boton" /></p>
        
        <div id="resumenCargaCajasEnBloque"></div>
        
        <div id="popupCargaCajasEnBloque" class="popup" style="display:none">
            <div class="popupContenidoScroll" id="popupCargaCajasEnBloqueContenido" >
            	
                <div id="lecturaCajasSelectorPrincipal">
                    <p>Elige el tipo de lectura en bloque:</p>
                    <p><input type="submit" name="botonCargaCajasEnBloqueSecuencia" id="botonCargaCajasEnBloqueSecuencia" value="Secuencia de Cajas de Expedición" class="boton" /></p>
                    <p><input type="submit" name="botonCargaCajasEnBloqueSueltas" id="botonCargaCajasEnBloqueSueltas" value="Cajas de Expedición individuales" class="boton deshabilitado" /></p>
                </div>
                
                <div id="lecturaCajasSecuencia" style="display:none">
                	<p>Secuencia de Cajas de Expedición consecutivas.</p>
                    <p>Desde:<br />
                    <img src="img/teclado.png" alt="Mostrar teclado" class="iconoTeclado" id="tecladoNuevaCajaSecuenciaDesde" /><input name="nuevaCajaSecuenciaDesde" type="text" class="campo mayusculas" id="nuevaCajaSecuenciaDesde" size="14" maxlength="10"/><img src="img/x.png" alt="Borrar" class="boton-x" id="borrarNuevaCajaSecuenciaDesde" />
                    </p>
                    <p>Hasta:<br />
                    <img src="img/teclado.png" alt="Mostrar teclado" class="iconoTeclado" id="tecladoNuevaCajaSecuenciaHasta" /><input name="nuevaCajaSecuenciaHasta" type="text" class="campo mayusculas" id="nuevaCajaSecuenciaHasta" size="14" maxlength="10"/><img src="img/x.png" alt="Borrar" class="boton-x" id="borrarNuevaCajaSecuenciaHasta" />
                    </p>
                    <input type="hidden" name="secuenciaCajas" id="secuenciaCajas" value="<?php if($cajas) { ?>1<?php } else { ?>0<?php } ?>"/>
                    <p style="margin:0 0 5px 0;">Cantidad (<span id="etiquetaSecuenciaCantidad"><?php echo $etiqueta; ?></span>) por Caja de Expedición<br />
                    <img src="img/<?php echo $etiquetaInversa; ?>.png" alt="Informar en <?php echo $etiqueta; ?>" class="iconoTeclado" id="iconoSecuenciaUnidades" /><input name="cantidad" type="text" class="campo cantidad" id="secuenciaCantidad" size="14" maxlength="10"/><img src="img/x.png" alt="Borrar" id="borrarSecuenciaCantidad" class="boton-x"/></p>
                    <p><input type="submit" name="botonCajasSecuenciaAceptar" id="botonCajasSecuenciaAceptar" value="Aceptar" class="boton" /></p>
                </div>
                
                <div id="lecturaCajasIndividuales" style="display:none">
                </div>
                
                <p style="margin-top:60px"><input type="submit" name="botonCargaCajasEnBloqueCancelar" id="botonCargaCajasEnBloqueCancelar" value="Cancelar" class="boton reducido" /></p>
            </div>
        </div>
        
		<?php
		unset($_SESSION['parametros']);
		unset($_SESSION['parametrosUbicacion']);
		
		$_SESSION['parametros']=$producto['Codigo'];
		$_SESSION['parametros'].=';'.$producto['Ubicacion'];
		$_SESSION['parametros'].=';'.$producto['Contenedor'];
		
		//echo "<p>Comportamientos:</p>";
		//print_r($_SESSION['comportamientos']);
		//echo "<p>Comportamientos globales:</p>";
		//print_r($_SESSION['comportamientosGlobales']);
		
		foreach($_SESSION['comportamientosGlobales'] as $comportamiento) {
			$valor='-';
			foreach($datos as $dato) if($dato['Codigo']==$comportamiento['Codigo']) { $valor=$dato['Valor']; break; }
			$_SESSION['parametros'].=';'.$valor;
		}
					
		$_SESSION['parametros'].=';'.$producto['NumeroEntrada'];
		$_SESSION['parametros'].=';'.$producto['LineaEntrada'];
		
		//echo "<p>Comportamientos globales: </p>";
		//print_r($_SESSION['comportamientosGlobales']);
		//echo "<p>Parámetros producto actual: </p>";
		//print_r($_SESSION['parametros']);
		
		$peticion='SGAPreparar#'.$_SESSION['empresa'].'#'.$_SESSION['usuario']['Usuario'].'#LISTAUBISPRODUCTO#'.$_SESSION['almacen'].';'.$_SESSION['orden']['Empresa'].';'.$_SESSION['orden']['OrdenPreparacion'].';'.$_SESSION['parametros'];
		$resultado=PedirDatos($wsUsuario,$wsClave,$wsEmpresa,$peticion);
		
		//echo "<p>".$peticion."</p>";
		//echo "<p>Error: ".$resultado[0]['Error']."</p>";
		//echo "<p>Cuantos resultados:".count($resultado)."</p>";
		//print_r($resultado);
		
		if(count($resultado)>0 && !$resultado[0]['Error']) {
			
			?>
			<h3>Otras ubicaciones con este producto:</h3>
			<table class="tablaFormateada">
			<tr>
				<?php if(count($_SESSION['empresas'])>1) { ?><th>Emp.</th><?php } ?>
				<th>Código</th>
				<th>Descripción</th>
				<?php foreach($_SESSION['comportamientos'] as $comportamiento) { ?>
				<?php if($comportamiento['Activo']) { ?><th><?php echo $comportamiento['Nombre']; ?></th><?php } ?>
	      <?php } ?>
				<th>Cant.</th>
				<?php if($_SESSION['verEnCajas']=='S') { ?><th>Cajas</th><?php } ?>
				<th width="100">Ubicación</th>
			</tr>
			<?php
			foreach($resultado as $productoUbicacion) {
				
				$datosProductoUbicacion=$productoUbicacion['Datos']['PXMobileProxiumResult'];
				
				if(!$_SESSION['parametrosUbicacion']) {
			
					$_SESSION['parametrosUbicacion']=$productoUbicacion['Codigo'];
					$_SESSION['parametrosUbicacion'].=';'.$productoUbicacion['Ubicacion'];
					$_SESSION['parametrosUbicacion'].=';'.$productoUbicacion['Contenedor'];
					
					foreach($_SESSION['comportamientosGlobales'] as $comportamiento) {
						$valor='-';
						foreach($datosProductoUbicacion as $dato) if($dato['Codigo']==$comportamiento['Codigo']) { $valor=$dato['Valor']; break; }
						$_SESSION['parametrosUbicacion'].=';'.$valor;
					}
								
					$_SESSION['parametrosUbicacion'].=';'.$productoUbicacion['NumeroEntrada'];
					$_SESSION['parametrosUbicacion'].=';'.$productoUbicacion['LineaEntrada'];
					$_SESSION['parametrosUbicacion'].=';S';
				
				}
				
				?>
				<tr>
					<?php if(count($_SESSION['empresas'])>1) { ?><td><?php echo $productoUbicacion['Empresa']; ?></td><?php } ?>
					<td><?php echo $productoUbicacion['Codigo']; ?></td>
					<td align="left" style="max-width:400px;word-wrap:break-word;"><?php echo $productoUbicacion['Descripcion']; ?></td>
					<?php foreach($_SESSION['comportamientos'] as $comportamiento) { ?>
						<?php if($comportamiento['Activo']=='S') { ?>
                            <td>
                                <?php
                                foreach($datosProductoUbicacion as $dato) {
                                    if($dato['Codigo']==$comportamiento['Codigo']) {
                                        echo formateaTipo($dato['Valor'],$comportamiento['Tipo']);
                                        break;
                                    }
                                }
                                ?>
                            </td>
                        <?php } ?>
                    <?php } ?>	
				  <td align="right"><?php echo number_format($productoUbicacion['Cantidad'],0,',','.'); ?></td>
				  <?php if($_SESSION['verEnCajas']=='S') { ?><td align="right"><?php echo number_format($productoUbicacion['Cajas'],2,',','.'); ?></td><?php } ?>
				  <td><?php if($productoUbicacion['UbicacionAlias']) echo $productoUbicacion['UbicacionAlias']; else echo $productoUbicacion['Ubicacion']; ?></td>
				</tr>
				<?php
			}
			?>
			</table>
  			<?php
			$mostrarSgteUbicacion=true;
		}
	
	}
	else {
	
		if($producto['Error']=='1#Orden cerrada.') {
			?>
            <h3 style="margin:50px 0 50px 0">La orden de preparación ha sido cerrada.</h3>
            <p><input type="submit" name="botonVolverListado" id="botonVolverListado" value="Volver al listado" class="boton" /></p>
            <?php
		}
		else if($producto['Error']=='1#No hay productos pendientes de preparar.') {
			
			//Llamamos de nuevo al listado principal para comprobar que no haya pendientes de preparar
			$peticionPendientes='SGAPreparar#'.$_SESSION['empresa'].'#'.$_SESSION['usuario']['Usuario'].'#DETALLEORDENPREP#'.$_SESSION['almacen'].';'.$_SESSION['orden']['Empresa'].';'.$_SESSION['orden']['OrdenPreparacion'];
			$resultadoPendientes=PedirDatos($wsUsuario,$wsClave,$wsEmpresa,$peticionPendientes);
			$pendientes=arreglaArrayPXMobileProxiumResult($resultadoPendientes[0]['ProductosPendientes']);
			
			if(count($pendientes)>0) {
				?>
				<h3 style="margin:50px 0 50px 0">No hay más productos que preparar, pero la orden no puede cerrarse porque contiene productos que todavía no están disponibles.</h3>
				<p><input type="submit" name="botonVolverListado" id="botonVolverListado" value="Volver al listado" class="boton" /></p>
				<?php
			}
			else {
			
				if($_GET['traza']=='si') print_r($_SESSION['orden']['DatosCierre']);
			
				/////////////////////////////////////////////////////////
				//$temp=$conexionBdd->prepare("SELECT * FROM ".$mysqlPrefix."PreparacionCajas WHERE NOrden=?");
				//$temp->execute(array($_SESSION['orden']['OrdenPreparacion']));
				//$cuantasCajas=$temp->rowCount();
				/////////////////////////////////////////////////
				$cuantasCajas=count($_SESSION['cajas']);
				$cuantosPalets=count($_SESSION['palets']);
							
				?>
				<h3>DATOS PARA EL CIERRE</h3>
				<div style="margin:0 auto;width:800px;overflow:hidden;">
				
				<form id="formulario" name="formulario" method="post" action="">
					<input type="hidden" name="esCierre" value="si" />
					<?php
					foreach(arreglaArrayPXMobileProxiumResult($_SESSION['orden']['DatosCierre']) as $datoCierre) {
						?>
						<div style="width:260px;float:left;">
						<p><?php echo $datoCierre['Texto']; ?><?php if ($datoCierre['Obligatorio']=='S') echo "*"; ?><br />
						<input
                        type="text"
                        name="campoCierre-<?php echo $datoCierre['NumCampo']; ?>"
                        id="campoCierre-<?php echo $datoCierre['NumCampo']; ?>"
                        value="<?php if($datoCierre['Texto']=='Núm. Bultos' || $datoCierre['Texto']=='Núm. Cajas') echo $cuantasCajas; else if($datoCierre['Texto']=='Núm. Palets') echo $cuantosPalets; else echo $datoCierre['Valor']; ?>"
                        class="campo cantidad campoCierre"
                        style="width:200px"
                        obligatorio="<?php echo $datoCierre['Obligatorio']; ?>"
                        />
                        </p>
						</div>
						<?php
					}
					?>
				
				<p class="mini" style="clear:both">* Datos obligatorios</p>
				<p><input type="submit" name="botonCierre" id="botonCierre" value="Cerrar Orden" class="boton"/></p>
				</form>
                </div>
				
				<script>
				
				$(document).ready(function() {
					
					$('#botonCierre').on("click",function(e){
						
						e.preventDefault();
						
						var hayErrores=false;
						
						$('.campoCierre').each(function() {
							
							if($(this).attr('obligatorio')=='S' && $(this).val()=='') {
								$(this).addClass('campoError');
								hayErrores=true;
								$(this).focus();
							}
							else $(this).removeClass('campoError');
						});
						
						if(hayErrores) alert("Por favor, cumplimenta los campos obligatorios.");
						else {
							$('#popupCargando').show();
							$('#formulario').submit();
						}
					});
					
					$('.campoCierre').on("click",function(e) {
						$('#calculadora').show();
						$('#valorCalculadora').val( $(this).val() );
						$('#enterCalculadora').attr('campoValor',$(this).attr('id'));
					});
				});
				
				</script>
				<?php
			}
		}
		else {
			?><p class="error"><?php echo $producto['Error']; ?></p><?php
		}
	}

	//echo "<p>EmbalajePrimarioCaja: ".$producto['EmbalajePrimarioCaja']."</p";
	//echo "<p>cantidad: ".$producto['Cantidad']."</p";
	//echo "<p>cajas: ".$producto['Cajas']."</p";
	?>
    
    </div> <!-- ultima pestaña -->

</div> <!-- contenedorPrincipal -->

<script>



	<?php if($_SESSION['orden']['Estado']=='Iniciada' && $producto && !$producto['Error']) { ?>
	
	function validaCampos() {
	
		var cantidad=<?php if($producto['EmbalajePrimarioCaja']) { echo $producto['Cajas']; } else { echo $producto['Cantidad']; } ?>;
		
		<?php if($producto['ControlLotes']=='S') { ?>
		$('#lote').removeClass('campoError');
		<?php } else { ?>
		$('#eanDun').removeClass('campoError');
		<?php } ?>
		$('#ubicacion').removeClass('campoError');
		$('#cantidad').removeClass('campoError');
	
		if($('#ubicacion').val()=='') {
			alert('Para continuar es necesario indicar la ubicacion.')
			.done( function() {
				$('#ubicacion').addClass('campoError');
				$('#ubicacion').focus();
				return false;
			});
		}
		<?php if($producto['ControlLotes']=='S') { ?>
		else if( $('#lote').val()=='' ) {
			alert('Para continuar es necesario indicar el Lote.')
			.done( function() {
				$('#lote').addClass('campoError');
				$('#lote').focus();
				return false;
			});
		}
		<?php } else { ?>
		else if( $('#eanDun').val()=='' ) {
			alert('Para continuar es necesario indicar el código EAN/DUN.')
			.done( function() {
				$('#eanDun').addClass('campoError');
				$('#eanDun').focus();
				return false;
			});
		}
		else if( $('#eanDunCorrecto').val()!=1 ) {
			alert('Error: este código EAN/DUN no pertenece a este producto.')
			.done( function() {
				$('#eanDun').addClass('campoError');
				$('#eanDun').focus();
				return false;
			});
		}
		<?php } ?>
		else if( $('#cantidad').val()=='' || $('#cantidad').val()==0 ) {
			alert('Para continuar es necesario indicar la cantidad.')
			.done( function() {
				$('#cantidad').addClass('campoError');
				$('#cantidad').focus();
				return false;
			});
		}
		else if ( ( $('#cajas').val()==1 && $('#cantidad').val()><?php echo $producto['TotalCajas']; ?> ) || ( $('#cajas').val()==0 && $('#cantidad').val()><?php echo $producto['TotalCantidad']; ?> ) ) {
			alert('La cantidad indicada excede el total a preparar.')
			.done( function() {
				$('#cantidad').addClass('campoError');
				$('#cantidad').focus();
				return false;
			});
		}
		<?php if($producto['Gamas']) { ?>
		<?php if($hayIndivisibles && ($producto['CantTotPtePreparar']>$producto['CantTotPtePrepararDisponible']) ) { ?>
		else if( !$('input:radio[name=radioGama]').is(':checked') ) {
			alert('Es obligatorio indicar qué Gama se está preparando.')
			.done( function() {
				return false;
			});
		}
		<?php } ?>
		else if ( ( $('#cajas').val()==1 && parseFloat($('#cantidad').val()) > parseFloat($('#radioGama-' + $('input:radio[name=radioGama]:checked').val() ).attr('cajas')) ) || ( $('#cajas').val()==0 && parseFloat($('#cantidad').val()) > parseFloat($('#radioGama-' + $('input:radio[name=radioGama]:checked').val() ).attr('cantidad')) ) ) {
			alert('No se puede preparar más cantidad de la especificada a nivel de Gama.')
			.done( function() {
				$('#cantidad').focus();
				return false;
			});
		}
		<?php } ?>
		else return true;
		
	
	}
	<?php } ?>


	function cambiaUnidades() {
	
		if( $('#cajas').val()==1 ) {
			
			$('#iconoUnidades').attr('src','img/Cajas.png');
			$('#cajas').val(0);
			$('#etiqueta').html('Unidades');
					
			var resultado = parseInt( $('#cantidad').val() * $('#EmbalajePrimarioCaja').val() );
					
			if(resultado>0) $('#cantidad').val( resultado );
			
			
			//Hacemos lo mismo en el popup de la secuencia de cajas
			$('#iconoSecuenciaUnidades').attr('src','img/Cajas.png');
			$('#secuenciaCajas').val(0);
			$('#etiquetaSecuenciaCantidad').html('Unidades');
					
			var resultado = parseInt( $('#secuenciaCantidad').val() * $('#EmbalajePrimarioCaja').val() );
					
			if(resultado>0) $('#secuenciaCantidad').val( resultado );
			
		}
		else {
		
			$('#iconoUnidades').attr('src','img/Unidades.png');
			$('#cajas').val(1);
			$('#etiqueta').html('Cajas');
					
			var flotante = parseFloat( $('#cantidad').val() / $('#EmbalajePrimarioCaja').val() );
			var resultado = Math.round(flotante*100)/100;
					
			if(resultado>0) $('#cantidad').val( resultado );
			
			
			//Hacemos lo mismo en el popup de la secuencia de cajas
			$('#iconoSecuenciaUnidades').attr('src','img/Unidades.png');
			$('#secuenciaCajas').val(1);
			$('#etiquetaSecuenciaCantidad').html('Cajas');
						
			var flotante = parseFloat( $('#secuenciaCantidad').val() / $('#EmbalajePrimarioCaja').val() );
			var resultado = Math.round(flotante*100)/100;
						
			if(resultado>0) $('#secuenciaCantidad').val( resultado );
		}
	
	}
	
	function cargaListadoPalets() {
	
		$('#popupCargando').show();
		$.post( "<?php echo $rutaHtml; ?>/contenidos/orden-preparacion-palets-listado.php")
		.done(function(data) {
			$('#popupCargando').hide();
			$('#contenidoPaletsListado').html(data);
			redimensionaPestanyas('contenedorPrincipal');
			$('#nuevoPalet').focus();
		});
		
	}
	
	function seleccionaPalet(palet) {
		
		//alert("comienza el procedimento de asociar: "+palet);
		
		$.post( "<?php echo $rutaHtml; ?>/contenidos/orden-preparacion-palet-seleccionar.php", { 'palet' : palet })
		.done(function() {
			
			//alert("el palet ha sido seleccionado");
			
			$('.selectorPalet').parent().attr('seleccionado','no');
			$('.imagenPalet').attr("src","<?php echo $rutaHtml; ?>/img/palet.png");
					
			$('#selectorPalet'+palet).parent().attr('seleccionado','si');
			$('#imagenPalet'+palet).attr("src","<?php echo $rutaHtml; ?>/img/ok.png");
			
			//alert("procedemos a borrar la etiqueta de la caja actual");
			
			//Al seleccionar palet, se desmarca la caja seleccionada actual
			$('#etiquetaCodigoCaja').html('');
			
			//Valores para formulario preparacion
			$('#cajaSeleccionada').val('');
			$('#paletSeleccionado').val(palet);
					
			cargaListadoCajas();
					
			$('#contenidoCaja').html('');
			redimensionaPestanyas('contenedorPrincipal');
								
			$("html, body").animate({scrollTop:0},"slow");
			mueveHastaPestanya('pestanyaListadoCajas');
			$('#nuevaCaja').focus();
				
		});
		
	}
	
	function asociaPaletOrdenPacking(orden,palet,packinglist) {
	
		//alert('orden: '+orden+' / palet: '+palet+' packing: '+packinglist);
	
		$('#popupCargando').show();
								
		$.post( "<?php echo $rutaHtml; ?>/contenidos/orden-preparacion-palet-asociar.php", { 'orden' : orden , 'palet' : palet , 'packing' : packinglist })
		.done(function(data) {
									
			$('#popupCargando').hide();
			
			var valores=data.split('#');
	
			if(valores[0]==1) {
				alert('ERROR: '+valores[1]);
			}
			else {
			
				$('#popupPackingLists').hide();
				$('#popupPackingListsContenido').hide();
				
				var mensaje='';
				
				if( orden && packinglist!=$('#packingList').val() ) {
					if(packinglist) mensaje='La Orden de Preparación ha sido asociada al Packing List <strong>'+packinglist+'</strong>';
					else {
						packinglist=valores[2];
						mensaje='Ha sido creado el nuevo Packing List <strong>'+packinglist+'</strong>';
					}
					alert(mensaje)
					$('#mensajeAsociacionPacking').html('Esta orden de preparación está asociada al <strong>Packing List '+packinglist+'</strong>');
					$('#packingList').val(packinglist);
				}
				
				$('#paletSeleccionado').val(palet);
				
				
				seleccionaPalet(palet);
				cargaListadoPalets();
				
				$('#nuevoPalet').val('');
				$('#nuevoPalet').focus();
				
				

			}
						
		});
	
	}

	function cargaContenidoCajaActual() {
	
		$('#popupCargando').show();
		$.post( "<?php echo $rutaHtml; ?>/contenidos/orden-preparacion-caja-contenido.php?recarga=si")
		.done(function(data) {
					
			$('#popupCargando').hide();
						
			$('#contenidoCaja').html(data);
			redimensionaPestanyas('contenedorPrincipal');
								
			$("html, body").animate({scrollTop:0},"slow");
			mueveHastaPestanya('pestanyaContenidoCaja');
						
		});
	}

	function cargaListadoCajas(cargaContenido) {
	
		$('#popupCargando').show();
		$.post( "<?php echo $rutaHtml; ?>/contenidos/orden-preparacion-cajas-listado.php")
		.done(function(data) {
		
			
			$('#contenidoCajasListado').html(data);
			
			if(cargaContenido) cargaContenidoCajaActual();
			
			redimensionaPestanyas('contenedorPrincipal');
			
			$('#popupCargando').hide();
		});
	
	}

	$(document).ready(function() {

	


	<?php if($_SESSION['orden']['Estado']=='Iniciada' && $producto && !$producto['Error']) { ?>
		
		//Construcción inicial
		inicializaSecuencia(modoLectura);
		construyeBloques();
		focoSiguiente('');
		
		
		
		
		$('.alternarModoLectura').on("click",function(e){
		
			e.preventDefault();
			
			if(modoLectura==1) modoLectura=2;
			else modoLectura=1;
			
			inicializaSecuencia(modoLectura);
			construyeBloques();
			focoSiguiente('');
		
		});
		
		
		
		$('.continuar').on("click",function(e){
		
			var idBoton=$(this).attr('id');
		
			e.preventDefault();
			
			if( $('#ubicacion').val()=='' && $('#cantidad').val()=='' ) {
				$('#popupCargando').show();
				if( idBoton=='botonSgteProducto' ) window.location='<?php echo $rutaHtml; ?>/orden-preparacion-proceso-S-cajas.php?siguiente=si';
				else window.location='<?php echo $rutaHtml; ?>/orden-preparacion-proceso-S-cajas.php?siguienteUbicacion=si';
			}
			
			else if(validaCampos()) {
	
				
	
				$('#popupCargando').show();
				
				var valorCantidad;
				if( $('#cajas').val()==1 ) valorCantidad = parseInt( $('#cantidad').val() * $('#EmbalajePrimarioCaja').val() );
				else valorCantidad = $('#cantidad').val();
				
				var valorSecuenciaCantidad;
				if( $('#secuenciaCajas').val()==1 ) valorSecuenciaCantidad = parseInt( $('#secuenciaCantidad').val() * $('#EmbalajePrimarioCaja').val() );
				else valorSecuenciaCantidad = $('#secuenciaCantidad').val();
				
				
				
				$.post( "<?php echo $rutaHtml; ?>/contenidos/orden-preparacion-S-preparar-cajas.php?traza=<?php echo $_GET['traza']; ?>", { cantidad: valorCantidad, contenedor: '<?php echo $producto['Contenedor']; ?>' , ubicacion : $('#ubicacion').val() , lote : $('#lote').val() , secuenciaCantidad : valorSecuenciaCantidad , idGama : $('input:radio[name=radioGama]:checked').val() } )
					.done(function(data) {
						
						<?php if($_GET['traza']=='si') { ?>alert(data);<?php } ?>
						
						var resultado=data.split('#');
						if(resultado[0]==1) {
							$('#popupCargando').hide();
							alert('Error: '+resultado[1]);
							//alert(data);
						}
						else {
						
							var cantidadOriginal=<?php echo $producto['Cantidad']; ?>;
							
							if( idBoton=='botonSgteProducto' ) {
								//alert("valorCantidad: "+valorCantidad+" / cantidadOriginal: "+cantidadOriginal);
								if ( valorCantidad < cantidadOriginal) window.location='<?php echo $rutaHtml; ?>/orden-preparacion-proceso-S-cajas.php?siguiente=si&fuerzaS=si';	
								else window.location='<?php echo $rutaHtml; ?>/orden-preparacion-proceso-S-cajas.php?siguiente=si';	
							}
							else window.location='<?php echo $rutaHtml; ?>/orden-preparacion-proceso-S-cajas.php?siguienteUbicacion=si';

						}
						
					});
					
					
				}
				else $('#popupCargando').hide();
				
				
			});

			$('#etiquetaPreparar').on("click",function(){
				
				$('#ubicacion').val('');
				
				<?php if($producto['ControlLotes']=='S') { ?>
					$('#lote').val('');
				<?php } ?>
				<?php if($producto['ControlFCaducidad']=='S') { ?>
					$('#fechaCaducidad').val('');
				<?php } ?>
				
				focoSiguiente('');
				
				//$('#ubicacion').focus();
						
			});
		
			$('#iconoUnidades').on("click",function(e){
				cambiaUnidades();
			});
			
			$(document).on('change','#ubicacion',function(){
				siguienteCampo=focoSiguiente('ubicacion');
				var valorUnico=cargaCoincidenciaUnicaUbicacion($(this).val(),null);
				if(valorUnico && $('#lote').val()=='') {
					$('#lote').val(valorUnico);
					if(siguienteCampo=='lote') focoSiguiente('lote');
				}
				
				var cantidadAutomatica=0;
				if($('#cajas').val()==1) cantidadAutomatica=cargaCantidadAutomatica($('#ubicacion').val(),$('#lote').val(),<?php echo $producto['TotalCajas']; ?>,1);
				else cantidadAutomatica=cargaCantidadAutomatica($('#ubicacion').val(),$('#lote').val(),<?php echo $producto['TotalCantidad']; ?>,0);
						
				if (cantidadAutomatica>0) $('#cantidad').val(cantidadAutomatica);
			});
			
			$(document).on('click','#tecladoUbicacion',function(){
				$('#teclado').show();
				$('#valor').val( $('#ubicacion').val() );
				$('#valorOculto').val( $('#ubicacion').val() );
				$('#enter').attr('campoValor','ubicacion');
				$('#enter').attr('forzarEnter','si');
				
			});
			
			$(document).on('click','#borrarUbicacion',function(){
				$("#ubicacion").val('');
				$("#ubicacion").focus();		
			});
			
			$(document).on('change','#eanDun',function(){
				
				$('#eanDun').removeClass('campoError');
				$('#eanDunCorrecto').val(0)
				
				var validacionEanDun=validaEanDun($('#eanDun').val());
				
				if( validacionEanDun != '' ) {

					//Cambiamos el campo de control de unidades al <<<CONTRARIO>>> de lo que toca, para que al alternar ponga el correcto
					if(validacionEanDun=='EAN') $('#cajas').val(1);
					<?php $parteDecimal=explode('.',$producto['TotalCajas']); ?>
					<?php $parteDecimal=(int)$parteDecimal[1]; ?>
					<?php if($parteDecimal>0) { //Si es DUN y la cantidad es decimal, no cambia a cajas ?>
					else $('#cajas').val(1);
					<?php } else { ?>
					else $('#cajas').val(0);
					<?php } ?>
						
					cambiaUnidades();
						
					//Ponemos el valor del campo oculto a Ok para la ultima validación del play
					$('#eanDunCorrecto').val(1);
						
					siguienteCampo=focoSiguiente('eanDun');
					var valorUnico=cargaCoincidenciaUnicaUbicacion(null,'-');
					if(valorUnico) {
						
						$('#ubicacion').val(valorUnico);
						if(siguienteCampo=='ubicacion') focoSiguiente('ubicacion');
						
						var cantidadAutomatica=0;
						if($('#cajas').val()==1) cantidadAutomatica=cargaCantidadAutomatica($('#ubicacion').val(),'-',<?php echo $producto['TotalCajas']; ?>,1);
						else cantidadAutomatica=cargaCantidadAutomatica($('#ubicacion').val(),'-',<?php echo $producto['TotalCantidad']; ?>,0);
						
						if (cantidadAutomatica>0) $('#cantidad').val(cantidadAutomatica);
					}
					
					
						
				} else {
					$('#eanDun').addClass('campoError');
					alert('Error: este código EAN/DUN no pertenece a este producto.',$('#eanDun'));
				}
				
			});
			
			$(document).on('click','#tecladoEanDun',function(){
				$('#teclado').show();
				$('#valor').val( $('#eanDun').val() );
				$('#valorOculto').val( $('#eanDun').val() );
				$('#enter').attr('campoValor','eanDun');
				$('#enter').attr('forzarEnter','si');
				
			});
			
			$(document).on('click','#borrarEanDun',function(){
				$("#ubicacion").val('');
				$("#eanDun").val('');
				$('#eanDunCorrecto').val(0)
				$("#eanDun").focus();		
			});
			
			$(document).on('click','#buscarUbicacion',function(){
				//No hacemos capa carga porque el pintado es directo, ya no se hace llamada web service
				$.post( "<?php echo $rutaHtml; ?>/contenidos/cargar-ubicaciones-producto-orden-preparacion-sin-agrupar.php" )
				.done(function(data) {
					$("#popupBusquedaContenido").html(data);
					$("#popupBusqueda").show();
				});
			});
			
			$(document).on('click','#lote',function(){
				$('#teclado').show();
				$('#valor').val( $('#lote').val() );
				$('#valorOculto').val( $('#lote').val() );
				$('#enter').attr('campoValor','lote');
				$('#enter').attr('forzarEnter','si');
			});
			
			//Cambio lote
			
			$(document).on('change','#lote',function(){
				
				$('#lote').removeClass('campoError');
				siguienteCampo=focoSiguiente('lote');
				
				var valorUnico=cargaCoincidenciaUnicaUbicacion(null,$(this).val());
				if(valorUnico=='error') {
					$('#lote').addClass('campoError');
					alert('Error: este Lote no pertenece a este producto.',$('#lote'));
				}
				else if(valorUnico && $('#ubicacion').val()=='') {
					$('#ubicacion').val(valorUnico);
					if(siguienteCampo=='ubicacion') focoSiguiente('ubicacion');
					
					var cantidadAutomatica=0;
					if($('#cajas').val()==1) cantidadAutomatica=cargaCantidadAutomatica($('#ubicacion').val(),$('#lote').val(),<?php echo $producto['TotalCajas']; ?>,1);
					else cantidadAutomatica=cargaCantidadAutomatica($('#ubicacion').val(),$('#lote').val(),<?php echo $producto['TotalCantidad']; ?>,0);
						
					if (cantidadAutomatica>0) $('#cantidad').val(cantidadAutomatica);
				}
			});
			
			$(document).on('click','#buscarOtrosLotesEnUbicacion',function(){
				
				if( $('#ubicacion').val()!='' ) {
				
					//alert($('#ubicacion').val());
					
					$("#popupCargando").show();
					$.post( "<?php echo $rutaHtml; ?>/contenidos/cargar-lotes-producto-ubicacion.php<?php if($_GET['traza']==si) { ?>?traza=si<?php }  ?>" , { 'ubicacion' : $('#ubicacion').val() , 'ubicacionOriginal' : '<?php echo $producto['Ubicacion']; ?>' } )
					.done(function(data) {
						$("#popupBusquedaLotesContenido").html(data);
						$("#popupBusquedaLotes").show();
						$("#popupCargando").hide();
					});
				}
				else {
					alert("Especifica la Ubicación para informar.")
					.done( function(){
						$("#ubicacion").focus();	
					});
				}
			});
			
			$(document).on('click','#borrarLote',function(){
				$("#lote").val('');
				$("#lote").focus();		
			});
			
			$(document).on('click','#fechaCaducidad',function(){
				$('#teclado').show();
				$('#valor').val( $('#fechaCaducidad').val() );
				$('#valorOculto').val( $('#fechaCaducidad').val() );
				$('#enter').attr('campoValor','fechaCaducidad');
			});
			
			$(document).on('click','#borrarFechaCaducidad',function(){
				$("#fechaCaducidad").val('');
				$("#fechaCaducidad").focus();		
			});
			
			$(document).on('click','#cantidad',function(e) {
				$('#calculadora').show();
				$('#valorCalculadora').val( $('#cantidad').val() );
				$('#enterCalculadora').attr('campoValor','cantidad');
			});
			
			$(document).on('click','#borrarCantidad',function(){
				$("#cantidad").val('');
				$("#cantidad").focus();
			});
			
			$(document).on('click','#botonLotePorDefecto',function(){
				$("#lote").val('<?php echo $lotePorDefecto ?>');
				focoSiguiente('lote');
			});
			
		<?php } else { ?>
		
		//Está preparado para el cierre
		mueveHastaPestanya('pestanyaPreparar');
		$('#pestanyaPreparar').removeClass('primeroSeleccionaCaja');
		
		<?php } ?>
	
			<?php if($_SESSION['orden']['PackingList']) { ?>
	
			//CARGA INICIAL LISTADO DE PALET
			cargaListadoPalets();
			
			<?php } ?>
	
			$('#tecladoPalet').on("click",function(){
					
				$('#teclado').show();
				$('#nuevoPalet').val('');
				$('#valor').val( $('#nuevoPalet').val() );
				$('#valorOculto').val( $('#nuevoPalet').val() );
				$('#enter').attr('campoValor','nuevoPalet');
				$('#enter').attr('formulario','formularioPalet');
						
			});
			
			$('#borrarPalet').on("click",function(){
					
				$("#nuevoPalet").val('');
				$("#nuevoPalet").focus();
						
			});
			
			$('#formularioPalet').on("submit",function(e){
			
				e.preventDefault();
				
				$('#popupCargando').show();
				
				$.post( "<?php echo $rutaHtml; ?>/contenidos/orden-preparacion-palet-info.php", { 'orden' : '<?php echo $_SESSION['orden']['OrdenPreparacion']; ?>' , 'palet' : $('#nuevoPalet').val()  })
				.done(function(data) {
				
					$('#popupCargando').hide();
					
					var valores=data.split('#');
					var resultado=valores[0];
					
					if(resultado==0) {
						alert('ERROR: Este Palet no existe.');
					}
					else if(resultado==1) { //EL PALET YA PERTENECE A UN PACKING LIST
						
						var coincidencia=valores[1];
						var packinglist=valores[2];
						
						if( packinglist==$('#packingList').val() ) {
							alert('Este Palet ya pertenece al Packing List de esta Orden de Preparación');
						}
						else if(coincidencia=='N') {
							alert('ERROR: Este Palet no puede utilizarse porque pertenece al Packing List <strong>'+packinglist+'</strong><br>y no puede asociarse a esta Orden de Preparación.')
							.done(function(){
									$('#nuevoPalet').val('');
									$('#nuevoPalet').focus();
							});
						}
						else {
							confirm('Este Palet pertenece a un Packing List válido para esta Orden de Preparación.<br><br>Se procede a asociar esta Orden de Preparación al Packing List <strong>'+packinglist+'</strong>')
							.done(function(){
								asociaPaletOrdenPacking('<?php echo $_SESSION['orden']['OrdenPreparacion']; ?>',$('#nuevoPalet').val(),packinglist);

							});
						}
					}
					else if(resultado==2) { //El palet está libre y hay Packing Lists coincidentes con la orden de preparación actual
					
						if( $('#packingList').val()!='') { //YA hay un packing list asociado a esta orden
						
							asociaPaletOrdenPacking(null,$('#nuevoPalet').val(),$('#packingList').val());
						
						}
						else { //El palet está libre y hay Packing Lists coincidentes con la orden de preparación actual
						
							$('#popupCargando').show();
					
							$.post( "<?php echo $rutaHtml; ?>/contenidos/orden-preparacion-palet-elegir-packing-list.php", { 'orden' : '<?php echo $_SESSION['orden']['OrdenPreparacion']; ?>' , 'palet' : $('#nuevoPalet').val() })
							.done(function(data) {
								
								$('#popupPackingListsContenido').html(data);
								
								$('#popupPackingLists').show();
								$('#popupPackingListsContenido').show();
								
								$('#popupCargando').hide();
									
							});
						
						}
					
					}
					else { //EL PALET ESTÁ LIBRE, NO PERTENECE A NINGUN PACKING LIST Y NO HAY PACKING LISTS COINCIDENTES CON OP ACTUAL
						
						//asociaPaletOrdenPacking('<?php echo $_SESSION['orden']['OrdenPreparacion']; ?>',$('#nuevoPalet').val(),null);
						asociaPaletOrdenPacking('<?php echo $_SESSION['orden']['OrdenPreparacion']; ?>',$('#nuevoPalet').val(), $('#packingList').val() );	
						
					}
					
				});
			
			});
			
			$('#etiquetaListadoPalets').on("click",function(){
				
				$("#nuevoPalet").val('');
				$("#nuevoPalet").focus();
						
			});
	
	
			//CARGA INICIAL LISTADO DE CAJAS
			cargaListadoCajas();
			redimensionaPestanyas('contenedorPrincipal');
		
			$('#tecladoCaja').on("click",function(){
					
				$('#teclado').show();
				$('#nuevaCaja').val('');
				$('#valor').val( $('#nuevaCaja').val() );
				$('#valorOculto').val( $('#nuevaCaja').val() );
				$('#enter').attr('campoValor','nuevaCaja');
				$('#enter').attr('formulario','formularioCaja');
						
			});
			
			$('#borrarCaja').on("click",function(){
					
				$("#nuevaCaja").val('');
				$("#nuevaCaja").focus();
						
			});
			
			$('#formularioCaja').on("submit",function(e){
					
				e.preventDefault();
				
				<?php if( $_SESSION['parametrosSGA']['GestionPackingList']=='S') { ?>
				
				if( $('#requierePackingList').val()=='S' && $('#paletSeleccionado').val()=='' ) {
				
					alert('ATENCIÓN: Esta Orden de Preparación requiere Packing List.<br><br>Antes de incluir una nueva Caja de Expedición debes de seleccionar o asociar un nuevo Palet.')
					.done(function(){
						$('#nuevaCaja').val('');
						mueveHastaPestanya('pestanyaListadoPalets');
						$('#nuevoPalet').focus();
					});
					
				} else {
				
				<?php } else { ?>
				
				if(true) {
				
				<?php } ?>
				
					if( $('#nuevaCaja').val() != '' ) {
					
						$('#popupCargando').show();
						
						$.post( "<?php echo $rutaHtml; ?>/contenidos/orden-preparacion-caja-info.php", { 'caja' : $('#nuevaCaja').val()  })
						.done(function(data) {
				
							$('#popupCargando').hide();
							
							var resultado=data.split('#');
							
							if(resultado[0]=='Error') {
								alert('Error: '+resultado[1])
								.done( function() {
									$("#nuevaCaja").val('');
									$("#nuevaCaja").focus();
								});
							}
							else {
								if(data=='<?php echo $_SESSION['orden']['OrdenPreparacion']; ?>') {
									alert('La caja '+$('#nuevaCaja').val()+' ya se encuentra asociada a la Orden.')
									.done( function(){
										$("#nuevaCaja").val('');
										$("#nuevaCaja").focus();
									});
								}
								else if(data=='Disponible') {
									$('#popupCargando').show();
									$.post( "<?php echo $rutaHtml; ?>/contenidos/orden-preparacion-caja-asociar.php", { 'caja' : $('#nuevaCaja').val()  })
									.done(function() {
										
										var caja=$('#nuevaCaja').val();
											
										$.post( "<?php echo $rutaHtml; ?>/contenidos/orden-preparacion-caja-seleccionar.php", { 'caja' : caja })
										.done(function() {
											
											$.post( "<?php echo $rutaHtml; ?>/contenidos/orden-preparacion-cajas-listado.php")
											.done(function(data) {
												
												$('#contenidoCajasListado').html(data);
		
												$('.selectorCajaSuperior').attr('seleccionada','no');
												$('.imagenCaja').attr("src","<?php echo $rutaHtml; ?>/img/caja.png");
													
												$('#itemCaja'+caja).attr('seleccionada','si');
												$('#imagenCaja'+caja).attr("src","<?php echo $rutaHtml; ?>/img/ok.png");
												
												$('#etiquetaCodigoCaja').html(caja);
												
												$('#popupCargando').hide();
												
												$.post( "<?php echo $rutaHtml; ?>/contenidos/orden-preparacion-caja-contenido.php")
												.done(function(data) {
													
													$('#contenidoCaja').html(data);
													redimensionaPestanyas('contenedorPrincipal');
													
													$("html, body").animate({scrollTop:0},"slow");
													
													$('#cajaSeleccionada').val(caja);
													
													$('#popupCargando').hide();
													
													alert('Caja '+$('#nuevaCaja').val()+' asociada a la Orden correctamente.')
													.done( function(){
													
														$("#nuevaCaja").val('');
														$("#nuevaCaja").focus();
														
														<?php if( $_SESSION['parametrosSGA']['GestionPackingList']=='S') { ?>
														if($('#requierePackingList').val()=='S') cargaListadoPalets();
														<?php } ?>
													});
												});
												
											});
											
										});
										
									});
								}
								else alert('La caja '+$('#nuevaCaja').val()+' no se puede utilizar.\nSe encuentra asociada a la orden: '+data);
							}
							
						});
						
					 }
					 else {
						alert("Por favor, indica el número de Caja.")
						.done( function(){
							$("#nuevaCaja").focus();
						});
					}
				
				
				} //Fin comprobacion inicial: si packing list o true
				
				
				
			});
			
			$('#etiquetaListadoCajas').on("click",function(){
				
				$("#nuevaCaja").val('');
				$("#nuevaCaja").focus();
						
			});
			
			//123456789
			
			//Si ya hay caja actual seleccionada, recarga el contenido de la mismo y activa la pestaña de preparar
			
			<?php if($_SESSION['preparacionCajaActual']) { ?>
			
				var caja='<?php echo $_SESSION['preparacionCajaActual']; ?>';
				
				//$('#popupCargando').show();
				
				$('.selectorCaja').attr('seleccionada','no');
				$('.imagenCaja').attr("src","<?php echo $rutaHtml; ?>/img/caja.png");
													
				$('#selectorCaja'+caja).attr('seleccionada','si');
				$('#imagenCaja'+caja).attr("src","<?php echo $rutaHtml; ?>/img/ok.png");
												
				$('#etiquetaCodigoCaja').html(caja);
												
												
				$.post( "<?php echo $rutaHtml; ?>/contenidos/orden-preparacion-caja-contenido.php")
				.done(function(data) {
													
					$('#contenidoCaja').html(data);
					redimensionaPestanyas('contenedorPrincipal');
													
					mueveHastaPestanya('pestanyaPreparar');
					
					focoSiguiente('');
					
					$('#cajaSeleccionada').val(caja);
													
					//$('#popupCargando').hide();
						
				});
	
			<?php } else if($_SESSION['parametrosSGA']['GestionPackingList']=='S' && $_SESSION['orden']['RequierePackingList']=='S' && !$_SESSION['preparacionPaletActual']) { ?>
				
				mueveHastaPestanya('pestanyaListadoPalets');
				$('#nuevoPalet').focus();
			
			<?php } else { ?>
			
				mueveHastaPestanya('pestanyaListadoCajas');
				$('#nuevaCaja').focus();
			
			<?php } ?>
			
		
		$('.primeroSeleccionaCaja').on("click",function(){
			
			if( $('#cajaSeleccionada').val()=='') {
				alert("Primero debes seleccionar una Caja de Expedición.")
				.done( function(){
					mueveHastaPestanya('pestanyaListadoCajas');
					$("#nuevaCaja").val('');
					$("#nuevaCaja").focus();
				});
			}
			
		});
			
	
		$('#botonPausar').on("click",function(e){
			e.preventDefault();
			window.location='<?php echo $rutaHtml; ?>/ordenes-preparacion.php';	
		});
		
		$('#botonVolverListado').on("click",function(e){
			e.preventDefault();
			window.location='<?php echo $rutaHtml; ?>/ordenes-preparacion.php';	
		});
		
		
		
		$('#botonCargaCajasEnBloque').on("click",function(e){
			
			e.preventDefault();
			
			if ( validaCampos() ) {
				$('#lecturaCajasSelectorPrincipal').show();
				$('#lecturaCajasSecuencia').hide();
				$('#popupCargaCajasEnBloque').show();
			}
		});
		
		
		$('#botonCargaCajasEnBloqueCancelar').on("click",function(e){
			e.preventDefault();
			$('#popupCargaCajasEnBloque').hide();
		});
		
		$('#botonCargaCajasEnBloqueSecuencia').on("click",function(e){
			e.preventDefault();
			$('#lecturaCajasSelectorPrincipal').hide();
			$('#lecturaCajasSecuencia').show();
			$('#nuevaCajaSecuenciaDesde').val('');
			$('#nuevaCajaSecuenciaHasta').val('');
			$('#secuenciaCantidad').val('');
			$('#nuevaCajaSecuenciaDesde').focus();
		});
		
		$('#tecladoNuevaCajaSecuenciaDesde').on("click",function(){	
			$('#teclado').show();
			$('#valor').val( $('#nuevaCajaSecuenciaDesde').val() );
			$('#valorOculto').val( $('#nuevaCajaSecuenciaDesde').val() );
			$('#enter').attr('campoValor','nuevaCajaSecuenciaDesde');
			$('#enter').attr('formulario','');		
		});
			
		$('#borrarNuevaCajaSecuenciaDesde').on("click",function(){
			$("#nuevaCajaSecuenciaDesde").val('');
			$("#nuevaCajaSecuenciaDesde").focus();
		});
		
		$('#tecladoNuevaCajaSecuenciaHasta').on("click",function(){
			$('#teclado').show();
			$('#valor').val( $('#nuevaCajaSecuenciaHasta').val() );
			$('#valorOculto').val( $('#nuevaCajaSecuenciaHasta').val() );
			$('#enter').attr('campoValor','nuevaCajaSecuenciaHasta');
			$('#enter').attr('formulario','');		
		});
			
		$('#borrarNuevaCajaSecuenciaHasta').on("click",function(){
			$("#nuevaCajaSecuenciaHasta").val('');
			$("#nuevaCajaSecuenciaHasta").focus();
		});
		
		$('#nuevaCajaSecuenciaDesde').on("change",function(e){
			e.preventDefault();
			$("#nuevaCajaSecuenciaHasta").focus();
		});
		
		$('#nuevaCajaSecuenciaHasta').on("change",function(e){
			e.preventDefault();
		});
		
		$('#iconoSecuenciaUnidades').on("click",function(e){
		
			cambiaUnidades()
		
			/*
				if( $('#secuenciaCajas').val()==1 ) {
					$(this).attr('src','img/Cajas.png');
					$('#secuenciaCajas').val(0);
					$('#etiquetaSecuenciaCantidad').html('Unidades');
					
					var resultado = parseInt( $('#secuenciaCantidad').val() * $('#EmbalajePrimarioCaja').val() );
					
					if(resultado>0) $('#secuenciaCantidad').val( resultado );
				}
				else {
					$(this).attr('src','img/Unidades.png');
					$('#secuenciaCajas').val(1);
					$('#etiquetaSecuenciaCantidad').html('Cajas');
					
					var flotante = parseFloat( $('#secuenciaCantidad').val() / $('#EmbalajePrimarioCaja').val() );
					var resultado = Math.round(flotante*100)/100;
					
					if(resultado>0) $('#secuenciaCantidad').val( resultado );
				}
			*/
			
		});
		
		$('#secuenciaCantidad').on("click",function(){
			$('#calculadora').show();
			$('#valorCalculadora').val( $('#secuenciaCantidad').val() );
			$('#enterCalculadora').attr('campoValor','secuenciaCantidad');
		});
		
		$('#borrarSecuenciaCantidad').on("click",function(){
			$("#secuenciaCantidad").val('');
			$("#secuenciaCantidad").focus();
		});
		
		$('#botonCajasSecuenciaAceptar').on("click",function(e){
		
			e.preventDefault();
			
			var desde=$("#nuevaCajaSecuenciaDesde").val().toUpperCase();
			var hasta=$("#nuevaCajaSecuenciaHasta").val().toUpperCase();
			if(desde=='') alert('Especifica el código de la primera Caja de Expedición',$('#nuevaCajaSecuenciaDesde'));
			else if(hasta=='') alert('Especifica el código de la última Caja de Expedición',$('#nuevaCajaSecuenciaHasta'));
			
			var prefijoDesde=desde.substr(0,4);
			var prefijoHasta=hasta.substr(0,4);
			
			var primera=parseInt(desde.substr(4,6));
			var ultima=parseInt(hasta.substr(4,6));
				
			var cuantas=ultima-primera+1;
				
			console.log('Cuantas cajas exp: '+cuantas);
			
			if( prefijoDesde != prefijoHasta ) {
			
				alert("Error: Solo puede utilizarse una secuencia de cajas<br>con el mismo prefijo ("+prefijoDesde+" o "+prefijoHasta+").");
			
			}
			else if( ultima<=primera) {
			
				alert("Error: Secuencia incorrecta. La última caja debe ser mayor que la primera");
			}
			else {
			
				//Evaluamos que las cantidades coinciden
				var valorCantidad;
				if( $('#cajas').val()==1 ) valorCantidad = parseInt( $('#cantidad').val() * $('#EmbalajePrimarioCaja').val() );
				else valorCantidad = $('#cantidad').val();
				
				console.log('Cantidad original: '+valorCantidad);
				
				var valorSecuenciaCantidad;
				if( $('#secuenciaCajas').val()==1 ) valorSecuenciaCantidad = parseInt( $('#secuenciaCantidad').val() * $('#EmbalajePrimarioCaja').val() );
				else valorSecuenciaCantidad = $('#secuenciaCantidad').val();
				
				console.log('Cantidad introducida: '+valorSecuenciaCantidad);
				
				var valorCalculado=valorSecuenciaCantidad*cuantas;
				
				console.log('Cantidad calculada: '+valorCalculado);
				
				if(valorCalculado == valorCantidad) {
				
					confirm('Se va a proceder a asociar '+cuantas+' cajas de Expedición<br>desde la '+desde+' hasta la '+hasta+'<br>¿Deseas continuar?')
					.done(function(data) {
					
						$('#popupCargando').show();
					
						$.post( "<?php echo $rutaHtml; ?>/contenidos/orden-preparacion-caja-info-secuencia.php", { 'prefijo' : prefijoDesde , 'primera' : primera , 'ultima' : ultima , 'orden' : '<?php echo $_SESSION['orden']['OrdenPreparacion']; ?>'  })
						.done(function(data) {
							
							if(data!='OK') {
								$('#popupCargando').hide();
								alert('<p>Errores:</p>'+data);
							}
							else {
							
								//Las cajas y los cálculos son correctos para proceder
								
								$.post( "<?php echo $rutaHtml; ?>/contenidos/orden-preparacion-caja-info-secuencia-resumen.php", { cantidad : valorSecuenciaCantidad })
								.done(function(data) {
								
									$('#resumenCargaCajasEnBloque').html(data);
									$('#popupCargaCajasEnBloque').hide();
									//redimensionaPestanyas('contenedorPrincipal');
									$('#popupCargando').hide();
						
								});
							}
							
						});
					
					});
				
				}
				else {
					alert("Error: Esta cantidad, multiplicada por el número <br> de Cajas de Expedición no coincide con la cantidad a preparar informada.");
				}
				
			} //Fin validacion prefijos
			
		});
		
	});

</script>

<?php


$mostrarInfo=true;
include($rutaPhp.$rutaHtml.'/maqueta/menu-orden-preparacion-S.php');

if($_SESSION['orden']['Estado']=='Iniciada' && $producto && !$producto['Error']) {
	$esperarCarga=true;
	$foco="nuevaCaja";
}


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