/*---------------------------------- Check any form......

!!!!!!!!!!!----------------------------------------------------\/
in order to use this valedation you first have to enter 
the next data in each field you ant to validate:
validate="1" 
caption="ма иеб"  ---> the msg to show in the alert
regEx="(.*@{1}.*\..*)"  --> what content can this field get!
!!!!!!!!!!!----------------------------------------------------/\


Input ===> this.form (the form Object to be checked)
Output ==> Boolean result (true/false)

The form element should have these properties :
{
	validate --> either 1 or 0 (check or not).
	regEx --> the first regular expression.
	regEx2 --> the second regular expression.
		*(note)--> the check is regEx or regEx2 but not both.
	caption --> the text you want the user to get.
}

An example of a regular expression :
{
	(.*@{1}.*\..*) --> checks the email to be valid.
	(.{5,7}) --> any text at least 5 chars long but less then 7
	([0-9]) --> just the numeric values.
	(.*@{1}.*\..*) --> email
	regEx='([\W])' regEx2='([\w])'")' any text
	
	regEx=([0-9]{0,})
	regEx2=([a-zA-Z])
		result:
		{
			(the text box can be empty or has numbers but not letters)
				or
			(the text box can't be empty and contains only english letters)
		}
	Note: You don't have to put regEx, if none is present the field is checked to have something.
	Note: You can read all about Regular Expressions in the MSDN Library.
}
--------------------------------------------------------*/

function checkForm(formObj)
{
	var formObj=formObj;
	var elmLength=formObj.elements.length;
	var i,globalAlertString="";
	for(i=0;i<elmLength;i++)
	{
		if(eval(formObj.elements[i].validate))
		 {
				valValue = eval(formObj.elements[i].validate);	//**
				if (valValue==1) globalAlertString+=checkItem(formObj.elements[i]);
				else if ((formObj.elements[i].value.length>0)&&(valValue==2)) globalAlertString+=checkItem(formObj.elements[i]);
			
			//globalAlertString+=checkItem(formObj.elements[i]);
		}	
			
			
			
	}
			
	if(globalAlertString.length)
	{
		alert(globalAlertString);
		return false;
	}
	return true;
}


function checkFormReturnError(formObj)
{
	var formObj=formObj;
	var elmLength=formObj.elements.length;
	var i,globalAlertString="";
	
	for(i=0;i<elmLength;i++)
	{
	
						if(eval(formObj.elements[i].validate))
						{
						
								valValue = eval(formObj.elements[i].validate);	//**
								
								if (valValue==1) 
								{
										globalAlertString+=checkItemHTML(formObj.elements[i]);
							//	alert(formObj.elements[i].id +":" + globalAlertString);
								}
								
								else if ((formObj.elements[i].value.length>0)&&(valValue==2)) 
										globalAlertString+=checkItemHTML(formObj.elements[i]);
							
							//globalAlertString+=checkItem(formObj.elements[i]);
						}	
			 
	}
			
	if(globalAlertString.length)
	{
		//alert(globalAlertString);
		return globalAlertString;
	}
	return "";
}




function checkItemHTML(item)
{
	var item=item;
	var regEx,result=true,result2=false;
	var temp;
	if	(item.regEx=='notEmpty')	{temp=item.value;result=temp.length}
	else 
	{
		if(item.regEx!=null)
		{
			regEx=new RegExp(item.regEx,"gi");
			result=regEx.test(trim(item.value));
		//	alert(result +":"+item.value);
			if(item.regEx2!=null)
			{
				regEx=new RegExp(item.regEx2,"gi");
				result2=regEx.test(trim(item.value));
			}
			result^=result2;
		}
		else
			result=item.length;
	}	
	if(!result){
	if (document.getElementById(item.id+"Err")!=null){
		return document.getElementById(item.id+"Err").value+"\t\n";
		}
	else{
		return "";
		}}
	else 
	     return ""; 	
               
}








function checkItem(item)
{
	var item=item;
	var regEx,result=true,result2=false;
	var temp;
	if	(item.regEx=='notEmpty')	{temp=item.value;result=temp.length}
	else 
	{
		if(item.regEx!=null)
		{
			regEx=new RegExp(item.regEx,"gi");
			result=regEx.test(trim(item.value));
			if(item.regEx2!=null)
			{
				regEx=new RegExp(item.regEx2,"gi");
				result2=regEx.test(trim(item.value));
			}
			result^=result2;
		}
		else
			result=item.length;
	}	
	if(!result)
		return item.caption+"\t\n";
	else
		return "";
		
}




function checkEmpty(formObj,field)
{
	alert("formObj.field.value")
}




function trim (pString)  {
	for (i = 0; i < pString.length  && pString.charAt(i) == " "; i++);
		for (j = pString.length-1; j >= 0 && pString.charAt(j) == " "; j--);
			return ((j < i) ? '' : pString.substring(i,j+1));
}

//----------------- End Check form functions




