function checkrequired(which) {


var pass=true;

	if (document.images) {

		for (i=0;i<which.length;i++) {

			var tempobj=which.elements[i];

			if (tempobj.name.substring(0,8)=="required") {

				if (((tempobj.type=="text"||tempobj.type=="textarea")&&

				   tempobj.value=='')||(tempobj.type.toString().charAt(0)=="s"&&

				   tempobj.selectedIndex==0)) 

				{

						pass=false;

						break;

			    }

				if (tempobj.name=="requiredRUC" && tempobj.value.length!=11)

				{

					pass = false;

					break;

				}
				else if (tempobj.name=="requiredEmail" && tempobj.value!="")
				{
					if(!ValidateEmailCharacters(tempobj.value))
					{
		  			pass = false;			
		   			break;
					}
					if(!ValidateEmail(tempobj.value))
					{
		  			pass = false;			
		   			break;
					}
					if(!ValidateEmailDomain(tempobj.value))
					{
		  			pass = false;			
		   			break;
					}
					if(!ValidateConsonants(tempobj.value))
					{
					pass = false;
					break;
					}
				}

			}	

		}

	}

		

	if (!pass) {

		if (tempobj.name!="requiredRUC")

		{

			shortFieldName=tempobj.name.substring(8,30).toUpperCase();

			alert("Por favor, ingrese el campo "+shortFieldName+" correctamente");

			tempobj.focus();

			return false;

		}

		else

		{

			shortFieldName=tempobj.name.substring(8,30).toUpperCase();

			alert("Por favor, el campo "+shortFieldName+" debe tener 11 caracteres");

			which.requiredRUC.focus();

			return false;

		}

	}	

	

	var ckkFinanzas = document.getElementById('chkFinanzas');

	var ckkLogistica = document.getElementById('chkLogistica');

	var ckkRRHH = document.getElementById('chkRRHH');

	var ckkComercial = document.getElementById('chkComercial');

	var ckkActivosFijos = document.getElementById('chkActivosFijos');

	var ckkMantenimiento = document.getElementById('chkMantenimiento');

	var ckkProduccion = document.getElementById('chkProduccion');

	var ckkPresupuesto = document.getElementById('chkPresupuesto');

	var ckkSGD = document.getElementById('chkSGD');

	var ckkSGR = document.getElementById('chkSGR');

	var ckkSGA = document.getElementById('chkSGA');

	var ckkDM = document.getElementById('chkDM');



	if(!ckkFinanzas.checked)

	{	

		if(!ckkLogistica.checked)

		{	

			if(!ckkRRHH.checked)

			{	

				if(!ckkComercial.checked)

				{	

					if(!ckkActivosFijos.checked)

					{	

						if(!ckkMantenimiento.checked)

						{	

							if(!ckkProduccion.checked)

							{	

								if(!ckkPresupuesto.checked)

								{	

									if(!ckkSGD.checked)

									{	

										if(!ckkSGR.checked)

										{	

											if(!ckkSGA.checked)

											{	

												if(!ckkDM.checked)

												{	

													alert('Por favor, seleccione el servicio en que esta interesado.');

													ckkFinanzas.focus();

													return false;

												}

											}

										}

									}

								}

							}

						}

					}

				}

			}

		}

	}

	

	return true;		

}

function ValidateConsonants(valor) 
{
	valor = valor.toLowerCase();
	if (/[bcdfghjklmnpqrstvwxyz]{7}/.test(valor))
		return false;
	else
		return true;
}  

function ValidateEmailCharacters(valor)
{
	valor = valor.toLowerCase();
 	var ValidChars = "abcdefghijklmnopqrstuvwxyz0123456789@.-_";   
 	var Char;
 	var IsCorrect=true;
	
	for (cont = 0; cont < valor.length && IsCorrect == true; cont++) 
 	{ 
	  	Char = valor.charAt(cont); 
  		if (ValidChars.indexOf(Char) == -1) {
			return false;
		}
	}
	return true;
}

function ValidateEmail(valor) 
{    
	var emailPattern = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9-]{2,60}(\.[a-zA-Z]{2,4}){1,2}$/;  
    return emailPattern.test(valor); 
}

function ValidateEmailDomain(valor) 
{
	valor = valor.toLowerCase();
	if (/.ru$|.sk$|.ua$/i.test(valor))
		return false;	
	else
		return true;
}  

