var returnedVariable = true;		

function validate(frm)
{
		
	var msg = "";
	for(i=0;i<formArray.length;i++)
	{
		if(formArray[i].length>=4)
			var val1=eval("frm."+formArray[i][3]+".value");
		if(formArray[i].length>=5)
			var val2=eval("frm."+formArray[i][4]+".value");	
		var val=eval("frm."+formArray[i][2]+".value");

		eval(""+formArray[i][0]+";");
		
		if(!returnedVariable)
			msg = msg + formArray[i][1]+"\n";
		
		returnedVariable = true;		
	}
	if(msg=="")
		return true;
		
	alert("Favor de llenar los campos requeridos.\n"+msg);
	return false;
}

function isCat(val){
	//var cate = document.getElementById('id_cat').value;
	
	if (val=="0"){
		returnedVariable = false;
		return false;
	} else
		return true;
}



function isRadioSexo(val){
	if (!document.f1.sexo[0].checked && !document.f1.sexo[1].checked) {
		// no radio button is selected
		returnedVariable = false;
		return false;
	}
	return true;
}

function isRadioInteres(val){
	if (!document.f1.interes[0].checked && !document.f1.interes[1].checked && !document.f1.interes[2].checked) {
		// no radio button is selected
		returnedVariable = false;
		return false;
	}
	return true;
}

function isRadioDueno(val){
	if (!document.f1.dueno_de_propiedad[0].checked && !document.f1.dueno_de_propiedad[1].checked) {
		// no radio button is selected
		returnedVariable = false;
		return false;
	}
	return true;
}

function isChecked(val){
	if (!document.f1.acepto.checked) {
		// no radio button is selected
		returnedVariable = false;
		return false;
	}
	return true;
}

function isNotEmpty(val) 
{
	if (trim(val) == "")
	{	
		returnedVariable = false;
		return false;
	}
	return true;
}

function isEqual(val,val1)
{
	if (val == val1)
	{	
		return true;
	} else {
			returnedVariable = false;
			return false;
		}
}
function isNotEmptyPhone(val,val1,val2)
{
	if (trim(val) == "" || trim(val1) == "" || trim(val2) == "")
	{	
		returnedVariable = false;
		return false;
	}
	else
	{
		val = trim(val+val+val2);
		
		var regExpress2 = val.match(/^\d{10}$/);
		var regExpress3 = val.match(/^(\d{3})\-\d{3}-\d{4}$/);
		if(trim(val)!="")
			if (regExpress2 == null && regExpress3 == null) 
				returnedVariable = false;
	}
	return true;
}

function isCompany(field,val1)
{
	if(val1=="Automotive Industry/Dealership")
		if(field == "")	
		{
			returnedVariable = false;
			return false;
		}
}

function isYes(field,val1)
{
	if(val1=="yes")
		if(field == "")	
		{
			returnedVariable = false;
			return false;
		}
}

function isValidImage(val) 
{
	var image_ext;
	if(trim(val)!='')
	{
		if(val.lastIndexOf('.')==-1)
			return false
		
		image_ext=val.substring(val.lastIndexOf('.')+1,val.length).toLowerCase();
		if(image_ext!='jpg' && image_ext!='jpeg' && image_ext!='png' && image_ext!='gif')
		{
			returnedVariable = false;
			return false;
		}
		else
			return true;
	}
	else
		return true;
}

function isEmail(val) 
{	
	if(trim(val)!="")
		if(val.indexOf('@')<0 || val.indexOf('.')<0)
			returnedVariable = false;
}

/*function isPhone(val) 
{	
	var regExpress2 = val.match(/^\d{10}$/);
	var regExpress3 = val.match(/^(\d{2})\s\d{4}\s\d{4}$/);
	if(trim(val)!="")
		if (regExpress2 == null && regExpress3 == null) 
			returnedVariable = false;
}*/

function isPhone(val) 
{	
	
	var regExpress2 = val.match(/^\d{10}$/);
	var regExpress3 = val.match(/^(\d{3})\-\d{3}-\d{4}$/);
	//var regExpress4 = val.match(/(^(\d{3})\)\d{3}-\d{4}$/);
	//var regExpress5 = val.match(/^(\d{3})\)\d{3}-\d{4}$/);
	if(trim(val)!="")
		if (regExpress2 == null && regExpress3 == null && regExpress4 == null) 
			returnedVariable = false;
}
function isPhoneMob(val,val1,val2)
{
	
	val = trim(val+val+val2);
	
	var regExpress2 = val.match(/^\d{10}$/);
	var regExpress3 = val.match(/^(\d{3})\-\d{3}-\d{4}$/);
	if(trim(val)!="")
		if (regExpress2 == null && regExpress3 == null) 
			returnedVariable = false;
}

function IsUSPhone(val) 
{
		var matchArr2 = val.match(/^\d{10}$/);
		var matchArr3 = val.match(/^(\d{3})\-\d{3}-\d{4}$/);
		var returnedVariable = true;
	
	if (matchArr2 == null && matchArr3 == null && IsNotEmpty(val)) 
		returnedVariable = false;
		
	
}
function IsPostCode(val) 
{	
	var matchArr = val.match(/^\d{4}$/);
	var status = true;
	if(trim(val)!="")
	if(matchArr == null)
		returnedVariable = false;
}

function isConfirmPassword(val,val1) 
{
	if(trim(val)!=trim(val1))
		returnedVariable = false;
}

function isConfirmEmail(val,val1) 
{
	if(trim(val)!=trim(val1))
		returnedVariable = false;
}

function isPercent(val)
{
	if(trim(val).length>0)
	{
		allowed = "0123456789()-,.% ";
		digits = "0123456789";
		numCount=0;
		for(j=0;j<val.length;j++)
		{
			if(allowed.indexOf(val.charAt(j))<0)
				returnedVariable=false;
			
			if(digits.indexOf(val.charAt(j))>-1)
				numCount++;	
		}
		if(returnedVariable && numCount==0)
			returnedVariable=false;
	}		
}

function isMoney(val)
{
	if(trim(val).length>0)
	{
		allowed = "0123456789()-,.$ ";
		digits = "0123456789";
		numCount=0;
		for(j=0;j<val.length;j++)
		{
			if(allowed.indexOf(val.charAt(j))<0)
				returnedVariable=false;
			if(digits.indexOf(val.charAt(j))>-1)
				numCount++;	
		}
		if(returnedVariable && numCount==0)
			returnedVariable=false;
	}	
}

function isNumber(val,len) 
{
	if(trim(val) != '')
	{
		if(isNaN(trim(val)))
		   returnedVariable = false;
		
		if(len!=0)
		{	
			if(!(trim(val).length == len))
			   returnedVariable = false;
		}
	}
	
}
function isZip(val,val1)
{
	zip=trim(val+""+val1);
	
	if(trim(zip)!= '')	
	{
		if(isNaN(zip))
			returnedVariable = false;
		
		if(zip.length<9)	
			returnedVariable = false;	
	}
}

function isZip1(val) 
{	
	var regExpress1 = val.match(/^\d{5}(-\d{4})?$/);
	var regExpress2 = val.match(/^\d{9}$/);
	
	if(trim(val)!="")
		if ((regExpress1 == null) && (regExpress2 == null))
			returnedVariable = false;
}

function isPhone3(val,val1,val2)
{
	if(trim(val+val1+val2)!="")	
	{
		if(isNaN(val+val1+val2))
			returnedVariable = false;
		
		if((trim(val+val1+val2)).length<10)	
			returnedVariable = false;
	}
}

function isDate(val,val1,val2,require)
{
	if(trim(val+val1+val2) != "")
	{	
		if((trim(val+val1+val2)).length!=8)
			returnedVariable = false;
	}
	else
	{
		if(require==1)
			returnedVariable = false;			
	}
}

function isNum100(val)
{	
	if(trim(val)!="")	
	{
		if(isNaN(trim(val)))
		   returnedVariable = false;
		else	
			if(val<0 || val>100)
	    		returnedVariable = false;
	}
}

function isBigerNumber(val,val1)
{
	if(trim(val)!="" && trim(val1)!="")
	{	
		if(val>val1)
			returnedVariable = false;
	}
	else
	{
		if(trim(val+val1)!="")
			returnedVariable = false;	
	}
			
}
function isASTPhone(val) 
{	
	var regExpress2 = val.match(/^\d{8}$/);
	
	if(trim(val)!="")
		if(regExpress2 == null )
			returnedVariable = false;
}

function isSelected(val)
{
	if (val == "")
	{
		returnedVariable = false;
		return false;
	}
	return true;
}

function DependingFields(val,val1,val2)
{
	if (val == val1)
	{	
		if(val2=="")
			returnedVariable = false;
	}
}


function isPassword(val)
{
	
	if(val.length<8)	
		returnedVariable = false;	
}

function isSSN(val) 
{		
	if(trim(val).length>0)
	{
		var matchArr = val.match(/^(\d{3})-?\d{2}-?\d{4}$/);
		var numDashes = val.split('-').length - 1;
		if (matchArr == null || numDashes == 1) 
		{
			returnedVariable = false;
		}
		else 
			if (parseInt(matchArr[1],10)==0) 
			{
				returnedVariable = false;
			}
	}
}

function isAges(val,val1)
{
	if(!isNaN(val) && val>0)
	{
		var ages = val1.split(",");
		if(ages.length!=val)
			returnedVariable = false;
	}	
}

function IsHTTP(val)
{	
	var status = true;
	if(trim(val).length>0)
	{
		var matchArr = val.match(/^(http|https):\/\/[\w\W]+$/); 
		if(matchArr == null)
			status = false;
	}
	returnedVariable = status;
	return status;	
}

function trim(str)
{
     return str.replace(/^\s+/g, '').replace(/\s+$/g, '');
}

function IsColor(val)
{
	var validChar = '0123456789ABCDEF';
	var status = true;
	var i; 
	color = val.toUpperCase();
	
	if(color!="")
	{	
		if(color.charAt(0)=="#")
		{
			
			if(color.length==7)
			{
				// Check for legal characters in string
				for (i = 1; i < 7; i++ )
				{
					if(validChar.indexOf(color.charAt(i)) < 0)
						status = false;
				}
			}
			else
				status = false;
		}
	}
	else
		status = false;
	returnedVariable = status;
	return status;	
}


