/*
Backdoor de Yamaha Venezuela - http://www.yamaha-ve.com/
Script para validación de formularios
Programación: Ing. Miguel Palazzo <miguel@actimedia.com.ve>
*/

<!--
// Función para validar ingreso de datos en formaAcceso
vAcceso=new Array();
vAcceso[0]="login|Disculpe, debe especificar su usuario.|";
vAcceso[1]="clave|Disculpe, debe especificar su contraseña.|";

function validarAcceso(){
	d=document.formaAcceso;
	for(i=0;i<d.elements.length;i++){
		obj=d.elements[i];
		checkValue=checkString(obj.value);
		for(k=0;k<vAcceso.length;k++){
			tempArray=vAcceso[k].split("|");
			if(obj.name==tempArray[0]){
				case1="(tempArray[2]=='' && obj.value.length==0)";
				case2="(tempArray[2]==0 && obj.value==0)";
				if(eval(case1) || eval(case2))
				{
					obj.focus();
					alert(tempArray[1]);
					return false;
				}
			}
		}
	}
	return true;
}

// Función para validar ingreso de datos en formaRecordatorio1
vRecordatorio1=new Array();
vRecordatorio1[0]="login|Disculpe, debe especificar su usuario.|";

function validarRecordatorio1(){
	d=document.formaRecordatorio1;
	for(i=0;i<d.elements.length;i++){
		obj=d.elements[i];
		checkValue=checkString(obj.value);
		for(k=0;k<vRecordatorio1.length;k++){
			tempArray=vRecordatorio1[k].split("|");
			if(obj.name==tempArray[0]){
				case1="(tempArray[2]=='' && obj.value.length==0)";
				case2="(tempArray[2]==0 && obj.value==0)";
				if(eval(case1) || eval(case2))
				{
					obj.focus();
					alert(tempArray[1]);
					return false;
				}
			}
		}
	}
	return true;
}

// Función para validar ingreso de datos en formaRecordatorio2
vRecordatorio2=new Array();
vRecordatorio2[0]="respuesta|Disculpe, debe especificar su respuesta.|";

function validarRecordatorio2(){
	d=document.formaRecordatorio2;
	for(i=0;i<d.elements.length;i++){
		obj=d.elements[i];
		checkValue=checkString(obj.value);
		for(k=0;k<vRecordatorio2.length;k++){
			tempArray=vRecordatorio2[k].split("|");
			if(obj.name==tempArray[0]){
				case1="(tempArray[2]=='' && obj.value.length==0)";
				case2="(tempArray[2]==0 && obj.value==0)";
				if(eval(case1) || eval(case2))
				{
					obj.focus();
					alert(tempArray[1]);
					return false;
				}
			}
		}
	}
	return true;
}

// Función para validar ingreso de datos en formaAdmin1
vAdmin1=new Array();
vAdmin1[0]="login|Disculpe, debe especificar usuario.|";
vAdmin1[1]="clave|Disculpe, debe especificar contraseña.|";
vAdmin1[2]="confirmacion|Disculpe, debe repetir contraseña.|";
vAdmin1[3]="confirmacion|Disculpe, su contraseña no coincide con la confirmación de la misma.|a";
vAdmin1[4]="pregunta|Disculpe, debe especificar pregunta secreta.|";
vAdmin1[5]="respuesta|Disculpe, debe especificar respuesta secreta.|";
vAdmin1[6]="nombres|Disculpe, debe especificar nombres(s).|";
vAdmin1[7]="apellidos|Disculpe, debe especificar apellido(s).|";
vAdmin1[8]="email|Disculpe, debe especificar e-mail.|@";

function validarAdmin1(){
	d=document.formaAdmin1;
	for(i=0;i<d.elements.length;i++){
		obj=d.elements[i];
		checkValue=checkString(obj.value);
		for(k=0;k<vAdmin1.length;k++){
			tempArray=vAdmin1[k].split("|");
			if(obj.name==tempArray[0]){
				case1="(tempArray[2]=='' && obj.value.length==0)";
				case2="(tempArray[2]==0 && obj.value==0)";
				case3="(tempArray[2]=='a' && compararClaves(obj.value,d.clave.value)!=true)";
				case4="(tempArray[2]=='@' && emailCheck(obj.value)==false)";
				if(eval(case1) || eval(case2) || eval(case3) || eval(case4))
				{
					obj.focus();
					if(tempArray[2]!='@'){alert(tempArray[1])};
					return false;
				}
			}
		}
	}
	return true;
}

// Función para validar ingreso de datos en formaAdmin2
vAdmin2=new Array();
vAdmin2[0]="login|Disculpe, debe especificar usuario.|";
vAdmin2[1]="confirmacion|Disculpe, debe repetir su contraseña.|a";
vAdmin2[2]="confirmacion|Disculpe, su contraseña no coincide con la confirmación de la misma.|b";
vAdmin2[3]="pregunta|Disculpe, debe especificar pregunta secreta.|";
vAdmin2[4]="respuesta|Disculpe, debe especificar respuesta secreta.|";
vAdmin2[5]="nombres|Disculpe, debe especificar nombres(s).|";
vAdmin2[6]="apellidos|Disculpe, debe especificar apellido(s).|";
vAdmin2[7]="email|Disculpe, debe especificar e-mail.|@";

function validarAdmin2(){
	d=document.formaAdmin2;
	for(i=0;i<d.elements.length;i++){
		obj=d.elements[i];
		checkValue=checkString(obj.value);
		for(k=0;k<vAdmin2.length;k++){
			tempArray=vAdmin2[k].split("|");
			if(obj.name==tempArray[0]){
				case1="(tempArray[2]=='' && obj.value.length==0)";
				case2="(tempArray[2]==0 && obj.value==0)";
				case3="(tempArray[2]=='@' && emailCheck(obj.value)==false)";
				case4="(tempArray[2]=='a' && d.clave.length>0 && obj.length==0)";
				case5="(tempArray[2]=='b' && d.clave.length>0 && compararClaves(obj.value,d.clave.value)!=true)";
				if(eval(case1) || eval(case2) || eval(case3) || eval(case4) || eval(case5))
				{
					obj.focus();
					if(tempArray[2]!='@'){alert(tempArray[1])};
					return false;
				}
			}
		}
	}
	return true;
}

// Función para validar ingreso de datos en formaArtistas1
vArtistas1=new Array();
vArtistas1[0]="artista|Disculpe, debe especificar nombre de artista.|";
vArtistas1[1]="imagen_tope|Disculpe, debe cargar imagen del título.|";
vArtistas1[2]="imagen_tope|Solamente se permite cargar imágenes en formato JPG.|a";

function validarArtistas1(){
	d=document.formaArtistas1;
	for(i=0;i<d.elements.length;i++){
		obj=d.elements[i];
		checkValue=checkString(obj.value);
		for(k=0;k<vArtistas1.length;k++){
			tempArray=vArtistas1[k].split("|");
			if(obj.name==tempArray[0]){
				case1="(tempArray[2]=='' && obj.value.length==0)";
				case2="(tempArray[2]==0 && obj.value==0)";
				case3="(tempArray[2]=='a' && verificarFormatoImg(obj.value)!=true)";
				if(eval(case1) || eval(case2) || eval(case3))
				{
					obj.focus();
					alert(tempArray[1]);
					return false;
				}
			}
		}
	}
	return true;
}

// Función para validar ingreso de datos en formaArtistas2
vArtistas2=new Array();
vArtistas2[0]="artista|Disculpe, debe especificar nombre de artista.|";
vArtistas2[1]="imagen_tope|Solamente se permite cargar imágenes en formato JPG.|a";

function validarArtistas2(){
	d=document.formaArtistas2;
	for(i=0;i<d.elements.length;i++){
		obj=d.elements[i];
		checkValue=checkString(obj.value);
		for(k=0;k<vArtistas2.length;k++){
			tempArray=vArtistas2[k].split("|");
			if(obj.name==tempArray[0]){
				case1="(tempArray[2]=='' && obj.value.length==0)";
				case2="(tempArray[2]==0 && obj.value==0)";
				case3="(tempArray[2]=='a' && obj.value>0 && verificarFormatoImg(obj.value)!=true)";
				if(eval(case1) || eval(case2) || eval(case3))
				{
					obj.focus();
					alert(tempArray[1]);
					return false;
				}
			}
		}
	}
	return true;
}

// Función para validar ingreso de datos en formaDistrib
vDistrib=new Array();
vDistrib[0]="nombre|Disculpe, debe especificar nombre del distribuidor.|";

function validarDistrib(){
	d=document.formaDistrib;
	for(i=0;i<d.elements.length;i++){
		obj=d.elements[i];
		checkValue=checkString(obj.value);
		for(k=0;k<vDistrib.length;k++){
			tempArray=vDistrib[k].split("|");
			if(obj.name==tempArray[0]){
				case1="(tempArray[2]=='' && obj.value.length==0)";
				case2="(tempArray[2]==0 && obj.value==0)";
				if(eval(case1) || eval(case2))
				{
					obj.focus();
					alert(tempArray[1]);
					return false;
				}
			}
		}
	}
	if(categoriasCheck()>0){
		return true;
	}else{
		alert('Disculpe, debe seleccionar por lo menos una (1) categoria.');
		return false;
	}
}

// Función para validar ingreso de datos en formaDistribCats
vDistribCats=new Array();
vDistribCats[0]="categoria|Disculpe, debe especificar categoría.|";

function validarDistribCats(){
	d=document.formaDistribCats;
	for(i=0;i<d.elements.length;i++){
		obj=d.elements[i];
		checkValue=checkString(obj.value);
		for(k=0;k<vDistribCats.length;k++){
			tempArray=vDistribCats[k].split("|");
			if(obj.name==tempArray[0]){
				case1="(tempArray[2]=='' && obj.value.length==0)";
				case2="(tempArray[2]==0 && obj.value==0)";
				if(eval(case1) || eval(case2))
				{
					obj.focus();
					alert(tempArray[1]);
					return false;
				}
			}
		}
	}
	return true;
}

// Función para validar ingreso de datos en formaEventos
vEventos=new Array();
vEventos[0]="evento|Disculpe, debe especificar nombre de evento.|";
vEventos[1]="fecha_evento|Disculpe, debe especificar fecha del evento.|";

function validarEventos(){
	d=document.formaEventos;
	for(i=0;i<d.elements.length;i++){
		obj=d.elements[i];
		checkValue=checkString(obj.value);
		for(k=0;k<vEventos.length;k++){
			tempArray=vEventos[k].split("|");
			if(obj.name==tempArray[0]){
				case1="(tempArray[2]=='' && obj.value.length==0)";
				case2="(tempArray[2]==0 && obj.value==0)";
				if(eval(case1) || eval(case2))
				{
					obj.focus();
					alert(tempArray[1]);
					return false;
				}
			}
		}
	}
	return true;
}

// Función para validar ingreso de datos en formaLinks
vLinks=new Array();
vLinks[0]="titulo|Disculpe, debe especificar título.|";
vLinks[1]="url|Disculpe, debe especificar dirección web (Url).|";

function validarLinks(){
	d=document.formaLinks;
	for(i=0;i<d.elements.length;i++){
		obj=d.elements[i];
		checkValue=checkString(obj.value);
		for(k=0;k<vLinks.length;k++){
			tempArray=vLinks[k].split("|");
			if(obj.name==tempArray[0]){
				case1="(tempArray[2]=='' && obj.value.length==0)";
				case2="(tempArray[2]==0 && obj.value==0)";
				if(eval(case1) || eval(case2))
				{
					obj.focus();
					alert(tempArray[1]);
					return false;
				}
			}
		}
	}
	return true;
}

// Función para validar ingreso de datos en formaNoticias
vNoticias=new Array();
vNoticias[0]="titulo|Disculpe, debe especificar título.|";

function validarNoticias(){
	d=document.formaNoticias;
	for(i=0;i<d.elements.length;i++){
		obj=d.elements[i];
		checkValue=checkString(obj.value);
		for(k=0;k<vNoticias.length;k++){
			tempArray=vNoticias[k].split("|");
			if(obj.name==tempArray[0]){
				case1="(tempArray[2]=='' && obj.value.length==0)";
				case2="(tempArray[2]==0 && obj.value==0)";
				if(eval(case1) || eval(case2))
				{
					obj.focus();
					alert(tempArray[1]);
					return false;
				}
			}
		}
	}
	return true;
}

// Función para validar ingreso de datos en formaArticulos
vArticulos=new Array();
vArticulos[0]="titulo|Disculpe, debe especificar título.|";

function validarArticulos(){
	d=document.formaArticulos;
	for(i=0;i<d.elements.length;i++){
		obj=d.elements[i];
		checkValue=checkString(obj.value);
		for(k=0;k<vArticulos.length;k++){
			tempArray=vArticulos[k].split("|");
			if(obj.name==tempArray[0]){
				case1="(tempArray[2]=='' && obj.value.length==0)";
				case2="(tempArray[2]==0 && obj.value==0)";
				if(eval(case1) || eval(case2))
				{
					obj.focus();
					alert(tempArray[1]);
					return false;
				}
			}
		}
	}
	return true;
}

// Función para validar ingreso de datos en formaAcademias
vAcademias=new Array();
vAcademias[0]="nombre|Disculpe, debe especificar nombre de la academia.|";
vAcademias[1]="direccion|Disculpe, debe especificar dirección.|";

function validarAcademias(){
	d=document.formaAcademias;
	for(i=0;i<d.elements.length;i++){
		obj=d.elements[i];
		checkValue=checkString(obj.value);
		for(k=0;k<vAcademias.length;k++){
			tempArray=vAcademias[k].split("|");
			if(obj.name==tempArray[0]){
				case1="(tempArray[2]=='' && obj.value.length==0)";
				case2="(tempArray[2]==0 && obj.value==0)";
				if(eval(case1) || eval(case2))
				{
					obj.focus();
					alert(tempArray[1]);
					return false;
				}
			}
		}
	}
	return true;
}

// Función para validar ingreso de datos en formaCursos1
vCursos1=new Array();
vCursos1[0]="nombre|Disculpe, debe especificar nombre de curso.|";
vCursos1[1]="imagen|Disculpe, debe cargar imagen principal.|";
vCursos1[2]="imagen|Solamente se permite cargar imagen principal en formato JPG.|a";

function validarCursos1(){
	d=document.formaCursos1;
	for(i=0;i<d.elements.length;i++){
		obj=d.elements[i];
		checkValue=checkString(obj.value);
		for(k=0;k<vCursos1.length;k++){
			tempArray=vCursos1[k].split("|");
			if(obj.name==tempArray[0]){
				case1="(tempArray[2]=='' && obj.value.length==0)";
				case2="(tempArray[2]==0 && obj.value==0)";
				case3="(tempArray[2]=='a' && verificarFormatoImg(obj.value)!=true)";
				if(eval(case1) || eval(case2) || eval(case3))
				{
					obj.focus();
					alert(tempArray[1]);
					return false;
				}
			}
		}
	}
	if(academiasCheck()>0){
		return true;
	} else {
		alert('Disculpe, debe seleccionar por lo menos una (1) academia.');
		return false;
	}
}

// Función para validar ingreso de datos en formaCursos2
vCursos2=new Array();
vCursos2[0]="nombre|Disculpe, debe especificar nombre de curso.|";
vCursos2[1]="imagen|Solamente se permite cargar imagen principal en formato JPG.|a";

function validarCursos2(){
	d=document.formaCursos2;
	for(i=0;i<d.elements.length;i++){
		obj=d.elements[i];
		checkValue=checkString(obj.value);
		for(k=0;k<vCursos2.length;k++){
			tempArray=vCursos2[k].split("|");
			if(obj.name==tempArray[0]){
				case1="(tempArray[2]=='' && obj.value.length==0)";
				case2="(tempArray[2]==0 && obj.value==0)";
				case3="(tempArray[2]=='a' && obj.length>0 && verificarFormatoImg(obj.value)!=true)";
				if(eval(case1) || eval(case2) || eval(case3))
				{
					obj.focus();
					alert(tempArray[1]);
					return false;
				}
			}
		}
	}
	if(academiasCheck()>0){
		return true;
	} else {
		alert('Disculpe, debe seleccionar por lo menos una (1) academia.');
		return false;
	}
}

// Función para validar ingreso de datos en formaServicio
vServicio=new Array();
vServicio[0]="nombre|Disculpe, debe especificar nombre.|";
vServicio[1]="ubicacion|Disculpe, debe especificar ubicación geográfica.|";
vServicio[2]="especialidad|Disculpe, debe especificar especialidad.|";

function validarServicio(){
	d=document.formaServicio;
	for(i=0;i<d.elements.length;i++){
		obj=d.elements[i];
		checkValue=checkString(obj.value);
		for(k=0;k<vServicio.length;k++){
			tempArray=vServicio[k].split("|");
			if(obj.name==tempArray[0]){
				case1="(tempArray[2]=='' && obj.value.length==0)";
				case2="(tempArray[2]==0 && obj.value==0)";
				if(eval(case1) || eval(case2))
				{
					obj.focus();
					alert(tempArray[1]);
					return false;
				}
			}
		}
	}
}


// Función para validar ingreso de datos en formaLinks
vPaises=new Array();
vPaises[0]="nombre|Disculpe, debe especificar el País.|";

function validarPaises(){
	d=document.formaPaises;
	for(i=0;i<d.elements.length;i++){
		obj=d.elements[i];
		checkValue=checkString(obj.value);
		for(k=0;k<vPaises.length;k++){
			tempArray=vPaises[k].split("|");
			if(obj.name==tempArray[0]){
				case1="(tempArray[2]=='' && obj.value.length==0)";
				case2="(tempArray[2]==0 && obj.value==0)";
				if(eval(case1) || eval(case2))
				{
					obj.focus();
					alert(tempArray[1]);
					return false;
				}
			}
		}
	}
	return true;
}


// Función para validar ingreso de datos en formaIVA
vIVA=new Array();
vIVA[0]="txtIVA|Disculpe, debe especificar el valor del I.V.A.|";

function validarIVA(){
	d=document.formaIVA;
	for(i=0;i<d.elements.length;i++){
		obj=d.elements[i];
		checkValue=checkString(obj.value);
		for(k=0;k<vIVA.length;k++){
			tempArray=vIVA[k].split("|");
			if(obj.name==tempArray[0]){
				case1="(tempArray[2]=='' && obj.value.length==0)";
				case2="(tempArray[2]==0 && obj.value==0)";
				if(eval(case1) || eval(case2))
				{
					obj.focus();
					alert(tempArray[1]);
					return false;
				}
			}
		}
	}
	return true;
}



// Función para validar ingreso de datos en formaMetodosEnvio
vMetodosEnvio=new Array();
vMetodosEnvio[0]="nombre|Disculpe, debe especificar el Metodo de Envío.|";

function validarMetodosEnvio(){
	d=document.formaMetodosEnvio;
	for(i=0;i<d.elements.length;i++){
		obj=d.elements[i];
		checkValue=checkString(obj.value);
		for(k=0;k<vMetodosEnvio.length;k++){
			tempArray=vMetodosEnvio[k].split("|");
			if(obj.name==tempArray[0]){
				case1="(tempArray[2]=='' && obj.value.length==0)";
				case2="(tempArray[2]==0 && obj.value==0)";
				if(eval(case1) || eval(case2))
				{
					obj.focus();
					alert(tempArray[1]);
					return false;
				}
			}
		}
	}
	return true;
}



// Función para validar ingreso de datos en formaSegProductos
vSegProductos=new Array();
vSegProductos[0]="nombre|Disculpe, debe especificar el Segmento.|";

function validarSegProductos(){
	d=document.formaSegProductos;
	for(i=0;i<d.elements.length;i++){
		obj=d.elements[i];
		checkValue=checkString(obj.value);
		for(k=0;k<vSegProductos.length;k++){
			tempArray=vSegProductos[k].split("|");
			if(obj.name==tempArray[0]){
				case1="(tempArray[2]=='' && obj.value.length==0)";
				case2="(tempArray[2]==0 && obj.value==0)";
				if(eval(case1) || eval(case2))
				{
					obj.focus();
					alert(tempArray[1]);
					return false;
				}
			}
		}
	}
	return true;
}



/* Funciones de validación comunes */
// Función para cambiar al siguiente campo una vez alcanzado el maxlength
function cambiarCampo(campo,camposig){
	if(campo.value.length==campo.maxLength){
		camposig.focus();
	}
}

// Función para mostrar / ocultar cierto bloque de acuerdo a selección de radio buttons
function mostrarBloque(seleccion,campo){
	seleccion=seleccion*1;
	if(seleccion==0){
		campo.value="";
		document.getElementById('oculto').style.display="none";
	} else {
		if(document.all){
			document.getElementById('oculto').style.display="block";
		}else if(document.getElementById){
			document.getElementById('oculto').style.display="table-row";
		}
	}
}

// Función para verificar formato de imagen a cargar en servidor
function verificarFormatoImg(archivo){
	if(archivo.lastIndexOf('.jpg')==-1 && archivo.lastIndexOf('.JPG')==-1){
		return false;
	}
	return true;
}


// Función para verificar formato de archivo a cargar en servidor
function verificarFormatoArchivo2(archivo){
	if(archivo.lastIndexOf('.pdf')==-1 && archivo.lastIndexOf('.PDF')==-1){
		return false;
	}
	return true;
}


// Función para verificar formato de archivo a cargar en servidor
function verificarFormatoArchivo(archivo){
	if(archivo.lastIndexOf('.pdf')==-1 && archivo.lastIndexOf('.PDF')==-1 && archivo.lastIndexOf('.xls')==-1 && archivo.lastIndexOf('.XLS')==-1){
		return false;
	}
	return true;
}


// Función para comparar que dos campos hayan sido ingresados
function compararCampos(campo1,campo2){
	if(campo1!='' && campo2==''){
		return false;
	}
	if(campo1=='' && campo2!=''){
		return false;
	}
	return true;
}

// Función para comparar que una contraseña sea igual a su confirmación
function compararClaves(clave1,clave2){
	if(clave1!=clave2){
		return false;
	}
	return true;
}

// Función para comparar fechas
function compararFechas(fromDate,toDate){
	if (Date.parse(fromDate) >= Date.parse(toDate)) {
		return false;
	}
	return true;
}

// Función para comparar fechas (contra la fecha de hoy) 
function validarFecha(theDate){
	var today=new Date()	
	if (Date.parse(today) >= Date.parse(theDate.value)) {
		theDate.value = ""
		alert('La fecha ingresada debe ser mayor a la fecha de hoy');
	}
}

// Función para comparar fechas (Facturas)
function compararFechaFactura(theForm){
	fechaFactura = theForm.fecha_factura.value;
	fechaVencimiento = theForm.fecha_vencimiento.value;

	if (fechaFactura == ""){
		theForm.fecha_vencimiento.value = ""
		alert('Debe ingresar la fecha de facturación antes que la fecha de vencimiento.');
	}else if (Date.parse(fechaFactura) >= Date.parse(fechaVencimiento)) {
		theForm.fecha_vencimiento.value = ""
		alert('La fecha de vencimiento debe ser mayor a la fecha de facturación.');
	}
}


// Funciones para verificar estructura de e-mail
function checkString(String){ 
	hasACharacter=false;
	EmailPass=false;
	for(j=0;j<String.length;j++){
		if(String.charCodeAt(i)!=13 && String.charCodeAt(i)!=10 && String.charCodeAt(i)!=32){
			hasACharacter=true
		}
	}
}

function emailCheck (emailStr) {
	var emailPat=/^(.+)@(.+)$/;
	var specialChars="\\(\\)<>@,;:\\\\\\\"\\.\\[\\]";
	var validChars="\[^\\s" + specialChars + "\]";
	var quotedUser="(\"[^\"]*\")";
	var ipDomainPat=/^\[(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\]$/;
	var atom=validChars + '+';
	var word="(" + atom + "|" + quotedUser + ")";
	var userPat=new RegExp("^" + word + "(\\." + word + ")*$");
	var domainPat=new RegExp("^" + atom + "(\\." + atom +")*$");
	var matchArray=emailStr.match(emailPat);
	if (matchArray==null) {
		alert("Disculpe, el E-mail no posee @ y . en el mismo. (usuario@host.com)");
		return false;
	};
	var user=matchArray[1];
	var domain=matchArray[2];
	if (user.match(userPat)==null) {
		alert("Disculpe, el E-mail debe poseer nombre de usuario. (usuario@host.com)");
		return false;
	}
	var IPArray=domain.match(ipDomainPat);
	if (IPArray!=null) {
		for (var i=1;i<=4;i++) {
			if (IPArray[i]>255) {
				alert("Disculpe, el E-mail no posee una dirección IP válida.");
				return false;
			}
		}
		return true;
	};
	var domainArray=domain.match(domainPat);
	if (domainArray==null) {
		alert("Disculpe, el E-mail no posee un dominio válido.");
		return false;
	}
	var atomPat=new RegExp(atom,"g");
	var domArr=domain.match(atomPat);
	var len=domArr.length;
	if (domArr[domArr.length-1].length<2 || domArr[domArr.length-1].length>3) {
		alert("Disculpe, el E-mail debe terminar en dos o tres letras. (com, net, org, ve)");
		return false;
	};
	if (len<2) {
		var errStr="Disculpe, el E-mail debe poseer nombre de host. (usuario@host.com)";
		alert(errStr);
		return false;
	}
	return true;
}

// Función para verificar contenido en array de categorias
function categoriasCheck(){
	var cuenta=0;
	var vector=document.getElementsByName('id_categoria[]');
	for(i=0;i<vector.length;i++){
		if(vector[i].checked==true){
			cuenta++;
		}
	}
	return cuenta;
}

// Función para verificar contenido en array de academias
function academiasCheck(){
	var cuenta=0;
	var vector=document.getElementsByName('id_academia[]');
	for(i=0;i<vector.length;i++){
		if(vector[i].checked==true){
			cuenta++;
		}
	}
	return cuenta;
}


// Función para validar ingreso de datos en formaClientes
vClientes1=new Array();
vClientes1[0]="user|Disculpe, debe especificar usuario.|";
vClientes1[1]="pass|Disculpe, debe especificar contraseña.|";
vClientes1[2]="confirmacion|Disculpe, debe repetir contraseña.|";
vClientes1[3]="confirmacion|Disculpe, su contraseña no coincide con la confirmación de la misma.|a";
vClientes1[4]="codigo|Disculpe, debe especificar codigo.|";
vClientes1[5]="nombre|Disculpe, debe especificar nombre.|";
vClientes1[6]="rif|Disculpe, debe especificar #RIF.|";
vClientes1[7]="email1|Disculpe, debe especificar e-mail.|@";

function validarClientes1(){
	d=document.formaClientes;
	for(i=0;i<d.elements.length;i++){
		obj=d.elements[i];
		checkValue=checkString(obj.value);
		for(k=0;k<vClientes1.length;k++){
			tempArray=vClientes1[k].split("|");
			if(obj.name==tempArray[0]){
				case1="(tempArray[2]=='' && obj.value.length==0)";
				case2="(tempArray[2]=='@' && emailCheck(obj.value)==false)";
				case3="(tempArray[2]=='a' && compararClaves(obj.value,d.pass.value)!=true)";
				if(eval(case1) || eval(case2) || eval(case3))
				{
					obj.focus();
					if(tempArray[2]!='@'){alert(tempArray[1])};
					return false;
				}
			}
		}
	}
	return true;
}


// Función para validar ingreso de datos en formaClientes
vClientes2=new Array();
vClientes2[0]="user|Disculpe, debe especificar usuario.|";
vClientes2[1]="confirmacion|Disculpe, debe repetir contraseña.|a";
vClientes2[2]="confirmacion|Disculpe, su contraseña no coincide con la confirmación de la misma.|b";
vClientes2[3]="codigo|Disculpe, debe especificar codigo.|";
vClientes2[4]="nombre|Disculpe, debe especificar nombre.|";
vClientes2[5]="rif|Disculpe, debe especificar #RIF.|";
vClientes2[6]="email1|Disculpe, debe especificar e-mail.|@";

function validarClientes2(){
	d=document.formaClientes;
	for(i=0;i<d.elements.length;i++){
		obj=d.elements[i];
		checkValue=checkString(obj.value);
		for(k=0;k<vClientes2.length;k++){
			tempArray=vClientes2[k].split("|");
			if(obj.name==tempArray[0]){
				case1="(tempArray[2]=='' && obj.value.length==0)";
				case2="(tempArray[2]=='@' && emailCheck(obj.value)==false)";
				case3="(tempArray[2]=='a' && d.pass.value.length>0 && obj.value.length==0)";
				case4="(tempArray[2]=='b' && d.pass.value.length>0 && compararClaves(obj.value,d.pass.value)!=true)";
				if(eval(case1) || eval(case2) || eval(case3) || eval(case4))
				{
					obj.focus();
					if(tempArray[2]!='@'){alert(tempArray[1])};
					return false;
				}
			}
		}
	}
	return true;
}


// Función para validar ingreso de datos en formaListaPrecios
vListaPrecios=new Array();
vListaPrecios[0]="nombre|Disculpe, debe especificar nombre de la lista.|";
vListaPrecios[1]="archivo|Disculpe, debe cargar la lista de precios valida (PDF/Excel).|a";

function validarListaPrecios(){
	d=document.formaListaPrecios;
	for(i=0;i<d.elements.length;i++){
		obj=d.elements[i];
		checkValue=checkString(obj.value);
		for(k=0;k<vListaPrecios.length;k++){
			tempArray=vListaPrecios[k].split("|");
			if(obj.name==tempArray[0]){
				case1="(tempArray[2]=='' && obj.value.length==0)";
				case2="(tempArray[2]==0 && obj.value==0)";
				case3="(tempArray[2]=='a' && verificarFormatoArchivo(obj.value)!=true)";
				if(eval(case1) || eval(case2) || eval(case3))
				{
					obj.focus();
					alert(tempArray[1]);
					return false;
				}
			}
		}
	}
	return true;
}


// Función para validar ingreso de datos en formaCatalogos
vCatalogos=new Array();
vCatalogos[0]="nombre|Disculpe, debe especificar nombre del catalogo.|";
vCatalogos[1]="archivo|Disculpe, debe cargar un catalogo valido (PDF/Excel).|a";

function validarCatalogos(){
	d=document.formaCatalogos;
	for(i=0;i<d.elements.length;i++){
		obj=d.elements[i];
		checkValue=checkString(obj.value);
		for(k=0;k<vCatalogos.length;k++){
			tempArray=vCatalogos[k].split("|");
			if(obj.name==tempArray[0]){
				case1="(tempArray[2]=='' && obj.value.length==0)";
				case2="(tempArray[2]==0 && obj.value==0)";
				case3="(tempArray[2]=='a' && verificarFormatoArchivo(obj.value)!=true)";
				if(eval(case1) || eval(case2) || eval(case3))
				{
					obj.focus();
					alert(tempArray[1]);
					return false;
				}
			}
		}
	}
	return true;
}



// Función para validar ingreso de datos en formaMensajes
vMensajes=new Array();
vMensajes[0]="titulo|Disculpe, debe especificar el titulo.|";
vMensajes[1]="mensaje|Disculpe, debe especificar el mensaje.|";
vMensajes[2]="id_cliente|Disculpe, debe seleccionar un cliente.|";

function validarMensajes(){
	d=document.formaMensajes;
	for(i=0;i<d.elements.length;i++){
		obj=d.elements[i];
		checkValue=checkString(obj.value);
		for(k=0;k<vMensajes.length;k++){
			tempArray=vMensajes[k].split("|");
			if(obj.name==tempArray[0]){
				case1="(tempArray[2]=='' && obj.value.length==0)";
				if(eval(case1))
				{
					obj.focus();
					alert(tempArray[1]);
					return false;
				}
			}
		}
	}
	return true;
}


// Función para validar ingreso de datos en formaPedidos
vPedidos=new Array();
vPedidos[0]="nombre|Disculpe, debe especificar nombre del catalogo.|";
vPedidos[1]="id_cliente|Disculpe, debe seleccionar un cliente.|";
vPedidos[2]="orden|Disculpe, debe indicar el numero de orden.|";
vPedidos[3]="fecha_embarque_aprox|Disculpe, debe indicar la fecha aproximada de embarque.|";
vPedidos[4]="fecha_embarque_aprox|Disculpe, la fecha de embarque debe ser posterior al día de hoy.|f";
vPedidos[5]="id_metodo|Disculpe, debe seleccionar un metodo de envio.|";
vPedidos[6]="id_origen|Disculpe, debe seleccionar el origen.|";
vPedidos[7]="monto|Disculpe, debe indicar el monto.|";
vPedidos[8]="archivo|Disculpe, debe cargar un archivo valido (PDF).|a";

function validarPedidos(){
	var today = new Date();
	d=document.formaPedidos;
	for(i=0;i<d.elements.length;i++){
		obj=d.elements[i];
		checkValue=checkString(obj.value);
		for(k=0;k<vPedidos.length;k++){
			tempArray=vPedidos[k].split("|");
			if(obj.name==tempArray[0]){
				case1="(tempArray[2]=='' && obj.value.length==0)";
				case2="(tempArray[2]==0 && obj.value==0)";
				case3="(tempArray[2]=='a' && verificarFormatoArchivo2(obj.value)!=true)";
				case4="(tempArray[2]=='f' && compararFechas(d.fecha_carga.value,d.fecha_embarque_aprox.value)!=true)";
				if(eval(case1) || eval(case2) || eval(case3) || eval(case4))
				{
					obj.focus();
					alert(tempArray[1]);
					return false;
				}
			}
		}
	}
	return true;
}


// Función para validar ingreso de datos en formaPedidos2 (Editar Pedido)
vPedidos2=new Array();
vPedidos2[0]="nombre|Disculpe, debe especificar nombre del catalogo.|";
vPedidos2[1]="id_cliente|Disculpe, debe seleccionar un cliente.|";
vPedidos2[2]="orden|Disculpe, debe indicar el numero de orden.|";
vPedidos2[3]="fecha_embarque_aprox|Disculpe, debe indicar la fecha aproximada de embarque.|";
vPedidos2[4]="fecha_embarque_aprox|Disculpe, la fecha de embarque debe ser posterior al día de hoy.|f";
vPedidos2[5]="id_metodo|Disculpe, debe seleccionar un metodo de envio.|";
vPedidos2[6]="id_origen|Disculpe, debe seleccionar el origen.|";
vPedidos2[7]="monto|Disculpe, debe indicar el monto.|";

function validarPedidos2(){
	var today = new Date();
	d=document.formaPedidos;
	for(i=0;i<d.elements.length;i++){
		obj=d.elements[i];
		checkValue=checkString(obj.value);
		for(k=0;k<vPedidos2.length;k++){
			tempArray=vPedidos2[k].split("|");
			if(obj.name==tempArray[0]){
				case1="(tempArray[2]=='' && obj.value.length==0)";
				case2="(tempArray[2]==0 && obj.value==0)";
				case3="(tempArray[2]=='f' && compararFechas(d.fecha_carga.value,d.fecha_embarque_aprox.value)!=true)";
				if(eval(case1) || eval(case2) || eval(case3))
				{
					obj.focus();
					alert(tempArray[1]);
					return false;
				}
			}
		}
	}
	return true;
}

// Función para validar ingreso de datos en formaDespachos
vDespachos=new Array();
vDespachos[0]="fecha_embarque|Disculpe, debe indicar la fecha aproximada de embarque.|";
vDespachos[1]="numero_IE|Disculpe, debe indicar el No. I/E.|";
vDespachos[2]="id_metodo|Disculpe, debe seleccionar un metodo de envio.|";
vDespachos[3]="id_origen|Disculpe, debe seleccionar el origen.|";
vDespachos[4]="id_destino|Disculpe, debe seleccionar el destino.|";
//vDespachos[5]="archivo|Disculpe, debe cargar un archivo valido (PDF).|a";

function validarDespachos(){
	d=document.formaDespachos;
	for(i=0;i<d.elements.length;i++){
		obj=d.elements[i];
		checkValue=checkString(obj.value);
		for(k=0;k<vDespachos.length;k++){
			tempArray=vDespachos[k].split("|");
			if(obj.name==tempArray[0]){
				case1="(tempArray[2]=='' && obj.value.length==0)";
				case2="(tempArray[2]==0 && obj.value==0)";
				case3="(tempArray[2]=='a' && verificarFormatoArchivo2(obj.value)!=true)";
				if(eval(case1) || eval(case2) || eval(case3))
				{
					obj.focus();
					alert(tempArray[1]);
					return false;
				}
			}
		}
	}
	return true;
}


// Función para validar ingreso de datos en formaFacturas
vFacturas=new Array();
vFacturas[0]="factura|Disculpe, debe indicar el No. de factura.|";
vFacturas[1]="monto_sinIVA|Disculpe, debe indicar el Monto Sin IVA.|";
vFacturas[2]="IVA|Disculpe, debe indicar el IVA.|";
vFacturas[3]="monto_total|Disculpe, debe indicar el total de la factura.|";
vFacturas[4]="fecha_factura|Disculpe, debe indicar la fecha de la factura.|";
vFacturas[5]="fecha_vencimiento|Disculpe, debe indicar la fecha de vencimiento de la factura.|";
vFacturas[6]="fecha_vencimiento|Disculpe, la fecha de vencimiento debe ser posterior a la factura.|f";
vFacturas[7]="archivo|Disculpe, debe cargar un archivo valido (PDF).|a";

function validarFacturas(){
	d=document.formaFacturas;
	for(i=0;i<d.elements.length;i++){
		obj=d.elements[i];
		checkValue=checkString(obj.value);
		for(k=0;k<vFacturas.length;k++){
			tempArray=vFacturas[k].split("|");
			if(obj.name==tempArray[0]){
				case1="(tempArray[2]=='' && obj.value.length==0)";
				case2="(tempArray[2]==0 && obj.value==0)";
				case3="(tempArray[2]=='a' && verificarFormatoArchivo2(obj.value)!=true)";
				case4="(tempArray[2]=='f' && compararFechas(d.fecha_factura.value,obj.value)!=true)";
				if(eval(case1) || eval(case2) || eval(case3) || eval(case4))
				{
					obj.focus();
					alert(tempArray[1]);
					return false;
				}
			}
		}
	}
	return true;
}


// Función para validar ingreso de datos en formaPedidos
vPedidosCadivi=new Array();
vPedidosCadivi[0]="numero_solicitud_cadivi|Disculpe, debe especificar el numero de solicitud CADIVI.|";
vPedidosCadivi[1]="codigo_aprobacion_aad|Disculpe, debe seleccionar el codigo de aprobacion AAD.|";
vPedidosCadivi[2]="monto_aprobado_cadivi|Disculpe, debe indicar el monto aprobado por CADIVI.|";

function validarPedidosCadivi(){
	d=document.formaPedidos;
	for(i=0;i<d.elements.length;i++){
		obj=d.elements[i];
		checkValue=checkString(obj.value);
		for(k=0;k<vPedidosCadivi.length;k++){
			tempArray=vPedidosCadivi[k].split("|");
			if(obj.name==tempArray[0]){
				case1="(tempArray[2]=='' && obj.value.length==0)";
				if(eval(case1))
				{
					obj.focus();
					alert(tempArray[1]);
					return false;
				}
			}
		}
	}
	return true;
}

// Función para validar ingreso de datos en formaAbono
vAbono=new Array();
vAbono[0]="monto_abono|Disculpe, debe especificar el monto a abonar|";
vAbono[1]="monto_abono|Disculpe, el monto a abonar no puede ser mayor al monto pendiente|1";

function validarAbono(){
	d=document.formaAbono;
	for(i=0;i<d.elements.length;i++){
		obj=d.elements[i];
		checkValue=checkString(obj.value);
		for(k=0;k<vAbono.length;k++){
			tempArray=vAbono[k].split("|");
			if(obj.name==tempArray[0]){
				case1="(tempArray[2]=='' && (obj.value.length==0 || obj.value==0))";
				case2="(tempArray[2]==1 && parseFloat(obj.value) > parseFloat(d.monto_pendiente.value))";
				if(eval(case1) || eval(case2))
				{
					obj.focus();
					alert(tempArray[1]);
					return false;
				}
			}
		}
	}
	return true;
}
//-->
