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

//ini_set('display_errors', 1);
//ini_set('display_startup_errors', 1);
//error_reporting(E_ALL);

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

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


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

switch($procedencia) {

	case 'descarga' :
		$evento='Descarga';
		$estado=$_SESSION['entrada']['PuntosControlEstado'];
		$documento=$_SESSION['entrada']['NumEntrada'];
		$pantallaOrigen='entrada-mercancia-gs1.php';
		$_SESSION['puntosDeControl']=arreglaArrayPXMobileProxiumResult($_SESSION['entrada']['PuntosControl']);
		$titulo='Entrada de Mercancía Nº '.$documento;
		
		$observaciones=$_SESSION['entrada']['Observaciones'];
		$incidencias=$_SESSION['entrada']['Incidencias'];
		
		$procesoFotos='entradas';
		
		break;
		
	case 'carga' :
		$evento='Carga';
		$estado=$_SESSION['carga']['PuntosControlEstado'];
		$documento=$_SESSION['carga']['NumCarga'];
		$pantallaOrigen='carga-camion-detalle.php?carga='.$documento;
		$_SESSION['puntosDeControl']=arreglaArrayPXMobileProxiumResult($_SESSION['carga']['PuntosControl']);
		$titulo='Carga de Camión Nº '.$documento;
		
		$observaciones=$_SESSION['carga']['Observaciones'];
		$incidencias=$_SESSION['carga']['Incidencias'];
		
		$procesoFotos='cargas';
		
		break;
	
}




//17-11-2022 Limpieza caracteres problemáticos en los valores TICKET 22048256
function limpiaCaracteresNoAdmitidos($cadena) {

	$caracteres=array(';','"','#');
	foreach($caracteres as $caracter) $cadena=str_replace($caracter,'',$cadena);
	
	return $cadena;
	
}





if($_POST) {

	$_SESSION['puntosControl']['puntos']=array();

	foreach($_POST as $campo=>$valor) {
	
		if(substr($campo,0,6)=='opcion') {
		
			$punto=substr($campo,6,strlen($campo));
			$valores=explode('-',$punto);
			
			$_SESSION['puntosControl']['puntos'][$punto]=array();
			
			$_SESSION['puntosControl']['puntos'][$punto]['codigo']=$valores[0];
			$_SESSION['puntosControl']['puntos'][$punto]['tipo']=$valores[1];
			$_SESSION['puntosControl']['puntos'][$punto]['estado']=$valor;
			$_SESSION['puntosControl']['puntos'][$punto]['observaciones']=limpiaCaracteresNoAdmitidos($_POST['observaciones'.$punto]);
			$_SESSION['puntosControl']['puntos'][$punto]['nuevoValor']=limpiaCaracteresNoAdmitidos($_POST['nuevoValor'.$punto]);
			
			//precintos dinámicos
			if($punto=='15-FIJO') {
				$cuantos=$_POST['precintosContador'];
				//echo '<p>Cuantos precintos: '.$cuantos.'</p>';
				$cadenaNuevoValor='';
				for($i=1;$i<=$cuantos;$i++) {
					if($_POST['precinto-'.$i]!='') {
						if($cadenaNuevoValor!='') $cadenaNuevoValor.=',';
						$cadenaNuevoValor.=$_POST['precinto-'.$i];
					}
				}
				$_SESSION['puntosControl']['puntos'][$punto]['nuevoValor']=$cadenaNuevoValor;
			}
			
		}
		
	}
	
	$_SESSION['puntosControl']['observacionesTransporte']=limpiaCaracteresNoAdmitidos($_POST['observacionesTransporte']);
	$_SESSION['puntosControl']['incidenciasTransporte']=limpiaCaracteresNoAdmitidos($_POST['incidenciasTransporte']);
	
	
	//echo '<p>Traza 2: Grabacion puntos de control finalizada. Resultado:</p>';
	//print_r($_SESSION['puntosControl']);

	if( $_POST['fotosCodigo'] ) {
	
		?>
		<script>
		$('#popupCargando').show();
		window.location='fotos.php?procedencia=<?php echo $procedencia; ?>&proceso=<?php echo $procesoFotos; ?>&subProceso=puntosControl&codigo=<?php echo $_POST['fotosCodigo']; ?>';
		</script>	
		<?php
	
	}
	else if( $_POST['enviarFormulario']==1 ) {
	
		$puntosControl='';
		
		foreach( $_SESSION['puntosControl']['puntos'] as $punto ) {
		
			if($clave!='observacionesTransporte' && $clave!='incidenciasTransporte') {
		
				if($puntosControl!='') $puntosControl.='|';
				
				$puntosControl.=$punto['codigo'].'_'.$punto['tipo'].'_'.$punto['estado'].'_'.$punto['observaciones'].'_'.$punto['nuevoValor'];
				
			}
		
		}

		$peticion='GrabaPuntosControl#'.$_SESSION['empresa'].'#'.$_SESSION['usuario']['Usuario'].'#'.$evento.'#'.$documento.'#'.$puntosControl.'@@SEP@@'.$_SESSION['puntosControl']['incidenciasTransporte'].'|'.$_SESSION['puntosControl']['observacionesTransporte'];
		
		
		$resultado=PedirDatos($wsUsuario,$wsClave,$wsEmpresa,$peticion);
	
		
		if($_GET['traza']=='si') {
		
			echo "<p>Todos los POST recibidos:</p>";
			print_r($_POST);
			
			echo '<p>Cadena de puntos de control final:</p>';
			echo $puntosControl;
			
			echo "<p>Proceso de grabación de entrada</p>";
			echo "<p>".$peticion."</p>";
			print_r($resultado);
		}
		
		/////////////////////////////////////////////////
		//$resultado[0]['Error']='1#Esto no ha funcionado';
		/////////////////////////////////////////////////
		
		$valores=explode('#',$resultado[0]['Error']);
		if($valores[0]=='0') {
		
			unset($_SESSION['puntosControl']);
			$envioOk=true;
		
			?>
			<script>
			alert('Puntos de control registrados correctamente.',null,'ok')
			.done(function(){
			
				$('#popupCargando').show();
				window.location='<?php echo $pantallaOrigen; ?>';
			
			});
			</script>
			<?php
	
		}
		else {
			?>
			<script>
			alert('ERROR: <?php echo $valores[1]; ?>',null,'error');
			</script>
			<?php
			
		}
		
	} //Fin si enviar formulario
	
}
else if($_GET['origen']!='fotos') { //Si no hay ningun post, reiniciamos todo porque viene de una pantalla principal, a no ser que venga de fotos

	unset($_SESSION['puntosControl']);

}


if(!$envioOk) {


if($_GET['traza']=='si') {
	print_r($_SESSION['puntosDeControl']);
}

?>

<h2><?php echo $titulo; ?></h2>

<h3>Puntos de control</h3>

<div id="popupInfo" class="popup" style="display:none">
<div class="popupContenido">
	<p><img src="<?php echo DIR_IMAGENES; ?>/palet-info.png" alt="Info" class="icono"/></p>
    <p id="popupInfoContenido"></p>
    <p><input type="button" id="botonCerrarInfo" name="botonCerrarInfo" value="Cerrar" class="boton reducido"/></p>
</div>
</div>

<form id="formulario" name="formulario" method="post" action="">

		<?php

		//primero miramos datos variables, para ocultar o mostrar la columna
		$hayAlgunoInformable=false;
		$hayAlgunoFotos=false;
		$hayAlgunoInfo=false;
		
		foreach($_SESSION['puntosDeControl'] as $puntoControl) {
			if($puntoControl['ActualizaDato']=='S') $hayAlgunoInformable=true;
			if($puntoControl['Fotos']=='S') $hayAlgunoFotos=true;
			if($puntoControl['Info']) $hayAlgunoInfo=true;
			
		}
		
		$tiposContenedor=arreglaArrayPXMobileProxiumResult($_SESSION['parametrosSGA']['TiposContenedor']);
		
		?>
        
  	<table class="tablaFormateada">
    
        <tr>
        	<th>Estado</th>
            <th>Descripción</th>
            <th>Valor</th>
            
            <?php if($hayAlgunoInformable) { ?>
            <th>Nuevo valor</th>
			<?php } ?>
            
            <th>Observaciones</th>
            
            <?php if($hayAlgunoFotos) { ?>
            <th></th>
			<?php } ?>
            
            <?php if($hayAlgunoInfo) { ?>
            <th></th>
			<?php } ?>
            
        </tr>
        
        <?php foreach($_SESSION['puntosDeControl'] as $puntoControl) { ?>
        
			<?php
            
            
            //Definimos la clave identificadora, para no repetirla mil veces
            $clavePuntoControl=$puntoControl['Codigo'].'-'.$puntoControl['Tipo'];
            
            
            //Miramos si tiene valor grabado de pantalla anterior
            foreach( $_SESSION['puntosControl']['puntos'] as $clave=>$valor ) {
            
                if($clave==$clavePuntoControl) {
                
                    //Modificamos por los valores grabados anteriormente
                    $puntoControl['Estado']=$valor['estado'];
                    $puntoControl['NuevoValor']=$valor['nuevoValor'];
                    $puntoControl['Observaciones']=$valor['observaciones'];
                    
                }
            
            }
			
			?>
            
            <tr class="lineaPuntoControl" id="<?php echo $clavePuntoControl; ?>">
                
                <td align="left">
                <input type="radio" name="opcion<?php echo $clavePuntoControl; ?>" id="opcion<?php echo $clavePuntoControl; ?>ok" value="OK" class="checkGrande checkPuntoControl" style="vertical-align:sub;" <?php if($puntoControl['Estado']=='OK') { ?>checked<?php } ?> codigo="<?php echo $clavePuntoControl; ?>"/> Ok <input type="radio" name="opcion<?php echo $clavePuntoControl; ?>" id="opcion<?php echo $clavePuntoControl; ?>nook" value="NOOK" class="checkGrande checkPuntoControl" style="vertical-align:sub;" <?php if($puntoControl['Estado']=='NOOK') { ?>checked<?php } ?> codigo="<?php echo $clavePuntoControl; ?>" generaIncidencia="<?php echo $puntoControl['GeneraIncidencia']; ?>"/> No <?php if($puntoControl['ActivarNA']=='S') { ?><input type="radio" name="opcion<?php echo $clavePuntoControl; ?>" id="opcion<?php echo $clavePuntoControl; ?>na" value="NA" class="checkGrande checkPuntoControl" style="vertical-align:sub;" <?php if($puntoControl['Estado']=='NA') { ?>checked<?php } ?> codigo="<?php echo $clavePuntoControl; ?>" /> N/A<?php } ?>
                </td>
                
                <td align="left" id="descripcion<?php echo $clavePuntoControl; ?>"><?php echo $puntoControl['Descripcion']; ?></td>
                
                <td>
					<?php if($clavePuntoControl=='15-FIJO') { //Precintos ?>
                    	<?php $precintos=explode(',',$puntoControl['Dato']); ?>
                        <?php foreach($precintos as $precinto) echo $precinto.'<br>'; ?>
                    <?php } else { ?>
					<?php echo $puntoControl['Dato']; ?>
                    <?php } ?>
                    
                </td>
                
                <?php if($hayAlgunoInformable) { ?>
                
                <td align="left">
                
				<?php if($puntoControl['ActualizaDato']=='S') { ?>
                
                	<?php if($clavePuntoControl=='13-FIJO') { //Tipo de contenedor ?>
                    
                        <select  name="nuevoValor<?php echo $clavePuntoControl; ?>" id="nuevoValor<?php echo $clavePuntoControl; ?>" class="campo comprimido nuevoValor" codigo="<?php echo $clavePuntoControl; ?>" tipo="<?php echo $puntoControl['TipoDato']; ?>" style="width:285px;text-align:left">
                          <option value="" selected>---</option>
                          <?php foreach($tiposContenedor as $tipo) { ?>
                          <option value="<?php echo $tipo['Codigo']; ?>" <?php if($puntoControl['NuevoValor']==$tipo['Codigo']) { ?>selected<?php } ?>><?php echo $tipo['Descripcion']; ?></option>
                          <?php } ?>
                        </select>
                    
					<?php } else if($clavePuntoControl=='15-FIJO') { //Precintos ?>
                    
						<?php
						$cuantosPrecintosGrabados=0;
                        //echo '<p>NUEVO DATO GRABADO: '.$puntoControl['NuevoValor'].'</p>';
                        $valoresPrecintos=explode(',',$puntoControl['NuevoValor']);
						$cuantosPrecintosGrabados=count($valoresPrecintos);
                        if($cuantosPrecintosGrabados>1) $cuantosPrecintosMontar=$cuantosPrecintosGrabados+1;
						else $cuantosPrecintosMontar=1;
                        //echo '<p>cuantosPrecintosMontar: '.$cuantosPrecintosMontar.'</p>';
						for($i=1;$i<=$cuantosPrecintosMontar;$i++) {
						?>
                        <div id="precinto-<?php echo $i; ?>-bloque">
                            <img src="<?php echo DIR_IMAGENES; ?>/teclado.png" alt="Mostrar teclado" tipo="<?php echo $puntoControl['TipoDato']; ?>" class="iconoTeclado tecladoDinamicoPrecinto" id="tecladoDinamicoPrecinto-<?php echo $i; ?>" contador="<?php echo $i; ?>" style="margin-left:0"/><input type="text" id="precinto-<?php echo $i; ?>" name="precinto-<?php echo $i; ?>" value="<?php echo $valoresPrecintos[$i-1]; ?>" class="campo comprimido nuevoValor precinto" contador="<?php echo $i; ?>" style="margin-bottom:5px;text-align:left;width:190px;margin-left: 5px;"/>
                            <div id="precinto-<?php echo $i; ?>-nuevo" contador="<?php echo $i; ?>"></div>
                        </div>
                        <?php } //Fin foreach cuantosPrecintosMontar ?>
                        
                        <!--
                        <div id="precinto-1-bloque">
                            <img src="<?php echo DIR_IMAGENES; ?>/teclado.png" alt="Mostrar teclado" tipo="<?php echo $puntoControl['TipoDato']; ?>" class="iconoTeclado tecladoDinamicoPrecinto" id="tecladoDinamicoPrecinto-1" contador="1" style="margin-left:0"/><input type="text" id="precinto-1" name="precinto-1" value="" class="campo comprimido nuevoValor precinto" contador="1" style="margin-bottom:5px;text-align:left;width:190px;margin-left: 5px;"/>
                            <div id="precinto-1-nuevo" contador="1"></div>
                        </div>
                        -->
                        
                        <input type="hidden" id="precintosContador" name="precintosContador" value="<?php echo $cuantosPrecintosMontar; ?>"/>
                        
                        <script>
                        $(document).ready(function(){
                        
                            $(document).on('click','.tecladoDinamicoPrecinto',function(){
                
                                var contador=$(this).attr('contador');
                                console.log('teclado contador: '+contador);
                            
                                $('#teclado').show();
                                $('#valor').val( $('#precinto-'+contador).val() );
                                $('#valorOculto').val( $('#precinto-'+contador).val() );
                                $('#enter').attr('campoValor','precinto-'+contador);
                                $('#enter').attr('forzarEnter','si');
                            
                            });
                        
                            $(document).on('change','.precinto',function(){
                                var contador;
                                var nuevoContador;
                                contador=$(this).attr('contador');
                                nuevoContador=parseInt(contador)+1;
                                var nuevoContenido='<div id="precinto-'+nuevoContador+'-bloque"><img src="<?php echo DIR_IMAGENES; ?>/teclado.png" alt="Mostrar teclado" tipo="<?php echo $puntoControl['TipoDato']; ?>" class="iconoTeclado tecladoDinamicoPrecinto" id="tecladoDinamicoPrecinto-'+nuevoContador+'" contador="'+nuevoContador+'" style="margin-left:0"/><input type="text" id="precinto-'+nuevoContador+'" name="precinto-'+nuevoContador+'" value="" class="campo comprimido nuevoValor precinto" contador="'+nuevoContador+'" style="margin-bottom:5px;text-align:left;width:190px;margin-left:5px;"/><div id="precinto-'+nuevoContador+'-nuevo" contador="'+nuevoContador+'"></div></div>';
                                console.log(nuevoContenido);
                                $('#precinto-'+contador+'-nuevo').html( nuevoContenido );
                                $('#precintosContador').val(nuevoContador);
                                $('#precinto-'+nuevoContador).focus();
                            });
                            
                        });
                        </script>
                    
					<?php } else { ?>
                
                    <img src="<?php echo DIR_IMAGENES; ?>/teclado.png" alt="Mostrar teclado" tipo="<?php echo $puntoControl['TipoDato']; ?>" class="iconoTeclado botonTecladoNuevoValor" id="tecladoNuevoValor<?php echo $clavePuntoControl; ?>" codigo="<?php echo $clavePuntoControl; ?>" style="margin-left:0"/>
                    <input type="text" name="nuevoValor<?php echo $clavePuntoControl; ?>" id="nuevoValor<?php echo $clavePuntoControl; ?>" class="campo comprimido nuevoValor cantidad <?php if($clavePuntoControl=='14-FIJO') { ?>validaMatriculaContenedor<?php } ?>" codigo="<?php echo $clavePuntoControl; ?>" value="<?php echo $puntoControl['NuevoValor']; ?>" style="text-align:left;width:190px;" tipo="<?php echo $puntoControl['TipoDato']; ?>" longitudObligatoria="<?php echo $puntoControl['LongitudObligatoria']; ?>" autocomplete="off"/>
                  <!-- 14-02-2023 quito disabled readonly por email JMA-->
                    
                    <?php } ?>
                
				<?php } //Fin si se puede actualizar dato ?>
                
              </td>
                
            <?php } ?>
                
                <td align="left">
                <input type="text" name="observaciones<?php echo $clavePuntoControl; ?>" id="observaciones<?php echo $clavePuntoControl; ?>" class="campo comprimido observaciones" codigo="<?php echo $clavePuntoControl; ?>" value="<?php echo $puntoControl['Observaciones']; ?>" style="text-align:left;width:190px;" autocomplete="off" <?php if(isset($puntoControl['ObservacionesObligatorias']) && $puntoControl['ObservacionesObligatorias']=='S') { ?>obligatorio="S"<?php } ?>/>
                <?php if(isset($puntoControl['ObservacionesObligatorias']) && $puntoControl['ObservacionesObligatorias']=='S') { ?>*<?php } ?>
                </td>
                
                <?php if($hayAlgunoFotos) { ?>
                <td align="left">
				<?php if($puntoControl['Fotos']) { ?>
                	<img id="botonCamara<?php echo $clavePuntoControl; ?>" src="<?php echo DIR_IMAGENES; ?>/botones/camera.png" alt="Tomar fotografías" class="icono reducido botonFotos" codigo="<?php echo $clavePuntoControl; ?>" style="vertical-align:middle;"/>
                    <?php
					//09-02-2023 cargamos la cabecera de definicion de fotos para obtener el num de fotos cargadas
					//$procedencia=$procedencia;
					$proceso=$procesoFotos;
					$subProceso='puntosControl';
					$codigo=$clavePuntoControl;
					include('contenidos/fotos-definicion-datos.php');
					if($contadorSubidas) echo $contadorSubidas;
					?>
				<?php } ?>
                </td>
                <?php } ?>
                
                <?php if($hayAlgunoInfo) { ?>
                <td><?php if($puntoControl['Info']) { ?><img id="botonInfo<?php echo$clavePuntoControl; ?>" src="<?php echo DIR_IMAGENES; ?>/botones/info.png" alt="Info" class="icono reducido botonInfo" contenido="<?php echo $puntoControl['Info']; ?>"/><?php } ?></td>
                <?php } ?>
                
            </tr>
        
        <?php } //Fin foreach puntos de control?>
        
	</table>
    
    <?php
	//Por si estos valores ya estuvieran grabados en session de grabaciones anteriores
	if($_SESSION['puntosControl']['observacionesTransporte']) $observaciones=$_SESSION['puntosControl']['observacionesTransporte'];
	if($_SESSION['puntosControl']['incidenciasTransporte']) $incidencias=$_SESSION['puntosControl']['incidenciasTransporte'];
	?>
  
	<p><img src="<?php echo DIR_IMAGENES; ?>/iconos/informacion.png" style="width:25px;margin-bottom:-4px;margin-right:10px"/> Observaciones transporte:<br />
	<textarea name="observacionesTransporte" id="observacionesTransporte" rows="3" class="campo campoMultilinea" style="width:935px;text-align:left;margin-top:10px"><?php echo $observaciones; ?></textarea>
	</p>

	<p><img src="<?php echo DIR_IMAGENES; ?>/iconos/informacion.png" style="width:25px;margin-bottom:-4px;margin-right:10px"/> Incidencias transporte:<br />
	<textarea name="incidenciasTransporte" id="incidenciasTransporte" rows="3" class="campo campoMultilinea" style="width:935px;text-align:left;margin-top:10px"><?php echo $incidencias; ?></textarea>
	</p>


		<input name="enviarFormulario" id="enviarFormulario" type="hidden" value=""/>
        <input name="fotosCodigo" id="fotosCodigo" type="hidden" value=""/>
        
        <p>
          <input type="button" id="botonEnviar" name="botonEnviar" value="ENVIAR" class="boton"/>
        </p>
  <p><input type="button" id="botonVolver" name="botonVolver" value="Volver" class="boton reducido"/></p>
        
        </form>
        
        <script>
		
		$(document).ready(function() {
		
			$('.botonFotos').on('click',function(){
			
				codigo=$(this).attr('codigo');
				
				if( ! $('input:radio[name=opcion'+codigo+']:checked').val() ) {
				
					alert('Antes de tomar fotografías, debes indicar el Estado de este punto de control.',null,'advertencia');
					
				}
				else {
				
					$('#fotosCodigo').val( codigo );
					
					enviaFormulario(0);
					
				}
			
			});
		
			
		
			$('.botonInfo').on('click',function() {
			
				var contenido=$(this).attr('contenido');
				
				$('#popupInfoContenido').html(contenido);
				$('#popupInfo').show();
			
			});
			
			$('#botonCerrarInfo').on('click',function() {
			
				$('#popupInfoContenido').html('');
				$('#popupInfo').hide();
			
			});
		
			$(document).on('click','.campoMultilinea',function(){
		
				var idCampo=$(this).attr('id');
				
				$('#tecladoMultilinea').show();
				$('#valorTecladoMultilinea').val( $(this).val() );
				$('#enterTecladoMultilinea').attr('campoValor', idCampo );
				$('#enterTecladoMultilinea').attr('forzarEnter','no');
				
			});
			
			$('#botonEnviar').on('click',function(){
			
				validaCampos();
			
			});
			
			$('#botonVolver').on('click',function(){
			
				$('#popupCargando').show();
				window.location='<?php echo $pantallaOrigen; ?>';
			
			});
			
			$('.checkPuntoControl').on('click',function(){
			
				var codigo=$(this).attr('codigo');
				var campo=$('#nuevoValor'+codigo);
				
				//14-02-2023 quitamos la no editabilidad
				/*
				if( $(this).val()=='NOOK') {
					campo.val('');
					campo.prop('readonly',true);
					campo.prop('disabled',true);
					campo.removeClass('campoError');
				}
				else {
					campo.prop('readonly',false);
					campo.prop('disabled',false);
				}
				*/
				//$('#observaciones'+codigo).focus();
			
			});
			
			$('.botonTecladoNuevoValor').on('click',function(){
			
				var codigo=$(this).attr('codigo');
				var tipo=$(this).attr('tipo');
				
				if( !$('#nuevoValor'+codigo).prop('readonly') ) {
				
					//alert(tipo);
					
					if(tipo=='TXT') {
						$('#teclado').show();
						$('#valor').val( $('#nuevoValor'+codigo).val() );
						$('#valorOculto').val( $('#nuevoValor'+codigo).val() );
						$('#enter').attr('campoValor','nuevoValor'+codigo);
						$('#enter').attr('forzarEnter','si');
					}
					if(tipo=='NUM' || tipo=='NUMDECI') {
						$('#calculadora').show();
						$('#valorCalculadora').val( $('#nuevoValor'+codigo).val() );
						$('#enterCalculadora').attr('campoValor','nuevoValor'+codigo);
						$('#enterCalculadora').attr('forzarEnter','si');
					}
					
				}
			
			});
			
			$('.nuevoValor').on('change',function(){
			
				var campo=$(this);	
					
				var tipo=campo.attr('tipo');
				var longitudObligatoria=parseInt(campo.attr('longitudObligatoria'));
				
				var valoresAceptados = /^[0-9.]+$/;
				
				var errorValidacionMatricula='';
				if( campo.hasClass('validaMatriculaContenedor') && campo.val()!='' ) errorValidacionMatricula=validaMatricula(campo.val());
				
				if( errorValidacionMatricula !='' ) {
					alert('Error: '+errorValidacionMatricula,null,'error')
					.done(function(){
						campo.addClass('campoError');
						campo.focus();
					});
				}
				else if(longitudObligatoria>0 && campo.val().length!=longitudObligatoria) {
					alert('Atención, la longitud de este valor debe ser: '+longitudObligatoria,null,'error')
					.done(function(){
						campo.addClass('campoError');
						campo.focus();
					});
				}
				else if( (tipo=='NUM' || tipo=='NUMDECI') && !campo.val().match(valoresAceptados) ) {
					alert('Atención, el valor informado debe ser un número.',null,'error')
					.done(function(){
						campo.val('');
						campo.addClass('campoError');
						campo.focus();
					});
				}
				else if(tipo=='NUM' && campo.val().indexOf('.')!=-1) {
					alert('Atención, el número informado debe ser entero.',null,'error')
					.done(function(){
						campo.addClass('campoError');
						campo.focus();
					});
				}
				else campo.removeClass('campoError');
				
			
			});
			
			$('.observaciones').on('click',function(){
			
				var codigo=$(this).attr('codigo');
			
				$('#teclado').show();
				$('#valor').val( $('#observaciones'+codigo).val() );
				$('#valorOculto').val( $('#observaciones'+codigo).val() );
				$('#enter').attr('campoValor','observaciones'+codigo);
			
			});
		
		});
		
		</script>
        
<script> 

function validaCampos() {
	
	var todosCheckeados=true;
	var hayNoOk=0;
	var puntosNoOk='';
	var mensajeNoOk;
	var hayErrores=false;
	var hayMatriculaContenedorConError=false;
	var hayObservacionesObligatoriasNoInformadas=false;
			
	$('.lineaPuntoControl').each(function(){
	
		console.log('Se revisa la linea id '+id);
		
		var id=$(this).attr('id');
		
		if( !$('#opcion'+id+'ok').is(':checked') && !$('#opcion'+id+'nook').is(':checked') ) todosCheckeados=false;
		
		if( $('#nuevoValor'+id).hasClass('campoError') || $('#observaciones'+id).hasClass('campoError') ) hayErrores=true;
		
		if( $('#opcion'+id+'nook').is(':checked') && $('#opcion'+id+'nook').attr('generaincidencia')=='S' ) {
			hayNoOk++;
			if(puntosNoOk!='') puntosNoOk+=' , '
			puntosNoOk+='<strong>'+$('#descripcion'+id).html()+'</strong>';
		}
		
		if( $('#observaciones'+id).val()=='' && $('#observaciones'+id).attr('obligatorio')=='S' ) {
			$('#observaciones'+id).addClass('campoError');
			hayObservacionesObligatoriasNoInformadas=true;
		}
		else {
			$('#observaciones'+id).removeClass('campoError');
		}
		
	});
	
	if(hayNoOk==1) mensajeNoOk='ATENCIÓN: El punto de control '+puntosNoOk+' se ha marcado NO ok y genera incidencia. No podrás empezar con la <?php echo $evento; ?> hasta que esté Ok';
	else if(hayNoOk>1) mensajeNoOk='ATENCIÓN: Los puntos de control '+puntosNoOk+' se han marcado NO ok y generan incidencia. No podrás empezar con la <?php echo $evento; ?> hasta que estén Ok';
	
	//console.log('hayErrores: '+hayErrores);
	//console.log('todosCheckeados: '+todosCheckeados);
	//console.log('hayNoOk: '+hayNoOk);
	
	if( hayErrores ) {
		alert('Algunos de los datos informados en los puntos de control tienen errores.',null,'error')
		.done( function() {
			var posicion = $('#bloquePuntosControl').offset().top;
			$('html,body').animate({scrollTop:posicion});
		});
	}
	if( hayObservacionesObligatoriasNoInformadas ) {
		alert('Hay observaciones obligatorias en algunos puntos de control.',null,'error')
		.done( function() {
			var posicion = $('#bloquePuntosControl').offset().top;
			$('html,body').animate({scrollTop:posicion});
		});
	}
	else if( hayNoOk ) {
		//confirm('ATENCIÓN: No se podrá comenzar la operativa<br>mientras el control de la <?php echo $evento; ?> tenga alguna incidencia.','advertencia','Enviar control','Volver a revisar')
		confirm(mensajeNoOk)
		.done( function() {
			enviaFormulario(1);
		});
	}
	else if( !todosCheckeados ){
		confirm('ATENCIÓN: No se han revisado todos los puntos de control.<br>Recuerda que para poder iniciar la <?php echo $evento; ?> tienen que estar todos los puntos revisados.','advertencia','Enviar control','Volver a revisar')
		.done( function() {
			enviaFormulario(1);
		});
	}
	else {
		enviaFormulario(1);
	}

}

function puntoControlAutomatico(identificador,valor,texto) {

	if(valor===null) {
		$('#opcion'+identificador+'ok').prop('checked',false);
		$('#opcion'+identificador+'nook').prop('checked',false);
	}
	else if(valor) {
		$('#opcion'+identificador+'ok').prop('checked',true);
	}
	else {
		$('#opcion'+identificador+'nook').prop('checked',true);
	}

	if(texto) $('#observaciones'+identificador).val(texto);
	else $('#observaciones'+identificador).val('');

}



function enviaFormulario(enviar) {

	$('#enviarFormulario').val(enviar);

	$('#popupCargando').show();
	$('#formulario').submit();
	
}



</script>

<?php } //Fin if(!$envioOk) ?>

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