// Función principal que se le pasan tres parámetros indicando el número de radio buttons a controlar.
// Hay tres tipos de formularios a tratar: 
// 1.-  los que tienen tres datos que son el número de los listados de radio buttons
// 2.-  los que tienen dos datos que son el número de la forma de pago y el tercer parámetro a -1
// 3.-  a los que sólo hay que validar los datos personales
// parámetros:
// 	x --> dpto / tarifa / -1
//	y --> trabajadores / pago /-1
// 	z --> actividad / -1  / -1


//==================== PORTUGUES ================================================================

function validar_port(x,y,z){
	if (!(document.forms[0].revista.checked))
	{
		//alert ("Por favor rellene la casilla.");
		alert (" Por favor preencha a casa.");
		document.forms[0].revista.focus();
		return (false);
	}	
	if (y!=-1 && z==-1 && x!=-1){  // es un caso de forma pago (formulario tipo susc_XX)
		
		if (!(validarDinamicoTarifa(x))){
			//alert ("Por favor seleccione una opción en las tarifas");	
			alert ("Por favor seleccione uma opção nos preços");	
			document.forms[0].tarifa[0].focus();
			return (false);
		}
	}

	
	if (document.forms[0].empresa.value==""){
		//alert ("Por favor introduzca el campo empresa");
		alert ("Por favor introduza o campo empresa");
		document.forms[0].empresa.focus();
		return (false);
	}
	if (document.forms[0].activi.value==""){
		//alert ("Por favor introduzca el campo actividad");
		alert ("Por favor introduza o campo actividade");		
		document.forms[0].activi.focus();
		return (false);
	}
	
	if (document.forms[0].cif.value=="" && x!=-1 ){ //solo es obligatorio el cif en suscripciones no en publicidad
		//alert ("Por favor introduzca el campo C.I.F.");
		alert ("· Por favor introduza o campo Número de Contribuinte");
		document.forms[0].cif.focus();
		return (false);
	}
	if (document.forms[0].destinatario.value==""){
		//alert ("Por favor introduzca el campo Nombre");
		alert ("· Por favor introduza o campo Nome");
		document.forms[0].destinatario.focus();
		return (false);
	}
	/*if (document.forms[0].cargo.value==""){
		//alert ("Por favor introduzca el campo cargo");
		alert ("· Por favor introduza o campo cargo");
		document.forms[0].cargo.focus();
		return (false);
	}*/
	if (document.forms[0].direccion.value==""){
		//alert ("Por favor introduzca  el campo dirección");
		alert ("· Por favor introduza o campo endereço");
		document.forms[0].direccion.focus();
		return (false);
	}
	/*if (document.forms[0].poblacion.value==""){
		//alert ("Por favor introduzca el campo poblacion");
		alert ("· Por favor introduza o campo localidade");
		document.forms[0].poblacion.focus();
		return (false);
	}*/

	if (document.forms[0].revista.value!="Tecnologia del Agua Portugal"){
		/*if (document.forms[0].provincia.value==""){
			//alert ("Por favor introduzca el campo provincia");
			alert ("· Por favor introduza o campo província");
			document.forms[0].provincia.focus();
			return (false);
		}*/
	}
	if (document.forms[0].cpostal.value==""){
		//alert ("Por favor introduzca el Código Postal");
		alert ("· Por favor introduza o Código Postal");
		document.forms[0].cpostal.focus();
		return (false);
	}
	if (document.forms[0].telefono.value==""){
		//alert ("Por favor introduzca el teléfono");
		alert ("· Por favor introduza o telefone");
		document.forms[0].telefono.focus();
		return (false);
	}
	if (document.forms[0].email.value==""){
		//alert ("Por favor introduzca el E-Mail");
		alert ("· Por favor introduza o E-Mail");
		document.forms[0].email.focus();
		return (false);
	}
	if (z!=-1) { // es un caso  listado (formulario tipo susc_XX)
		
		if (!(validarDinamicoDpto(x))){
			//alert ("Por favor seleccione una opción en Departamento de la Empresa");	
			//alert ("Por favor seleccione una opción.");	
			alert ("Por favor seleccione uma opção");	
			document.forms[0].departamento[0].focus();
			return (false);
		}
		if (!(validarDinamicoTrabajadores(y))){
			//alert ("Por favor seleccione algún opción en Trabajadores de la empresa/establecimiento");
			//alert ("Por favor seleccione una opción.");	
			alert ("Por favor seleccione uma opção.");	
			document.forms[0].trabajador[0].focus();	
			return (false);
		}
		 if (!(validarDinamicoActividad(z))){
			//alert ("Por favor seleccione una opción en Actividad principal de la empresa");
			//alert ("Por favor seleccione una opción.");	
			alert ("Por favor seleccione uma opção.");	
			document.forms[0].actividad[0].focus();	
			return (false);
		}		
	 }
	 if (y!=-1 && z==-1){  // es un caso de forma pago (formulario tipo susc_XX)
		
		
		if (!(validarDinamicoPago(y))){
			//alert ("Por favor seleccione alguna opción en la forma de pago");
			alert ("Por favor seleccione alguma opção na forma de pagamento");
			document.forms[0].pago[0].focus();	
			return (false);
		}
//=====================
		 //si hemos pinchado letra a mi cargo...
		
		if (document.forms[0].pago[1].checked)
		{
			//alert ("hola:"+document.forms[0].entidad.value)
			if (document.forms[0].entidad.value=="")
			{
				//alert ("Por favor escriba la entidad");
				alert ("· Por favor escreva a entidade");
				document.forms[0].entidad.focus();
				return (false);
			}
			if (document.forms[0].oficina.value=="")
			{
				//alert ("Por favor escriba la oficina");
				alert ("· Por favor escreva a sucursal");
				document.forms[0].oficina.focus();
				return (false);
			}		
			if (document.forms[0].dc.value=="")
			{
				//alert ("Por favor escriba el dígito de control");
				alert ("· Por favor escreva o dígito de controlo");
				document.forms[0].dc.focus();
				return (false);
			}		
			if (document.forms[0].numcuenta.value=="")
			{
				//alert ("Por favor escriba el número de cuenta");
				alert ("· Por favor escreva o número de conta");
				document.forms[0].numcuenta.focus();
				return (false);
			}			
			
		} //FIN DE si hemos pinchado letra a mi cargo...



		//si hemos pinchado tarjeta visa, mastercard o telepago4b
		
			if ((document.forms[0].pago[2].checked) || (document.forms[0].pago[3].checked) || (document.forms[0].pago[4].checked && document.forms[0].pago[4].value!="transferencia" ))
			{
				if (document.forms[0].num.value=="")
				{
					//alert ("Por favor escriba el número de la tarjeta.");
					alert ("· Por favor escreva o número do cartão.");
					document.forms[0].num.focus();
					return (false);
				}			
				if (document.forms[0].caducidad.value=="")
				{
				alert ("Por favor escreva a caducidade do cartão");
						document.forms[0].caducidad.focus();
					return (false);
				}			
			}
		// FIN DE si hemos pinchado tarjeta visa, mastercard o telepago4b
/*

		if (!(document.forms[0].pago[0].checked) && document.forms[0].num.value=="" ){ // si no hemos pinchado en la primera casilla
			if (document.forms[0].pago[y-1].value=="contrareembolso" && document.forms[0].pago[y-1].checked)
			{	
				
			}
			else{
				alert ("Por favor escriba el número de tarjeta");
				document.forms[0].num.focus();
				return (false);
			}
		}
		if (!(document.forms[0].pago[0].checked) && document.forms[0].caducidad.value=="" ){ // si no hemos pinchado en la primera casilla
			if (document.forms[0].pago[y-1].value=="contrareembolso" && document.forms[0].pago[y-1].checked)
			{	
				
			}
			else{
				alert ("Por favor escriba la caducidad de la tarjeta");
				document.forms[0].caducidad.focus();
				return (false);
			}
		}
		*/
	 }

return (true);
}



//======ESPAÑOL ============================================================================

function validar(x,y,z){

	/*if  (! (document.forms[0].revista.value=="Detail")) //para detail no hace falta pinchar
	{
			if (!(document.forms[0].revista.checked))
			{
			alert ("Por favor seleccione una opción.");
			document.forms[0].revista[0].focus();
			return (false);
			}	
	}*/

	
	if (y!=-1 && z==-1 && x!=-1){  // es un caso de forma pago (formulario tipo susc_XX)
		
		if (!(validarDinamicoTarifa(x))){
			alert ("Por favor seleccione una opción en las tarifas");	
			document.form1.tarifa[0].focus();
			return (false);
		}
	}

	
	if (document.forms[0].empresa.value==""){
		alert ("Por favor introduzca el campo empresa");
		document.forms[0].empresa.focus();
		return (false);
	}
	if (document.forms[0].activi.value==""){
		alert ("Por favor introduzca el campo actividad");
		document.forms[0].activi.focus();
		return (false);
	}
	if (document.forms[0].empleados.value==""){
		alert ("Por favor seleccione un rango de empleados");
		document.forms[0].activi.focus();
		return (false);
	}
	
	
	if (document.forms[0].cif.value=="" && x!=-1 ){ //solo es obligatorio el cif en suscripciones no en publicidad
		alert ("Por favor introduzca el campo C.I.F.");
		document.forms[0].cif.focus();
		return (false);
	}
	if (document.forms[0].destinatario.value==""){
		alert ("Por favor introduzca el campo Nombre");
		document.forms[0].destinatario.focus();
		return (false);
	}
	/*if (document.forms[0].cargo.value==""){
		alert ("Por favor introduzca el campo cargo");
		document.forms[0].cargo.focus();
		return (false);
	}*/
	if (document.forms[0].direccion.value==""){
		alert ("Por favor introduzca  el campo dirección");
		document.forms[0].direccion.focus();
		return (false);
	}
	/*if (document.forms[0].poblacion.value==""){
		alert ("Por favor introduzca el campo poblacion");
		document.forms[0].poblacion.focus();
		return (false);
	}*/
	/*if (document.forms[0].provincia.value==""){
		alert ("Por favor introduzca el campo provincia");
		document.forms[0].provincia.focus();
		return (false);
	}*/
	if (document.forms[0].cpostal.value==""){
		alert ("Por favor introduzca el Código Postal");
		document.forms[0].cpostal.focus();
		return (false);
	}
	if (document.forms[0].telefono.value==""){
		alert ("Por favor introduzca el teléfono");
		document.forms[0].telefono.focus();
		return (false);
	}
	if (document.forms[0].email.value==""){
		alert ("Por favor introduzca el E-Mail");
		document.forms[0].email.focus();
		return (false);
	}
	if (z!=-1) { // es un caso  listado (formulario tipo susc_XX)
		
		if (!(validarDinamicoDpto(x))){
			//alert ("Por favor seleccione una opción en Departamento de la Empresa");	
			alert ("Por favor seleccione una opción.");	
			document.forms[0].departamento[0].focus();
			return (false);
		}
		if (!(validarDinamicoTrabajadores(y))){
			//alert ("Por favor seleccione algún opción en Trabajadores de la empresa/establecimiento");
			alert ("Por favor seleccione una opción.");	
			document.forms[0].trabajador[0].focus();	
			return (false);
		}
		 if (!(validarDinamicoActividad(z))){
			//alert ("Por favor seleccione una opción en Actividad principal de la empresa");
			alert ("Por favor seleccione una opción.");	
			document.forms[0].actividad[0].focus();	
			return (false);
		}		
	 }
if (y!=-1 && z==-1){  // es un caso de forma pago (formulario tipo susc_XX)
		
		
		if (!(validarDinamicoPago(y))){
			alert ("Por favor seleccione algún opción en la forma de pago");
			document.forms[0].pago[0].focus();	
			return (false);
		}
//=====================
// validaciones de las TARIFAS
//=====================
		 //si hemos pinchado letra a mi cargo...
		 
if   (document.forms[0].revista.value=="Detail") //para detail
	{
			if (document.forms[0].pago[0].checked)
			{
				if (document.forms[0].titularcuentadomiciliacion.value=="")
				{
					alert ("Por favor escriba el titular de la cuenta");
					document.forms[0].titularcuentadomiciliacion.focus();
					return (false);
				}
				
				if (document.forms[0].entidad.value=="")
				{
					alert ("Por favor escriba la entidad");
					document.forms[0].entidad.focus();
					return (false);
				}
				if (document.forms[0].oficina.value=="")
				{
					alert ("Por favor escriba la oficina");
						document.forms[0].oficina.focus();
					return (false);
				}		
				if (document.forms[0].dc.value=="")
				{
					alert ("Por favor escriba el dígito de control");
					document.forms[0].dc.focus();
					return (false);
					}		
				if (document.forms[0].numcuenta.value=="")
				{
					alert ("Por favor escriba el número de cuenta");
					document.forms[0].numcuenta.focus();
					return (false);
					}			
				
			} //FIN DE si hemos pinchado letra a mi cargo...



			//si hemos pinchado tarjeta visa, mastercard o telepago4b
		
				if ((document.forms[0].pago[1].checked) || (document.forms[0].pago[2].checked) || (document.forms[0].pago[3].checked && document.forms[0].pago[3].value!="transferencia" ))
				{
					if (document.forms[0].num.value=="")
					{
						alert ("Por favor escriba el número de la tarjeta.");
						document.forms[0].num.focus();
						return (false);
					}			
					if (document.forms[0].caducidad.value=="")
					{
					alert ("Por favor escriba la caducidad de la tarjeta.");
							document.forms[0].caducidad.focus();
						return (false);
					}			
				}	// FIN DE si hemos pinchado tarjeta visa, mastercard o telepago4b
		
	
		 } //fin de si es detail
	

	}

	else{		// no es detail

		
		if (x!=-1 && y!=-1 && z!=-1 && document.forms[0].clave.value!="tipo3")
		{
				
	
		alert ("no es publi");
		 //si hemos pinchado letra a mi cargo...
		
		if (document.forms[0].pago[1].checked)
		{
			//alert ("hola:"+document.forms[0].entidad.value)
			if (document.forms[0].entidad.value=="")
			{
				alert ("Por favor escriba la entidad");
				document.forms[0].entidad.focus();
				return (false);
			}
			if (document.forms[0].oficina.value=="")
			{
				alert ("Por favor escriba la oficina");
				document.forms[0].oficina.focus();
				return (false);
			}		
			if (document.forms[0].dc.value=="")
			{
				alert ("Por favor escriba el dígito de control");
				document.forms[0].dc.focus();
				return (false);
			}		
			if (document.forms[0].numcuenta.value=="")
			{
				alert ("Por favor escriba el número de cuenta");
				document.forms[0].numcuenta.focus();
				return (false);
			}			
			
		} //FIN DE si hemos pinchado letra a mi cargo...



		//si hemos pinchado tarjeta visa, mastercard o telepago4b
		
			if ((document.forms[0].pago[2].checked) || (document.forms[0].pago[3].checked) || (document.forms[0].pago[4].checked && document.forms[0].pago[4].value!="transferencia" ))
			{
				if (document.forms[0].num.value=="")
				{
					alert ("Por favor escriba el número de la tarjeta.");
					document.forms[0].num.focus();
					return (false);
				}			
				if (document.forms[0].caducidad.value=="")
				{
				alert ("Por favor escriba la caducidad de la tarjeta.");
						document.forms[0].caducidad.focus();
					return (false);
				}			
			}		// FIN DE si hemos pinchado tarjeta visa, mastercard o telepago4b
		}//fin de si x,y,z es -1
	 } //fin de si no es detail

return (true);
} //fin de y!=-1 && z==1


//**********************************************************************
// validaciones para el tipo de formulario con listas de radio buttons
//**********************************************************************
function validarDinamicoDpto(num){
	var correcto=false;
	for (i=0;i<num;i++){
		if (document.forms[0].departamento[i].checked){
			correcto=true;
		}
	}
	return correcto;
	}

function validarDinamicoTrabajadores(num){
	var correcto=false;
	for (i=0;i<num;i++){
		if (document.forms[0].trabajador[i].checked){
			correcto=true;
		}
	}
	return correcto;
	}

function validarDinamicoActividad(num){
	var correcto=false;
	for (i=0;i<num;i++){
		if (document.forms[0].actividad[i].checked){
			correcto=true;
		}
	}
	return correcto;
	}


//**********************************************************************
// validaciones para el tipo de formulario con tarifas y forma de pago
//**********************************************************************

function validarDinamicoTarifa(num){

	var correcto=false;
	for (i=0;i<num;i++){
		
		if (num==1)	{
			if (document.forms[0].tarifa.checked)	correcto=true; }
		else {
			if (document.forms[0].tarifa[i].checked) correcto=true; }
	
	}
	return correcto;
	}
	/*
	var correcto=false;
	for (i=0;i<num;i++){
		if (document.forms[0].tarifa[i].checked){
			correcto=true;
		}
	}
	return correcto;
	}*/

function validarDinamicoPago(num){
	var correcto=false;
	for (i=0;i<num;i++){
		if (document.forms[0].pago[i].checked){
			correcto=true;
		}
	}
	return correcto;
	}



