// JavaScript Document
<!--

//Definir validaciones a ejecutar en cada pagina a utilizar

/*var validaciones = new Array();

validaciones[0]=["document.frmRegistro.nombre","noEnBlanco"];
validaciones[1]=["document.frmRegistro.apellido","noEnBlanco"];
validaciones[2]=["document.frmRegistro.edad","esNumero"];
validaciones[3]=["document.frmRegistro.sexo",""];//esChecked
validaciones[4]=["document.frmRegistro.direccion","noEnBlanco"];
validaciones[5]=["document.frmRegistro.login","noEnBlanco"];//correoValido
validaciones[6]=["document.frmRegistro.password","noEnBlanco"];
validaciones[7]=["document.frmRegistro.password2","noEnBlanco"];
validaciones[8]=["document.frmRegistro.tipoSusc","esSeleccionado"];
validaciones[9]=["document.frmRegistro.montoSusc",""];
validaciones[10]=["document.frmRegistro.cedula","esNumero"];
validaciones[11]=["document.frmRegistro.tarjeta","noEnBlanco"];
validaciones[12]=["document.frmRegistro.nroTarjeta","esNumero"];
validaciones[13]=["document.frmRegistro.fechaVenc","noEnBlanco"];
validaciones[14]=["document.frmRegistro.codSeg","esNumero"];
*/
function esVacio(s)
{
if (s == null || s.length == 0)
return true;
}

function correoElectronico(campo)
{
var s = campo.value;
if (esVacio(s))
	{
	alert("El campo e-mail no puede quedar vacio");
	campo.focus();
	return false;
	}

//Expresion regular
//Invocar el método test del obj RegExp sobre el literal de expresión regular(conversion automtica)
if (/[^@]+@\w+/.test(s))
	return true;
	alert("El campo e-mail no tiene un formato valido");
	campo.focus();
	return false;
}
function esChecked(campo)
{
var s = "no"; 	
var opciones="";
for ( var i = 0; i < campo.length; i++ ) { 
	opciones=opciones+"- "+campo[i].value+"\n";
	if ( campo[i].checked ) { 
		s= "si"; 
		//window.alert("Ha seleccionado: \n" + campo[i].value); 
		return true;
	} 
} 
if ( s == "no" ){ 
	window.alert("Debe seleccionar una opcion: \n" + opciones); 
	return false;
} 	
}
function esSoloNumero(campo)
{
var s = campo.value;
var n = campo.name;

	if (!(/^-?\d+$/.test(s)))
	{
		alert("El campo  " + campo.name + " debe contener solamente numeros");
		campo.value = "";
		campo.focus();
		return false;
	}
return true;

}
function isInteger(campo)
{
var s = campo.value;
var n = campo.name;

if (esVacio(s))
{
alert("El campo " + campo.name + " no puede quedar vacio");
campo.focus();
return false;
}

if (!(/^-?\d+$/.test(s)))
{
alert("El campo  " + campo.name + " debe contener solamente numeros");
campo.value = "";
campo.focus();
return false;
}
if(n=="codSeg"){
	//alert("El campo contiene " + campo.value.length + "  caracter(es) y es el del codigo de seguridad de la tarjeta");
	if(!(campo.value.length == 3)){
		alert("El campo  código de seguridad debe contener solamente  los últimos 3 digitos");
		campo.value = "";
		campo.focus();
		return false;
	}
}
if(n=="edad"){
	if(s < 18){
		alert("Para realizar su suscripción Ud. debe ser mayor de edad");
		campo.focus();
		return false;
	}
}

return true;

}
//Si no se ha seleccionado un tipo de suscripcion
/*
function SelectSusc(campo)
{
	if(campo.selectedIndex == 0)
	{
		alert("Es obligatorio elegir un tipo de suscripción " + campo.selectedIndex );
		campo.focus();
		return false;
	}
}*/


function validar()
{
var i;
var chequeo;
var campo;
//var s = campo.value;
//var n = campo.name;
for (i = 0; i < validaciones.length; i++)
{
campo = eval(validaciones[i][0]);
chequeo= validaciones[i][1];
  switch (chequeo)
  {
	case 'noEnBlanco': if (esVacio(campo.value))
	{
		alert("El campo " + campo.name + " no puede quedar vacio");
		campo.focus();
		return false;
	}
	break;
	
	case 'correoValido': if (!correoElectronico(campo))
		return false;
		break;

	case 'esNumero': if (!isInteger(campo))
		return false;
		break;
	case 'esSoloNumero': if (!esSoloNumero(campo))
		return false;
		break;
	/*case 'esSeleccionado': if(!SelectSusc(campo.value))
		return false;
		break;	*/
	case 'esChecked': if(!esChecked(campo))
		//alert("Del campo " + campo.name + " debe seleccionar una opción");
		//campo.focus();
		return false;
   }
 }
	return true;
}

function funcionMontoSusc(indice)
	{
		if(document.frmRegistro.tipoSusc.selectedIndex == 0)
			{
				alert("Es obligatorio elegir un tipo de suscripción");
				document.frmRegistro.tipoSusc.focus();
		}else
			{
				var valorMonto = new Array(0.0,10000.00,50000.00,80000.00);
				switch (indice){
				case 'Mensual':
					this.document.frmRegistro.montoSusc.value = valorMonto[1];
					document.frmRegistro.cedula.focus();
					break;
				case 'Semestral':
					this.document.frmRegistro.montoSusc.value = valorMonto[2];
					document.frmRegistro.cedula.focus();
					break;
				case 'Anual':
					this.document.frmRegistro.montoSusc.value = valorMonto[3];
					document.frmRegistro.cedula.focus();
					break;
				default:
					
					document.frmRegistro.tipoSusc.focus();
					break;
				}
				
		}
	}
	function funVerifiPass()
	{
	var vacio = "";
		if(document.frmRegistro.password.value != document.frmRegistro.password2.value){
			alert("Advertencia, para continuar debe introducir el mismo password en la casilla de confirmación");
			this.document.frmRegistro.password.value = vacio;
			this.document.frmRegistro.password2.value = vacio;
			document.frmRegistro.password.focus();
		}else
		document.frmRegistro.tipoSusc.focus();
	}
//Tiene datos el campo fecha
/*	function tieneDatos(campo) { 
 		for (var i=0; i<campo; i++) { 
   			if ((" \t\n\r").indexOf(campo.charAt(i))==-1) return true; 
   		} 
 		return false; 
	}
//funcion validar fecha
	function esFecha(frmRegistro.fechaVenc.value) { 
 		if (!tieneDatos(frmRegistro.fechaVenc.value)) return true; 
 		var DatosFecha = frmRegistro.fechaVenc.value.split('-'); 
 		var Fecha = new Date(); 
 		Fecha.setFullYear(DatosFecha[2],DatosFecha[1]-1,DatosFecha[0]); 
 		return (Fecha.getMonth()==DatosFecha[1]-1); 
	}*/
//-->

