// JavaScript Document

function validateForm(form) { 
	var errortext = "";
	var errortext2 = "";
	var inputs = document.getElementsByTagName("input");
		for (var p=0; p < inputs.length; p++) { 
			if (inputs[p].getAttribute('dl:validate') == 'presence') { 
				var value = inputs[p].value;
				if (value == '') { 
					var errorbox = document.getElementById("formerror");
					errorbox.style.display = "block";
					var inputtitle = inputs[p].title;
					errortext += "- " + inputtitle + "\n";
					inputs[p].className = "errorfield";
				}
			}
			/*Validate to be the same as*/
			var sameasfield = inputs[p].getAttribute('dl:sameas');
			if (sameasfield != null) { 
				var value1 = inputs[p].value;
				var value2id = document.getElementById(sameasfield);
				var value2 = value2id.value;

				if (value1 != value2) {
					var inputtitle = inputs[p].title;
					errortext2 += "- " + inputtitle + "\n";
					inputs[p].className = "errorfield";
				}
			
				
			}
		}
		
	var selects = document.getElementsByTagName("select");
		for (var i=0; i < selects.length; i++) { 
			if (selects[i].getAttribute('dl:validate') == 'presence') { 
				var value = selects[i].value;
				if (value == '') { 
					var inputtitle = selects[i].title;
					errortext += "- " + inputtitle + "\n";
					selects[i].className = "errorfield";
				}
			}
		}
		
	var tas = document.getElementsByTagName("textarea");
		for (var j=0; j < tas.length; j++) { 
			if (tas[j].getAttribute('dl:validate') == 'presence') { 
				var value = tas[j].value;
				if (value == '') { 
					var inputtitle = tas[j].title;
					errortext += "- " + inputtitle + "\n";
					tas[j].className = "errorfield";
				}
			}
		}

		
	if (errortext != '') { 
		form.focus();
		return false;
	}
	/* Produce an error message for items which do not match */
	
	if (errortext2 != '') { 
		newerrortext = "The following fields need to be the same:\n\n" + errortext2;
		alert(newerrortext);
		form.focus();
		return false;	}
	else { 
		return true;
	}
}
