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

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

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

?><h2>Cambiar contraseña</h2><?php

$cambioOk=false;

if ($_POST['boton']=='Cambiar Contraseña') {

	//if( $_POST['viejaClave'] && $_POST['nuevaClave'] && $_POST['nuevaClaveRepeticion'] && $_POST['nuevaClave']==$_POST['nuevaClaveRepeticion'] ) {
	if( $_POST['nuevaClave'] && $_POST['nuevaClaveRepeticion'] && $_POST['nuevaClave']==$_POST['nuevaClaveRepeticion'] ) {
	
		$peticion='VALIDARUSUARIO#'.$_SESSION['empresa'].'#'.$_SESSION['usuario']['Usuario'].'#'.$_POST['viejaClave'];
		
		$resultado=PedirDatos($wsUsuario,$wsClave,$wsEmpresa,$peticion);
		$acceso=$resultado[0];
		
		if($_GET['traza']=='si') {
			echo "<p>".$peticion."</p>";
			print_r($resultado);
		}
		
		if($acceso['Permitido']=='S') {
		
			$peticion='ActualizaPass#'.$_SESSION['empresa'].'#'.$_SESSION['usuario']['Usuario'].'#'.$_POST['nuevaClave'];
			$resultado=PedirDatos($wsUsuario,$wsClave,$wsEmpresa,$peticion);
			
			if($resultado[0]['Usuario']==$_SESSION['usuario']['Usuario']) {
				$cambioOk=true;
				?><p>Tu contraseña ha sido cambiada correctamente.</p><?php
			}
		
		}
		else { ?><p class="error"><strong>Error:</strong> Tu contraseña actual no es válida.</p><?php }
	
	}
	else { ?><p class="error"><strong>Error:</strong> Las contraseñas no coinciden.</p><?php }

}


if(!$cambioOk) {
?>

<form id="formulario" name="formulario" method="post" action="">
	<p>Introduce tu contraseña actual:</p>
    <input name="viejaClave" type="password" id="viejaClave" size="10" maxlength="11" class="campo clave"/></p>
    <p>Nueva contraseña:</p>
    <input name="nuevaClave" type="password" id="nuevaClave" size="10" maxlength="11" class="campo clave"/></p>
    <p>Repite tu nueva contraseña:</p>
    <input name="nuevaClaveRepeticion" type="password" id="nuevaClaveRepeticion" size="10" maxlength="11" class="campo clave"/></p>
    <p><input type="submit" name="boton" id="boton" value="Cambiar Contraseña" class="boton" onclick="return validaRepeticion()"/></p>
	<p class="mini">Tu nueva contraseña debe tener una longitud mínima de 8 caracteres y contener, al menos, una letra minúscula, una mayúscula y un número.</p>
</form>
    
<script>
    
    function validaRepeticion() {
    
		var nuevaClave=$('#nuevaClave').val();
		var nuevaClaveRepeticion=$('#nuevaClaveRepeticion').val();
	
        if( nuevaClave=='' ) {
			alert("ERROR: Por favor, elige una nueva contraseña.",$('#nuevaClave'),'error');
            $('#nuevaClave').addClass("error");
            return false;
		}
		else if( nuevaClave.length < 8 ) {
			alert("ERROR: La contraseña debe tener al menos 8 caracteres.",$('#nuevaClave'),'error');
            $('#nuevaClave').addClass("error");
            return false;
		}
		else if( !nuevaClave.match(/[a-z]/) ) {
			alert("ERROR: La contraseña debe contener alguna letra minúscula.",$('#nuevaClave'),'error');
            $('#nuevaClave').addClass("error");
            return false;
		}
		else if( !nuevaClave.match(/[A-Z]/) ) {
			alert("ERROR: La contraseña debe contener alguna letra mayúscula.",$('#nuevaClave'),'error');
            $('#nuevaClave').addClass("error");
            return false;
		}
		else if( !nuevaClave.match(/\d/) ) {
			alert("ERROR: La contraseña debe contener algún número.",$('#nuevaClave'),'error');
            $('#nuevaClave').addClass("error");
            return false;
		}
		else if( nuevaClaveRepeticion=='' ) {
			alert("ERROR: Es necesario repetir la contraseña por seguridad.",$('#nuevaClaveRepeticion'),'error');
            $('#nuevaClaveRepeticion').addClass("error");
            return false
		}
		else if( nuevaClave != nuevaClaveRepeticion ) {
			alert("ERROR: Las dos contraseñas no coinciden.<br>Por favor, inténtalo de nuevo.",$('#nuevaClaveRepeticion'),'error');
			$('#nuevaClaveRepeticion').addClass("error");
            return false
		}
		else {
            $('#popupCargando').show();
            return true;
        }
		
	}
	

	$(document).ready(function() {
	
		 $('.clave').on("click",function(e) {
			
				$('#teclado').show();
				
				var cadena='';
				for(var i=1;i<=$(this).val().length;i++) cadena=cadena+'*';
				
				//$('#valor').val( $(this).val() );
				$('#valor').val( cadena );
				
				$('#valorOculto').val( $(this).val() );
				$('#enter').attr('campoValor',$(this).attr('id'));
				$('#enter').attr('oculto','si');
			
			});
			
	});

</script>

<?php
}

$esperarCarga=false;

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