function disableEnterKey(e) {
	if (window.event.keyCode == 13 && window.event.srcElement.type != 'textarea') {
	return false;
	}
}
function showMessage(message, elements, i, selectElement) {
	if (!selectElement) {
		selectElement=1;
	}
	if (selectElement=='' || selectElement==null) {
		selectElement=1;
	}
	alert(message);
	try {elements[i].focus();} catch(e) {}
	/*if (selectElement==1) {
		elements[i].select();
	}*/
	return false;
}

function disableEnterKeyFunction (form) {
	if (form.getAttribute("disableEnterKey") && form.getAttribute("disableEnterKey") != '' && form.getAttribute("disableEnterKey") != null) {
		document.form.onkeypress = disableEnterKey;
		if (document.layers) document.captureEvents(Event.KEYPRESS);
	}
}

function CheckForm(form) 
{
var elements=form.elements;
var message='';
for(var i=0; i<=elements.length-1; i++) { 
	if (elements[i].style.display !='none' && (lcase(elements[i].getAttribute("required")) == 'yes' || elements[i].getAttribute("validate") != null || elements[i].getAttribute("minlength")  != null || elements[i].getAttribute("maxlength")  != null || elements[i].getAttribute("selectalloptions")  != null)) 	{ 
		if ((elements[i].getAttribute("message") == '') || (elements[i].getAttribute("message")==null) || !(elements[i].getAttribute("message"))) {
			if (lcase(elements[i].getAttribute("required")) == 'yes' && elements[i].value == '') { 
				message=elements[i].name+' is required.'; 		
			}
			else {
				message=elements[i].name+' is invalid.'; 
			}
		}
		else {
			message=elements[i].getAttribute("message")
		}	
			
		if (lcase(elements[i].type) == 'text' || lcase(elements[i].type) == 'password' || lcase(elements[i].type) == 'textarea' || lcase(elements[i].type) == 'file') 	{
			if (lcase(elements[i].getAttribute("required")) == 'yes' && elements[i].value == '') { 
				return showMessage(message, elements, i);
				/*alert(message);
				elements[i].focus();
				elements[i].select();
				return false;*/
			}
			else if (elements[i].value != '')
			{
				if (lcase(elements[i].getAttribute("validate")) == 'email' && !IsEmail(elements[i].value)) {
					return showMessage(message, elements, i);
				}
				else if (lcase(elements[i].getAttribute("validate")) == 'integer' && !CheckInteger(elements[i].value)) {
					return showMessage(message, elements, i);
				}
				else if (lcase(elements[i].getAttribute("validate")) == 'creditcard' && !CheckCreditCard(elements[i].value)) {
					return showMessage(message, elements, i);
				}
				else if (lcase(elements[i].getAttribute("validate")) == 'telephone' && !CheckPhone(elements[i].value)) {
					return showMessage(message, elements, i);
				}
				else if (lcase(elements[i].getAttribute("validate")) == 'time' && !CheckTime(elements[i].value)) {
					return showMessage(message, elements, i);
				}
				else if (lcase(elements[i].getAttribute("validate")) == 'zipcode' && !CheckZipcode(elements[i].value)) {
					return showMessage(message, elements, i);
				} 
				else if (elements[i].getAttribute("minlength") && len(elements[i].value) < (elements[i].getAttribute("minlength"))) {
					return showMessage(message, elements, i);
				} 
				else if (elements[i].getAttribute("maxlength") && (elements[i].getAttribute("maxlength")) < len(elements[i].value)) {
					return showMessage(message, elements, i);
				} 
				else if (lcase(elements[i].getAttribute("validate")) == 'date' && !CheckDate(elements[i].value)) {
					return showMessage(message, elements, i);
				}
			}
		}
		else if (lcase(elements[i].type) == 'select-one') {
			if (lcase(elements[i].getAttribute("required")) == 'yes' && (elements[i].selectedIndex == -1 ||  elements[i].options[elements[i].selectedIndex].value == '')) {
				/*alert(message);
				elements[i].focus();
				//elements[i].select();
				return false;*/
				return showMessage(message, elements, i, 0);
			}	
		}
		else if (lcase(elements[i].type) == 'select-multiple'){ 
			var selected=0;
			//if (lcase(elements[i].getAttribute("selectalloptions"))) {
				
			//	for (var j = 0; j < (elements[i].length); j++)
			//		elements[i].options[j].selected=true; 
			//		}
			if (lcase(elements[i].getAttribute("required")) == 'yes') {
				if (lcase(elements[i].getAttribute("selectalloptions")) && elements[i].length >= 1) {
					selected=1;	
				}
				else {
					for (var j = 0; j < (elements[i].length); j++) {
						if (elements[i].options[j].selected) { 
							selected=1;
							break;										
						}
					}
				}		
				if (selected==0) {
					return showMessage(message, elements, i, 0);
				}
			}	
		}
		else if (lcase(elements[i].type) == 'checkbox' || lcase(elements[i].type) == 'radio')	{
			var objName=elements[i].name;
			if (lcase(elements[i].getAttribute("required")) == 'yes'  && objName.length > 1 )	{ 
				var checked=0;
				for (var j = 0; j <= (elements.length - 1); j++) {
					if (elements[j].checked) { 
						checked=1;
						break;										
					}
				}		
				if (checked==0) {
					return showMessage(message, elements, i, 0);
				}
			}			
			else if (lcase(elements[i].getAttribute("required")) == 'yes' && elements[i].checked==false) {
				return showMessage(message, elements, i, 0);
			}			
		}
		else if (lcase(elements[i].type) == 'submit')	{
			var SubmitButton=elements[i];
		}
	}
}

var CheckCompleted=0;

if (form.getAttribute("onSubmitFunctions") && form.getAttribute("onSubmitFunctions") != '' && form.getAttribute("onSubmitFunctions") != null) {
	CheckCompleted=eval(form.getAttribute("onSubmitFunctions"));
}
else
	CheckCompleted=true;
	
if (CheckCompleted) {
for(var i=0; i<=elements.length-1; i++)
	if (lcase(elements[i].type) == 'select-multiple' && lcase(elements[i].getAttribute("selectalloptions")))
		for (var j = 0; j < (elements[i].length); j++)
			elements[i].options[j].selected=true; 
}
else
	return false;
}
