/*
* Developed By Santadreams Digital Solutions.
*
* This Script is only for indoor purpose and for authorized santadreams clients. Distribution 
* of this script & selling outside is strictly prohibited. 
*
* Email : admin@santadreams.in
* Url   : http://santadreams.in
*
* Module Development # 184, Class # 17, Javascript Form Validations
* 
* _blank(Form,Obj,ErrMsg)
* _blankarray(Form,Obj,ErrMsg)
*
* _compare(Form,Obj1,Obj2,ErrMsg)
* _condition(Form,Obj1,Obj2,Oper,ErrMsg,SkipEmpty)
*
* _combobox(Form,Obj,ErrMsg)
*
* _username(Form,Obj,ErrMsg)
* _alpha(Form,Obj,ErrMsg)
* _alphanumeric(Form,Obj,ErrMsg)
* _alphaspecial(Form,Obj,ErrMsg)
* _address(Form,Obj,ErrMsg)
* _email(Form,Obj,ErrMsg)
*
* _numeric(Form,Obj,ErrMsg)
* _numericx(Form,Obj1,Obj2,ErrMsg)
* _float(Form,Obj,ErrMsg)
*
* _mobile(Form,Obj,ErrMsg)
* _usphone(Form,Obj,ErrMsg)
* _phone(Form,Obj,ErrMsg)
*
* _lengthmin(Form,Obj,ln,ErrMsg)
* _lengthmax(Form,Obj,ln,ErrMsg)
* _length(Form,Obj,lnn,lnx,ErrMsg)
* 
*/



ErrorMessage='';
Errors_Found=0;

function _blank(Form,Obj,ErrMsg)
{
	if(document.forms[Form][Obj].value=='')
	{
		_Santadreams_RaiseError(ErrMsg);
	}
}

function _blankarray(Form,Obj,ErrMsg)
{

for(i=0;i<document.forms[Form]['name'].length;i++)
{
	alert(i);
//	alert(document.forms[Form][Obj+'['+i+']'].value);
	
}
	/*
	if(document.forms[Form][Obj].value=='')
	{
		_Santadreams_RaiseError(ErrMsg);
	}
	*/
	
}

function _compare(Form,Obj1,Obj2,ErrMsg)
{
	if(document.forms[Form][Obj1].value!=document.forms[Form][Obj2].value)
	{
		_Santadreams_RaiseError(ErrMsg);
	}
}

function _condition(Form,Obj1,Obj2,Oper,ErrMsg,SkipEmpty)
{

if(document.forms[Form][Obj1].value=='' && document.forms[Form][Obj2].value=='')
{
	if(SkipEmpty)
	{
		return true;
	}else{
	_Santadreams_RaiseError(ErrMsg);
	}
}

	if(_numericx(Obj1,Obj2,ErrMsg))
	{

	switch(Oper)
	{
		case '=':
		if(!(parseInt(document.forms[Form][Obj1].value)==parseInt(document.forms[Form][Obj2].value)))
		{
			_Santadreams_RaiseError(ErrMsg);
		}
		break;
		
		case '>':
		if(!(parseInt(document.forms[Form][Obj1].value)>parseInt(document.forms[Form][Obj2].value)))
		{
			_Santadreams_RaiseError(ErrMsg);
		}
		break;
		case '<':
		if(!(parseInt(document.forms[Form][Obj1].value)<parseInt(document.forms[Form][Obj2].value)))
		{
			_Santadreams_RaiseError(ErrMsg);
		}
		break;
		case '<=':
		if(!(parseInt(document.forms[Form][Obj1].value)<=parseInt(document.forms[Form][Obj2].value)))
		{
			_Santadreams_RaiseError(ErrMsg);
		}
		break;
		case '>=':
		if(!(parseInt(document.forms[Form][Obj1].value)>=parseInt(document.forms[Form][Obj2].value)))
		{
			_Santadreams_RaiseError(ErrMsg);
		}
		break;
	}
	}
	
}


function _combobox(Form,Obj,ErrMsg)
{
	if(document.forms[Form][Obj].value=='')
	{
		_Santadreams_RaiseError(ErrMsg);
	}

}

function _username(Form,Obj,ErrMsg)
{
	
var fieldValue=document.forms[Form][Obj].value;

var regex = /^[a-zA-Z0-9\ \-\.\_]+$/;
	if(!regex.test(fieldValue))
	{
		_Santadreams_RaiseError(ErrMsg);
	}
	
}


function _alpha(Form,Obj,ErrMsg)
{
	
var fieldValue=document.forms[Form][Obj].value;

var regex = /^[a-zA-Z]+$/;
	if(!regex.test(fieldValue))
	{
		_Santadreams_RaiseError(ErrMsg);
	}
	
}

function _numeric(Form,Obj,ErrMsg)
{
	
var fieldValue=document.forms[Form][Obj].value;

var regex = /^[0-9]+$/;
	if(!regex.test(fieldValue))
	{
		if(!fieldValue=='') _Santadreams_RaiseError(ErrMsg);
	}
	
}

function _numericx(Form,Obj1,Obj2,ErrMsg)
{
var rerror=false;
var fieldValue1=document.forms[Form][Obj1].value;
var fieldValue2=document.forms[Form][Obj2].value;
var regex = /^[0-9]+$/;


if(!regex.test(fieldValue1) && fieldValue1!='')
		rerror=true;

if(!regex.test(fieldValue2) && fieldValue2!='')
		rerror=true;
	
	
	if(rerror)
	{
		_Santadreams_RaiseError(ErrMsg);
	return false;
	}else{
		return true;
	}
	
}

function _float(Form,Obj,ErrMsg)
{
	
var fieldValue=document.forms[Form][Obj].value;

var regex = /^[0-9\.]+$/;
	if(!regex.test(fieldValue))
	{
		_Santadreams_RaiseError(ErrMsg);
	}
	
}


function _alphanumeric(Form,Obj,ErrMsg)
{
	
var fieldValue=document.forms[Form][Obj].value;

var regex = /^[a-zA-Z0-9]+$/;
	if(!regex.test(fieldValue))
	{
		_Santadreams_RaiseError(ErrMsg);
	}
	
}

function _alphaspecial(Form,Obj,ErrMsg)
{
	
var fieldValue=document.forms[Form][Obj].value;

var regex = /^[a-zA-Z\ \.\_\,\-]+$/;
	if(!regex.test(fieldValue))
	{
		_Santadreams_RaiseError(ErrMsg);
	}
	
}

function _address(Form,Obj,ErrMsg)
{
	
var fieldValue=document.forms[Form][Obj].value;

var regex = /^[a-zA-Z0-9\#\.\,\-\_\/]+$/;
	if(!regex.test(fieldValue))
	{
		_Santadreams_RaiseError(ErrMsg);
	}
	
}

function _email(Form,Obj,ErrMsg)
{
	
var fieldValue=document.forms[Form][Obj].value;

var regex = /^[\w]+(\.[\w]+)*@([\w\-]+\.)+[a-zA-Z]{2,7}$/ ;
	if(!regex.test(fieldValue))
	{
		_Santadreams_RaiseError(ErrMsg);
	}
	
}

function _mobile(Form,Obj,ErrMsg)
{
	
var fieldValue=document.forms[Form][Obj].value;

var regex1 = /^[\d]{10}$/;
var regex2 = /[\(][\+][\d]{2}[\)][\d]{10}/;
	
	if(!regex1.test(fieldValue) && !regex2.test(fieldValue))
	{
		_Santadreams_RaiseError(ErrMsg);
	}
	
}

function _usphone(Form,Obj,ErrMsg)
{
	
var fieldValue=document.forms[Form][Obj].value;

var regex1 = /[\d]{3}[\-][\d]{3}[\-][\d]{4}/;
	if(!regex1.test(fieldValue))
	{
		_Santadreams_RaiseError(ErrMsg);
	}
	
}

function _phone(Form,Obj,ErrMsg)
{
	
var fieldValue=document.forms[Form][Obj].value;

var regex1 = /[\d]{3}[\-][\d]{3}[\-][\d]{4}/;
var regex2 = /^[\d]{10}$/;
var regex3 = /[\(][\+][\d]{2}[\)][\d]{10}/;
var regex4 = /[\+][\d]{12}$/;


	if( !regex1.test(fieldValue) && !regex2.test(fieldValue) && !regex3.test(fieldValue) && !regex4.test(fieldValue))
	{
		_Santadreams_RaiseError(ErrMsg);
	}
	
}


function _lengthmin(Form,Obj,ln,ErrMsg)
{

var fieldValue=document.forms[Form][Obj].value;
	
	if(fieldValue.length<ln)
	{
		_Santadreams_RaiseError(ErrMsg);
	}
	
}

function _lengthmax(Form,Obj,ln,ErrMsg)
{

var fieldValue=document.forms[Form][Obj].value;
	
	if(fieldValue.length>ln)
	{
		_Santadreams_RaiseError(ErrMsg);
	}
	
}

function _length(Form,Obj,lnn,lnx,ErrMsg)
{

var fieldValue=document.forms[Form][Obj].value;
	
	if(fieldValue.length<lnn || fieldValue.length>lnx)
	{
		_Santadreams_RaiseError(ErrMsg);
	}
	
}

function _Santadreams_RaiseError(ErrMsg)
{
		ErrorMessage +=ErrMsg + '\n';
		Errors_Found++;
}

function finalize()
{
	if (Errors_Found) 
	{
		alert (ErrorMessage);
		ErrorMessage='';
		Errors_Found=0;
		return false;
	}else{
		return true;
	}
}

