﻿var objTxtNick;
var objTxtNombre;
var objTxtApellidos;
var objDdpSexo;
var objTxtPassword;
var objTxtPasswordRepetir;
var objTxtEmail;
var objDdpPais;
var objTxtCiudad;
var objTxtCodPostal;
var objDdpDiaFechaNacimiento;
var objDdpMesFechaNacimiento;
var objDdpAnioFechaNacimiento;
var objFileUploadImagen;
var objTxtPrefijoMovil;
var objTxtTelMovil;
var objChkEnviarPassword;
var objChkEnviarNewsletter;


function validateEmail(elementValue){
   var emailPattern = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/;
   return emailPattern.test(elementValue);
 }
 
function validateDate(fechaString) {
    //mm/dd/yyyy
    var bReturn = true;
    var RegExPattern = /^(?=\d)(?:(?:(?:(?:(?:0?[13578]|1[02])(\/|-|\.)31)\1|(?:(?:0?[1,3-9]|1[0-2])(\/|-|\.)(?:29|30)\2))(?:(?:1[6-9]|[2-9]\d)?\d{2})|(?:0?2(\/|-|\.)29\3(?:(?:(?:1[6-9]|[2-9]\d)?(?:0[48]|[2468][048]|[13579][26])|(?:(?:16|[2468][048]|[3579][26])00))))|(?:(?:0?[1-9])|(?:1[0-2]))(\/|-|\.)(?:0?[1-9]|1\d|2[0-8])\4(?:(?:1[6-9]|[2-9]\d)?\d{2}))($|\ (?=\d)))?(((0?[1-9]|1[012])(:[0-5]\d){0,2}(\ [AP]M))|([01]\d|2[0-3])(:[0-5]\d){1,2})?$/;
    if (!((fechaString.match(RegExPattern)) && (fechaString!=''))) {
        bReturn=false
    } 
    
    return bReturn;
}




function compFormRegistro()
{
    var bReturn=true;
  
    if (!objRadioMayorEdad[0].checked && !objRadioMayorEdad[1].checked)
    {
        alert(getTexto('F_REGISTRO_JS_MAYOREDAD'));
        objRadioMayorEdad[0].focus();
        bReturn=false
    }
    
    if (objRadioMayorEdad[1].checked && bReturn)
    {
        alert(getTexto('F_REGISTRO_JS_MAYOREDAD_NO'));
        bReturn=false
    }
  
    if (objTxtNick.value.length==0 && bReturn)
    {
        alert(getTexto('F_REGISTRO_JS_NICK'));
        objTxtNick.focus();
        bReturn=false
    }
     if (objTxtPassword.value.length==0 && bReturn)
    {
        alert(getTexto('F_REGISTRO_JS_PASSWORD'));
        objTxtPassword.focus();
        bReturn=false
    }
    if (objTxtPasswordRepetir.value.length==0 && bReturn)
    {
        alert(getTexto('F_REGISTRO_JS_PASSWORD_REP'));
        objTxtPasswordRepetir.focus();
        bReturn=false
    } 
    if (objTxtPassword.value!=objTxtPasswordRepetir.value && bReturn)
    {
        alert(getTexto('F_REGISTRO_JS_PASSWORDS_NOT_EQUALS'));
        objTxtPasswordRepetir.focus();
        bReturn=false
    }
   
    if (objTxtNombre.value.length==0 && bReturn)
    {
        alert(getTexto('F_REGISTRO_JS_NOMBRE'));
        objTxtNombre.focus();
        bReturn=false
    }
      
    if (objTxtApellidos.value.length==0 && bReturn)
    {
        alert(getTexto('F_REGISTRO_JS_APELLIDOS'));
        objTxtApellidos.focus();
        bReturn=false
    } 
    
    if (objTxtEmail.value.length==0 && bReturn)
    {
        alert(getTexto('F_REGISTRO_JS_EMAIL'));
        objTxtEmail.focus();
        bReturn=false
    }
    
    if ((!validateEmail(objTxtEmail.value)) && bReturn)
    {
        alert(getTexto('F_REGISTRO_JS_EMAIL_BAD'));
        objTxtEmail.focus();
        bReturn=false
    }
    
    if (objDdpSexo.options[objDdpSexo.selectedIndex].value=='' && bReturn)
    {
        alert(getTexto('F_REGISTRO_JS_SEXO'));
        objDdpSexo.focus();
        bReturn=false
    }
    
    if ((objDdpDiaFechaNacimiento.options[objDdpDiaFechaNacimiento.selectedIndex].value=='-1' || 
        objDdpMesFechaNacimiento.options[objDdpMesFechaNacimiento.selectedIndex].value=='-1' ||
        objDdpAnioFechaNacimiento.options[objDdpAnioFechaNacimiento.selectedIndex].value=='-1' ) && 
        bReturn)
    {
        alert(getTexto('F_REGISTRO_JS_DATE'));
        objDdpDiaFechaNacimiento.focus();
        bReturn=false
    }else
    {
        if (bReturn)
        {
        
            var cadena=objDdpMesFechaNacimiento.options[objDdpMesFechaNacimiento.selectedIndex].value + '/' + 
                       objDdpDiaFechaNacimiento.options[objDdpDiaFechaNacimiento.selectedIndex].value + '/' +
                       objDdpAnioFechaNacimiento.options[objDdpAnioFechaNacimiento.selectedIndex].value;
            if (!validateDate(cadena))
            {
            alert(getTexto('F_REGISTRO_JS_DATE_BAD'));
            objDdpDiaFechaNacimiento.focus();
        bReturn=false
            }
        }
    } 
   
    if (objTxtCiudad.value.length==0 && bReturn)
    {
        alert(getTexto('F_REGISTRO_JS_CIUDAD'));
        objTxtCiudad.focus();
        bReturn=false
    }
    
    if (objDdpPais.options[objDdpPais.selectedIndex].value=='-1' && bReturn)
    {
        alert(getTexto('F_REGISTRO_JS_PAIS'));
        objDdpPais.focus();
        bReturn=false
    }
    
    if (objTxtCodPostal.value.length==0 && bReturn)
    {
        alert(getTexto('F_REGISTRO_JS_CP'));
        objTxtCodPostal.focus();
        bReturn=false
    }
    if (bReturn)
    {
        var objMovil=getMovilFromIdPais(parseInt(objDdpPais.options[objDdpPais.selectedIndex].value));
       if (objMovil!=null)
       {
            switch (objMovil.cCodPais)
            { 
                case 34: // ESPAÑA
                    var regExpCodPostal1 = /^0[1-9]\d{3}$/;
	                var regExpCodPostal2 = /^[1-4]\d{4}$/;
	                var regExpCodPostal3 = /^5[02]\d{3}$/;
	                if (!regExpCodPostal1.test(objTxtCodPostal.value) &&
		                !regExpCodPostal2.test(objTxtCodPostal.value) &&
		                !regExpCodPostal3.test(objTxtCodPostal.value)){
		                bReturn = false;				
		                objTxtCodPostal.focus();
                        alert(getTexto('F_REGISTRO_JS_CP_BAD_ESP'));
	                }
                   break 
//                case 54: // ARGENTINA  
//                   var regExpCodPostal1 = /^[a-zA-Z]\d{4}$/;
//	                if (!regExpCodPostal1.test(objTxtCodPostal.value)){
//		                bReturn = false;				
//		                objTxtCodPostal.focus();
//                        alert(getTexto('F_REGISTRO_JS_CP_BAD_ARG'));
//	                }
//                   break 
                case 1:  // USA 
                    var regExpCodPostal1 = /^\d{5}$/;
	                if (!regExpCodPostal1.test(objTxtCodPostal.value)){
		                bReturn = false;				
		                objTxtCodPostal.focus();
                        alert(getTexto('F_REGISTRO_JS_CP_BAD_USA'));
	                }
                   break 
                case 52: // MEXICO
                    var regExpCodPostal1 = /^\d{5}$/;
	                if (!regExpCodPostal1.test(objTxtCodPostal.value)){
		                bReturn = false;				
		                objTxtCodPostal.focus();
                        alert(getTexto('F_REGISTRO_JS_CP_BAD_MEX'));
	                }
                    break;   
                default: 
            }
                
        } 
    
       
	}
    
    
    if (objTxtTelMovil.value.length==0 && bReturn)
    {
        alert(getTexto('F_REGISTRO_JS_PHONE'));
        objTxtTelMovil.focus();
        bReturn=false
    }
    
    if (bReturn )
    {
        var objMovil=getMovilFromCodPais(objTxtPrefijoMovil.value);
        if (objMovil==null)
        {
            alert(getTexto('F_REGISTRO_JS_PREFIJO'));
            objTxtPrefijoMovil.focus();
            bReturn=false
        }
    }
    
   
    if (objTxtTelMovil.value.length > 0 && bReturn )
    {
		var objMovil=getMovilFromCodPais(objTxtPrefijoMovil.value);
        
        switch (objMovil.cCodPais)
        { 
            case 34: // ESPAÑA
                var regExpTelf = /^[67]\d{8}$/;
		        if (!regExpTelf.test(objTxtTelMovil.value)){
			        bReturn = false;					
			        objTxtTelMovil.focus();
                    alert(getTexto('F_REGISTRO_JS_PHONE_BAD_ESP'));
		        }
               break 
            case 54: // ARGENTINA  
                var regExpTelf = /^15\d+$/;
		        if (!regExpTelf.test(objTxtTelMovil.value)){
			        bReturn = false;					
			        objTxtTelMovil.focus();
                    alert(getTexto('F_REGISTRO_JS_PHONE_BAD_ARG'));
		        }
               break 
            case 1:  // USA 
                var regExpTelf = /^\d+$/;
		        if (!regExpTelf.test(objTxtTelMovil.value)){
			        bReturn = false;					
			        objTxtTelMovil.focus();
                    alert(getTexto('F_REGISTRO_JS_PHONE_BAD_USA'));
		        }
               break 
            case 52: // MEXICO
                var regExpTelf = /^1\d+$/;
		        if (!regExpTelf.test(objTxtTelMovil.value)){
			        bReturn = false;					
			        objTxtTelMovil.focus();
                    alert(getTexto('F_REGISTRO_JS_PHONE_BAD_MEX'));
		        }
                break;   
            default: 
                var regExpTelf = /^\d+$/;
		        if (!regExpTelf.test(objTxtTelMovil.value)){
			        bReturn = false;					
			        objTxtTelMovil.focus();
                    alert(getTexto('F_REGISTRO_JS_PHONE_BAD_DEFAULT'));
		        }
        } 

		
	}
	
	 if (objTxtCaptcha.value.length==0 && bReturn)
    {
        alert(getTexto('F_REGISTRO_JS_CODIGO'));
        objTxtCaptcha.focus();
        bReturn=false
    }
	
	
	if (bReturn && (!objChkAceptarPolitica.checked))
    {
        alert (getTexto('F_REGISTRO_JS_PRIVACIDAD'));
        bReturn=false;
    }
   return bReturn;
}



function compFormEdicion()
{
    var bReturn=true;
  
  
  
  
    if (objTxtNick.value.length==0 && bReturn)
    {
        alert(getTexto('F_REGISTRO_JS_NICK'));
        objTxtNick.focus();
        bReturn=false;
    }
    
    
    if ( (objTxtNewPassword.value.length>0 || objTxtNewPassword2.value.length>0 ) && bReturn)
    {
        if (objTxtPassword.value.length==0 && bReturn)
        {
            alert(getTexto('F_REGISTRO_JS_PASSWORD_ANTERIOR'));
            objTxtPassword.focus();
            bReturn=false;
        }
        if (objTxtNewPassword.value.length==0 && bReturn)
        {
            alert(getTexto('F_REGISTRO_JS_PASSWORD_NUEVO'));
            objTxtNewPassword.focus();
            bReturn=false;
        } 
         if (objTxtNewPassword.value!=objTxtNewPassword2.value && bReturn)
        {
            alert(getTexto('F_REGISTRO_JS_PASSWORDS_NOT_EQUALS'));
            objTxtNewPassword.focus();
            bReturn=false;
        }
    }
   
    if (objTxtNombre.value.length==0 && bReturn)
    {
        alert(getTexto('F_REGISTRO_JS_NOMBRE'));
        objTxtNombre.focus();
        bReturn=false
    }
      
    if (objTxtApellidos.value.length==0 && bReturn)
    {
        alert(getTexto('F_REGISTRO_JS_APELLIDOS'));
        objTxtApellidos.focus();
        bReturn=false
    } 
    
    if (objTxtEmail.value.length==0 && bReturn)
    {
        alert(getTexto('F_REGISTRO_JS_EMAIL'));
        objTxtEmail.focus();
        bReturn=false
    }
    
    if ((!validateEmail(objTxtEmail.value)) && bReturn)
    {
        alert(getTexto('F_REGISTRO_JS_EMAIL_BAD'));
        objTxtEmail.focus();
        bReturn=false
    }
    
    if (objDdpSexo.options[objDdpSexo.selectedIndex].value=='' && bReturn)
    {
        alert(getTexto('F_REGISTRO_JS_SEXO'));
        objDdpSexo.focus();
        bReturn=false
    }
    
    if ((objDdpDiaFechaNacimiento.options[objDdpDiaFechaNacimiento.selectedIndex].value=='-1' || 
        objDdpMesFechaNacimiento.options[objDdpMesFechaNacimiento.selectedIndex].value=='-1' ||
        objDdpAnioFechaNacimiento.options[objDdpAnioFechaNacimiento.selectedIndex].value=='-1' ) && 
        bReturn)
    {
        alert(getTexto('F_REGISTRO_JS_DATE'));
        objDdpDiaFechaNacimiento.focus();
        bReturn=false
    }else
    {
        if (bReturn)
        {
        
            var cadena=objDdpMesFechaNacimiento.options[objDdpMesFechaNacimiento.selectedIndex].value + '/' + 
                       objDdpDiaFechaNacimiento.options[objDdpDiaFechaNacimiento.selectedIndex].value + '/' +
                       objDdpAnioFechaNacimiento.options[objDdpAnioFechaNacimiento.selectedIndex].value;
            if (!validateDate(cadena))
            {
            alert(getTexto('F_REGISTRO_JS_DATE_BAD'));
            objDdpDiaFechaNacimiento.focus();
        bReturn=false
            }
        }
    } 
   
    if (objTxtCiudad.value.length==0 && bReturn)
    {
        alert(getTexto('F_REGISTRO_JS_CIUDAD'));
        objTxtCiudad.focus();
        bReturn=false
    }
    
    if (objDdpPais.options[objDdpPais.selectedIndex].value=='-1' && bReturn)
    {
        alert(getTexto('F_REGISTRO_JS_PAIS'));
        objDdpPais.focus();
        bReturn=false
    }
    
    if (objTxtCodPostal.value.length==0 && bReturn)
    {
        alert(getTexto('F_REGISTRO_JS_CP'));
        objTxtCodPostal.focus();
        bReturn=false
    }
    if (bReturn)
    {
        var objMovil=getMovilFromIdPais(parseInt(objDdpPais.options[objDdpPais.selectedIndex].value));
       if (objMovil!=null)
       {
            switch (objMovil.cCodPais)
            { 
                case 34: // ESPAÑA
                    var regExpCodPostal1 = /^0[1-9]\d{3}$/;
	                var regExpCodPostal2 = /^[1-4]\d{4}$/;
	                var regExpCodPostal3 = /^5[02]\d{3}$/;
	                if (!regExpCodPostal1.test(objTxtCodPostal.value) &&
		                !regExpCodPostal2.test(objTxtCodPostal.value) &&
		                !regExpCodPostal3.test(objTxtCodPostal.value)){
		                bReturn = false;				
		                objTxtCodPostal.focus();
                        alert(getTexto('F_REGISTRO_JS_CP_BAD_ESP'));
	                }
                   break 
//                case 54: // ARGENTINA  
//                   var regExpCodPostal1 = /^[a-zA-Z]\d{4}$/;
//	                if (!regExpCodPostal1.test(objTxtCodPostal.value)){
//		                bReturn = false;				
//		                objTxtCodPostal.focus();
//                        alert(getTexto('F_REGISTRO_JS_CP_BAD_ARG'));
//	                }
//                   break 
                case 1:  // USA 
                    var regExpCodPostal1 = /^\d{5}$/;
	                if (!regExpCodPostal1.test(objTxtCodPostal.value)){
		                bReturn = false;				
		                objTxtCodPostal.focus();
                        alert(getTexto('F_REGISTRO_JS_CP_BAD_USA'));
	                }
                   break 
                case 52: // MEXICO
                    var regExpCodPostal1 = /^\d{5}$/;
	                if (!regExpCodPostal1.test(objTxtCodPostal.value)){
		                bReturn = false;				
		                objTxtCodPostal.focus();
                        alert(getTexto('F_REGISTRO_JS_CP_BAD_MEX'));
	                }
                    break;   
                default: 
            }
                
        } 
    
       
	}
    
    
    if (objTxtTelMovil.value.length==0 && bReturn)
    {
        alert(getTexto('F_REGISTRO_JS_PHONE'));
        objTxtTelMovil.focus();
        bReturn=false
    }
    
    if (bReturn )
    {
        var objMovil=getMovilFromCodPais(objTxtPrefijoMovil.value);
        if (objMovil==null)
        {
            alert(getTexto('F_REGISTRO_JS_PREFIJO'));
            objTxtPrefijoMovil.focus();
            bReturn=false
        }
    }
    
   
    if (objTxtTelMovil.value.length > 0 && bReturn )
    {
		var objMovil=getMovilFromCodPais(objTxtPrefijoMovil.value);
        
        switch (objMovil.cCodPais)
        { 
            case 34: // ESPAÑA
                var regExpTelf = /^[67]\d{8}$/;
		        if (!regExpTelf.test(objTxtTelMovil.value)){
			        bReturn = false;					
			        objTxtTelMovil.focus();
                    alert(getTexto('F_REGISTRO_JS_PHONE_BAD_ESP'));
		        }
               break 
            case 54: // ARGENTINA  
                var regExpTelf = /^15\d+$/;
		        if (!regExpTelf.test(objTxtTelMovil.value)){
			        bReturn = false;					
			        objTxtTelMovil.focus();
                    alert(getTexto('F_REGISTRO_JS_PHONE_BAD_ARG'));
		        }
               break 
            case 1:  // USA 
                var regExpTelf = /^\d+$/;
		        if (!regExpTelf.test(objTxtTelMovil.value)){
			        bReturn = false;					
			        objTxtTelMovil.focus();
                    alert(getTexto('F_REGISTRO_JS_PHONE_BAD_USA'));
		        }
               break 
            case 52: // MEXICO
                var regExpTelf = /^1\d+$/;
		        if (!regExpTelf.test(objTxtTelMovil.value)){
			        bReturn = false;					
			        objTxtTelMovil.focus();
                    alert(getTexto('F_REGISTRO_JS_PHONE_BAD_MEX'));
		        }
                break;   
            default: 
                var regExpTelf = /^\d+$/;
		        if (!regExpTelf.test(objTxtTelMovil.value)){
			        bReturn = false;					
			        objTxtTelMovil.focus();
                    alert(getTexto('F_REGISTRO_JS_PHONE_BAD_DEFAULT'));
		        }
        } 

		
	}
	
	if (objTxtNewPassword.value.length>0 || objTxtNewPassword2.value.length>0)
	{
	    if (objTxtPassword.value.length>0 || 
	        objTxtNewPassword.value.length>0 || 
	        objTxtNewPassword2.value.length>0)
        {
            if (objTxtPassword.value.length>0 && 
	            objTxtNewPassword.value.length>0 && 
	            objTxtNewPassword2.value.length>0)
            {
               if (objTxtNewPassword.value!=objTxtNewPassword2.value)
                {
                    alert ('La contraseña nueva y su repetición no coinciden.');
                    bReturn=false;
                }
            }else
            {
                alert ('Si deseas cambiar tu contraseña debes rellenar la contraseña actual, la nueva y la repetición de la nueva.');
                bReturn=false;
            }
        }else
        {
            alert ('Debes rellenar la contraseña actual, la nueva y la repetición de la nueva.');
            bReturn=false;
        }
    }
    
    if (bReturn && (!objChkAceptarPolitica.checked))
    {
        alert ('Debes leer y aceptar la política de privacidad.');
        bReturn=false;
    }
	
    return bReturn;
}

function compFormPassword()
{
    var bReturn=true;
  
    if (objTxtPasswordOld.value.length==0 && bReturn)
    {
        alert('No has rellenado el campo Clave anterior.');
        bReturn=false
    }
    if (objTxtPassword.value.length==0 && bReturn)
    {
        alert('No has rellenado el campo Clave.');
        bReturn=false
    }
    if (objTxtPasswordRepetir.value.length==0 && bReturn)
    {
        alert('No has rellenado la repetición de la Clave.');
        bReturn=false
    } 
    if (objTxtPassword.value!=objTxtPasswordRepetir.value && bReturn)
    {
        alert('La clave y su repetición no son iguales.');
        bReturn=false
    }
 
    
   return bReturn;
}