ciao a tutti!

uso questo codice per controllare il corretto inserimento di una p.iva italiana.

codice:
function ControllaPIVA(pi)
{
	if( pi == '' )  return '';
	if( pi.length != 11 )
		return "La lunghezza della partita IVA non è\n" +
			"corretta: la partita IVA dovrebbe essere lunga\n" +
			"esattamente 11 caratteri.\n";
	validi = "0123456789";
	for( i = 0; i < 11; i++ ){
		if( validi.indexOf( pi.charAt(i) ) == -1 )
			return "La partita IVA contiene un carattere non valido `" +
				pi.charAt(i) + "'.\nI caratteri validi sono le cifre.\n";
	}
	s = 0;
	for( i = 0; i <= 9; i += 2 )
		s += pi.charCodeAt(i) - '0'.charCodeAt(0);
	for( i = 1; i <= 9; i += 2 ){
		c = 2*( pi.charCodeAt(i) - '0'.charCodeAt(0) );
		if( c > 9 )  c = c - 9;
		s += c;
	}
	if( ( 10 - s%10 )%10 != pi.charCodeAt(10) - '0'.charCodeAt(0) )
		return "La partita IVA non è valida:\n" +
			"il codice di controllo non corrisponde.\n";
	return '';
}
funziona bene, solo che ora vorrei apportare una modifica ma non sono in grado.

visto che all'estero cè il VAT che ha i primi 2 caratteri sotto forma di lettere, vorrei modificare lo script che accettasse anche i VAT...

in sostanza mi basta che se ci sono 2 lettere ai primi posti e altri 9 numeri il controllo dia esito positivo...
e se invece ci sono solo numeri mi faccia il controllo che cè già!

qualcuno mi può aiutare?

grazie!