var div;
function controlla(form) {
	for (i = 0; i < document.getElementById(form).length; i++) {
		if (document.getElementById(form).elements[i].getAttribute('required'))
			document.getElementById(form).elements[i].style.background = "white";
	}
	for (i = 0; i < document.getElementById(form).length; i++) {
		var required = document.getElementById(form).elements[i]
				.getAttribute('required');
		var pattern = new RegExp(document.getElementById(form).elements[i]
				.getAttribute('regexpPattern'));
		var value = document.getElementById(form).elements[i].value;
		var name = document.getElementById(form).elements[i]
				.getAttribute('title');
		var mask = document.getElementById(form).elements[i]
				.getAttribute('mask');
		var pass = document.getElementById(form).elements[i]
				.getAttribute('idRipetiPass');
		if (required)
			document.getElementById(form).elements[i].style.background = "white";
		if (!checkPatternChars(name, value, pattern, required)) {
			document.getElementById(div).innerHTML = "Il campo \"" + name
					+ "\" non e\' valido! (" + mask + ")";
			document.getElementById(form).elements[i].style.background = "red";
			document.getElementById(form).elements[i].focus();
			return false;
		}
		if (document.getElementById(form).elements[i].getAttribute('title') == 'personali')
			if (!document.getElementById(form).elements[i].checked)
				document.getElementById(div).innerHTML = "Accettare trattamento dei dati personali";
		if (document.getElementById(form).elements[i].getAttribute("type") == "password"
				&& pass != null) {
			if (document.getElementById(form).elements[i].value != document
					.getElementById(pass).value) {
				document.getElementById(div).innerHTML = "<span style='color:red;'>Le password non combaciano</span>";
				document.getElementById(form).elements[i].style.background = "red";
				document.getElementById(pass).style.background = "red";
				document.getElementById(pass).focus();
				return false;
			}
		}
	}
	return true;
}

function waitIns(d, form) {
	div = d;
	document.getElementById(div).innerHTML = "<img src='/js/loader.gif'>";
	if (controlla(form)) {
		document.getElementById(form).submit();
	}
}

function checkPatternChars(nm, vlu, pattern, required) {
	if (required === undefined) {
		required = false;
	}
	if (!required && vlu == "") {
		return true;
	}
	if (required) {
		if (!pattern.test(vlu)) {
			// alert("Il campo "+nm+" non e\' valido!");
			return false;
		} else {
			return true;
		}
	} else
		return true;
}

