	function id(id)
	{
		return document.getElementById(id);
	}
	
	function chkEmail(email)
	{
		function chkLabel(label)
		{
			if (label.length>63) return false;
			var test=/^([a-z0-9]{1,2}|[a-z0-9][a-z0-9\-]+[a-z0-9])$/i.test(label);
			return test ? true : false;
		}

		function chkLocalPart(local)
		{
			if (local.length>64) return false;
			var test=/^[a-zA-Z0-9\!\#\$\%\&\'\*\+\-\/\=\?\^\_\`\{\|\}\~]+(\.[a-zA-Z0-9\!\#\$\%\&\'\*\+\-\/\=\?\^\_\`\{\|\}\~]+)*$/.test(local);
			return test ? true : false;
		}
		
		var success=false;

		do 
		{
			test=/^\s*\S*\s*$/.test(email);
			if (!test) break;
			email=email.replace(/\s/g,"");
			test=/^[^@]+@[^@]+$/.test(email);
			if (!test) break;
			var split=email.split(/@/);
			var local_part=split[0];
			var domain=split[1];

			test=domain.length<=255;
			if (!test) break;
			test=/^[^\.]+(\.[^\.]+)*$/.test(domain);
			if (!test) break;
			var labels=domain.split(/\./);
			for (var i=0;i<labels.length;i++)
			{
				test=chkLabel(labels[i]);
				if (!test) break;
			}
			if (i<labels.length) break;
			test=chkLocalPart(local_part);
			if (!test) break;
			success=true;

		} while(false);
		
		return success;
	}

	function chkFields(form)
	{
		var test;
		var field;
		
		field=form.name.value;
		test=/^\s*$/.test(field);
		if (test)
		{
			alert("compilare il campo nome");
			return false;
		}

		var email=form.email.value;
		if (!chkEmail(email))
		{
			alert("inserire un indirizzo email valido");
			return false;
		}
		
		if (!form.consent.checked)
		{
			alert("per procedere con l'iscrizione è necessario dare la propria autorizzazione alla raccolta e custodia dei dati");
			return false;
		}
		return true;
	}
	
	function chkContatti(form)
	{
		var test;
		var field;
		
		field=form.name.value;
		test=/^\s*$/.test(field);
		if (test)
		{
			alert("compilare il campo nome");
			return false;
		}

		var email=form.email.value;
		if (!chkEmail(email))
		{
			alert("inserire un indirizzo email valido");
			return false;
		}
		form.email.value=form.email.value.replace(/\s/g,"");
		
		field=form.msg.value;
		test=/^\s*$/.test(field);
		if (test)
		{
			alert("compilare il campo messaggio");
			return false;
		}
		return true;
	}
	
	
