// stk 2007/03/13

function ixFormError(objField) {
	if(objField.getAttribute("message")) {
		alert(objField.getAttribute("message"));
	}
	else {
		alert("Please complete all required fields.");
	}
	objField.focus();
};
function ixCheckForm(objForm,strExtraValidation){var emailRegex=/^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;var formFields=objForm.elements;for(var i=0;i<formFields.length;i++){if(formFields[i].getAttribute("required")&&((formFields[i].getAttribute("type")!="checkbox"&&formFields[i].value=="")||(formFields[i].getAttribute("type")=="checkbox"&&formFields[i].checked==false))){ixFormError(formFields[i],"required");return false;}
if(formFields[i].getAttribute("minlength")&&formFields[i].value.length<parseInt(formFields[i].getAttribute("minlength"))){ixFormError(formFields[i],"minlength");return false;}
if(formFields[i].getAttribute("validation")){switch(formFields[i].getAttribute("validation").split(":")[0])
{case"regex":testRE=new RegExp(formFields[i].getAttribute("regex"));if(!formFields[i].value.match(testRE)){ixFormError(formFields[i],"regex");return false;}
break;case"email":if(!emailRegex.test(formFields[i].value)&&formFields[i].value!=""){ixFormError(formFields[i],"email");return false;}
break;case"number":if(isNaN(parseFloat(formFields[i].value))){ixFormError(formFields[i],"number");return false;}
if(formFields[i].getAttribute("minval")&&parseFloat(formFields[i].value)<parseFloat(formFields[i].getAttribute("minval"))){ixFormError(formFields[i],"minval");return false;}
if(formFields[i].getAttribute("maxval")&&parseFloat(formFields[i].value)>parseFloat(formFields[i].getAttribute("maxval"))){ixFormError(formFields[i],"maxval");return false;}
break;case"match":var matchField=formFields[i].getAttribute("validation").split(":")[1];if(formFields[i].value!=objForm.elements[matchField].value){ixFormError(formFields[i],"match");return false;}
break;}}}
var formFieldsets=objForm.getElementsByTagName("fieldset");for(var i=0;i<formFieldsets.length;i++){if(formFieldsets[i].getAttribute("required")){var thisSetOk=false;var thisFields=formFieldsets[i].getElementsByTagName("input");for(var x=0;x<thisFields.length;x++){if(thisFields[x].checked==true){thisSetOk=true;break;}}
if(!thisSetOk){ixFormError(formFields[i],"fieldset");return false;}}}
if(strExtraValidation){eval("extraValidationResult = "+strExtraValidation);if(extraValidationResult){return true;}
else{return false;}}};