function keyPressed(e)
{
	// recupero informazioni sull'evento
	if (!e) 
	{
		var e = window.event;
	}
	
	// inizializzo il codice del tasto premuto a valore nullo
	var code = 0;
	
	// recupero il codice del tasto appena premuto
	if (e.keyCode) 
	{
		code = e.keyCode;
	} 
	else 
	{
		if ( e.which ) 
		{
			code = e.which;
		}
	}
	
	// recupero l'equivalente caratttere dal codice.
	var carattere = String.fromCharCode(code);

/*	
	alert(
	"Evento: " + e.type + "\n" +
	"Codice: " + code + "\n" +
	"Carattere: " + carattere
	);
*/
	
	return (code);
}

function input_ok(n, t) {

	// delete
	if (n == 8)
	{
		return (true);
	}

	var b = false;
	
	switch (t) {

		case 1:	// lettere
			
			b = input_lettere(n);	
			break;
		
		case 2: // numeri interi

			b = input_numeri(n);	
			break;
					
		case 3: // numeri con decimali

			switch (n) {
				case 44:
				case 46:
					b = true;
					break;
				default:
					break;
			}
			
			b = (b || input_numeri(n));
			break;
		
		case 4:	// codici : numeri e lettere

			switch (n) {
				case 45:
					b = true;
					break;
				default:
					break;
			}

			b = (b || input_lettere(n) || input_numeri(n));
			break;
					
		case 5:	// telefono, fax
		
			switch (n) {
				case 40:
				case 45:
				case 46:
				case 47:
					b = true;
					break;
				default:
					break;
			}
			
			b = (b || input_numeri(n));
			break;
			
		case 6:	// email http

			b = (n != 32);
			break;
					
		case 7:	// sesso

			b = ((n == 70) || (n == 77));
			break;
					
		default:
		
			b = ((n != 34) && (n != 60) && (n != 62));
			break;
	}

	return (b);
}

function input_numeri(n) {
	
	var b = false;

	if ((n > 47) && (n < 59)) {
		b = true;
	}
	
	return (b);
}

function input_lettere(n) {
	
	var b = false;

	if (((n > 64) && (n < 91))
			|| ((n > 96) && (n < 122))) {
		b = true;
	}
	
	return (b);
}