vitro/webapp/web/js/commentsForm.js

81 lines
No EOL
2.6 KiB
JavaScript

/* $This file is distributed under the terms of the license in /doc/license.txt$ */
<!-- -->
<script language="JavaScript" type="text/javascript">
<!--
function ValidateForm(formName) {
var x = 0; // counts form elements - used as array index
var y = 0; // counts required fields - used as array index
errors = false;
var errorList;
if (document.forms[formName].RequiredFields) {
errorList = 'Please fill out the following required fields:\n';
// build array of required fields
reqStr = document.forms[formName].RequiredFields.value;
requiredFields = reqStr.split(',');
// build array holding the names of required fields as
// displayed in error box
if (document.forms[formName].RequiredFieldsNames) {
reqNameStr = document.forms[formName].RequiredFieldsNames.value;
} else {
reqNameStr = document.forms[formName].RequiredFields.value;
}
requiredNames = reqNameStr.split(',');
// Loop through form elements, checking for required fields
while ((x < document.forms[formName].elements.length)) {
if (document.forms[formName].elements[x].name == requiredFields[y]) {
if (document.forms[formName].elements[x].value == '') {
errorList += requiredNames[y] + '\n';
errors = true;
}
y++;
}
x++;
}
if (errors) {
alert(errorList);
return false;
}
x = 0;
y = 0;
}
// Check for Email formatting
if (document.forms[formName].EmailFields) {
errorList = 'Please format your e-mail address as: \"userid@institution.edu\" or enter another complete email address';
// build array of required fields
emailStr = document.forms[formName].EmailFields.value;
emailFields = emailStr.split(',');
// build array holding the names of required fields as
// displayed in error box
if (document.forms[formName].EmailFieldsNames) {
emailNameStr = document.forms[formName].EmailFieldsNames.value;
} else {
emailNameStr = document.forms[formName].EmailFields.value;
}
emailNames = emailNameStr.split(',');
// Loop through form elements, checking for required fields
while ((x < document.forms[formName].elements.length)) {
if (document.forms[formName].elements[x].name == emailFields[y]) {
if ((document.forms[formName].elements[x].value.indexOf('@') < 1)
|| (document.forms[formName].elements[x].value.lastIndexOf('.') < document.forms[formName].elements[x].value.indexOf('@')+1)) {
errors = true;
}
y++;
}
x++;
}
if (errors) {
alert(errorList);
return false;
}
x = 0;
y = 0;
}
return true;
}
-->
</script>