/*
	Copyright (C) 2003 WebRegio Development b.v.
*/
function CheckForm( iDEform )
{
	var lIntElementCnt = iDEform.elements.length;
	
	for (var lCnt = 0; lCnt < lIntElementCnt; lCnt++ )
	{

		if ( iDEform.elements[ lCnt ].getAttribute("check") != null)
		{
			if(iDEform.elements[ lCnt ].value == "")
			{
				if(iDEform.elements[ lCnt ].getAttribute("required") == "true")
				{
					alert(iDEform.elements[ lCnt ].getAttribute('message').replace(/\\n/gi, '\n'));
					iDEform.elements[ lCnt ].focus();
					return false;
				}
				else
				{
					//return true;
				}
			}
			else
			{
				
				switch(iDEform.elements[ lCnt ].getAttribute("check"))
				{
					case "ALPHANUMBER" : 
						if(checkAlphaNumeric(iDEform.elements[ lCnt ].value))
						{
							//return true;
						}
						else
						{
							alert(iDEform.elements[ lCnt ].getAttribute("message").replace(/\\n/gi, '\n'));
							iDEform.elements[ lCnt ].focus();
							return false;
						}
						break;
					case "ALPHA" : 
						if(checkAlpha(iDEform.elements[ lCnt ].value))
						{
							//return true;
						}
						else
						{
							alert(iDEform.elements[ lCnt ].getAttribute("message").replace(/\\n/gi, '\n'));
							iDEform.elements[ lCnt ].focus();
							return false;
						}
						break;
					case "NUMBER" : 
						if(checkNumeric(iDEform.elements[ lCnt ].value))
						{
							//return true;
						}
						else
						{
							alert(iDEform.elements[ lCnt ].getAttribute("message").replace(/\\n/gi, '\n'));
							iDEform.elements[ lCnt ].focus();
							return false;
						}
						break;
					case "DATE" : 
						if(checkDate(iDEform.elements[ lCnt ].value))
						{
							//return true;
						}
						else
						{
							alert(iDEform.elements[ lCnt ].getAttribute("message").replace(/\\n/gi, '\n'));
							iDEform.elements[ lCnt ].focus();
							return false;
						}
						break;
					case "EMAIL" : 
						if(!checkEmail(iDEform.elements[ lCnt ].value))
						{
							alert(iDEform.elements[ lCnt ].getAttribute("message").replace(/\\n/gi, '\n'));
							iDEform.elements[ lCnt ].focus();
							return false;
						}
						break;
					case "TELEPHONE" : 
						if(checkPhoneNr(iDEform.elements[ lCnt ].value))
						{
							//return true;
						}
						else
						{
							alert(iDEform.elements[ lCnt ].getAttribute("message").replace(/\\n/gi, '\n'));
							iDEform.elements[ lCnt ].focus();
							return false;
						}
						break;			
					case "EMPTY" : 
						if(iDEform.elements[ lCnt ].value != "")
						{
							//return true;
						}
						else
						{
							alert(iDEform.elements[ lCnt ].getAttribute("message").replace(/\\n/gi, '\n'));
							iDEform.elements[ lCnt ].focus();
							return false;
						}
						break;
					case "RADIO" :
						if(checkRadio(iDEform.elements[iDEform.elements[ lCnt ].name]))
						{
							//return true;
						}
						else
						{
							if(iDEform.elements[ lCnt ].getAttribute("required")=="true")
							{
								alert(iDEform.elements[ lCnt ].getAttribute("message").replace(/\\n/gi, '\n'));
								iDEform.elements[ lCnt ].focus();
								return false;
							}
						}
						break;	
					case "selectbox" :
						if(checkSelectBox(iDEform.elements[ lCnt ]))
						{
							//return true;
						}
						else
						{
							alert(iDEform.elements[ lCnt ].getAttribute("message").replace(/\\n/gi, '\n'));
							iDEform.elements[ lCnt ].focus();
							return false;
						}
						break;
					case "zip" : 
						if(checkZip(iDEform.elements[ lCnt ].value))
						{
							//return true;
						}
						else
						{
							alert(iDEform.elements[ lCnt ].getAttribute("message").replace(/\\n/gi, '\n'));
							iDEform.elements[ lCnt ].focus();
							return false;
						}
						break;				
				}
			}	
		};
	};
	return true;
};;



function checkAlphaNumeric(lStrValue) {
	return (/^[a-z|A-Z|0-9]*$/.test(lStrValue));
}

function checkAlpha(lStrValue) {
	return (/^[a-z|A-Z]*$/.test(lStrValue));
}

function checkNumeric(lStrValue) {
	return (/^[0-9]*$/.test(lStrValue));
}

function checkDate(lStrValue) {
	if (lStrValue.length == 10) {
		var lArrStr = lStrValue.split( "-" );
		if (lArrStr.length == 3) {
			var lDate	= new Date( lArrStr[ 2 ], lArrStr[ 1 ] - 1, lArrStr[ 0 ] );
			var lIntMonth = lDate.getMonth() + 1;
		
			if (lArrStr[ 2 ].length == 4) {
				if (  lIntMonth == lArrStr[ 1 ] ) {
					return true;
				}
			}
		}
	}
	
	return false;
}

function checkEmail(lstrValue) {
    return (lstrValue.search(/^[\w\.\-_]+@([\w\.\-_]+\.)+[A-Za-z]{2,4}$/) != -1)
}
function checkPhoneNr(lstrValue) {
	return (lstrValue.search(/^[\d|\-|\s]{0,11}$/) != -1)

	/*var regNet = /^\d{3,4}$/;
	var regAbonnee = /^\d{6,7}$/;
	var arrNumbers = lstrValue.split('-');
	if (arrNumbers.length != 2) {
		return false;
	} else {
		return ( (arrNumbers[0].search(regNet) != -1) && (arrNumbers[1].search(regAbonnee) != -1) )
	}*/
}
function checkRadio(lObjRadio)
{
	var intRadioIndex;
	var blnRadioChecked = false;
	for (intRadioIndex = 0; intRadioIndex<lObjRadio.length; intRadioIndex++) {
		if (lObjRadio[intRadioIndex].checked) blnRadioChecked = true;
	}
	return blnRadioChecked;
}
function checkSelectBox(lObjSelect)
{
	if(lObjSelect.selectedIndex != -1)
	{
		return true;
	}
	else
	{
		return false;
	}
}
function checkZip(lstrValue) {
    return (lstrValue.search(/^[0-9]{4}[a-z|A-Z]{2}$/) != -1)
}
