function validarVAT(vat) {
	var vat_valido = false;
	
	vat = vat.replace(/ /,"").toUpperCase();
	
	if ($F("vat-pais") != "ES") {
		if (vat.length >= 7) {
			if (validarFormato(vat)) {
				var url = "/clientes/validarVAT.php";
				var myAjax = new Ajax.Request(url,{
					method: 'get',
		    		parameters: {'vat' : vat },
		    		onLoading: muestraEsperaVAT(),
					onComplete: function (t) {
						if (t.responseText == "1") $("vatImg").innerHTML="<img alt=\"VAT intracomunitario correcto\" title=\"VAT intracomunitario correcto\" src=\"/images/paso/ok.gif\"/>";
						else $("vatImg").innerHTML="<img alt=\"El VAT intracomunitario no es correcto\" title=\"El VAT intracomunitario no es correcto\" src=\"/images/paso/nok.gif\"/>";
					}
				});
			}
			else $("vatImg").innerHTML="<img alt=\"El VAT intracomunitario no es correcto\" title=\"El VAT intracomunitario no es correcto\" src=\"/images/paso/nok.gif\"/>";		
		}
	}
	else {
		$("vatImg").innerHTML="<img alt=\"\" title=\"No es posible acogerse a esta exención por ser CIF español\" src=\"/images/paso/nok.gif\"/>";
	}
}

function validarFormato(vat){
	var valido = true;
	var pais = vat.substr(0,2);
	var re_pais;
	var re;
	
	switch (pais) {
		case "DE": re_pais = "DE[0-9]{9}"; break;
		case "AT": re_pais = "ATU[0-9]{8}"; break;
		case "BE": re_pais = "BE[0-1][0-9]{9}"; break;
		case "BG": re_pais = "BG[0-9]{9,10}"; break;
		case "CZ": re_pais = "CZ[0-9]{8,10}"; break;
		case "CY": re_pais = "CY[0-9]{8}[A-Z]"; break;
		case "DK": re_pais = "DK[0-9]{8}"; break;
		case "SK": re_pais = "SK[0-9]{10}"; break;
		case "SI": re_pais = "SI[0-9]{8}"; break;
		case "ES": re_pais = "ES[A-Z0-9][0-9]{7}[A-Z0-9]"; break;
		case "EE": re_pais = "EE[0-9]{9}"; break;
		case "FI": re_pais = "FI[0-9]{8}"; break;
		case "FR": re_pais = "FR[A-Z]{2}[0-9]{9}"; break;
		case "EL": re_pais = "EL[0-9]{9}"; break;
		case "HU": re_pais = "HU[0-9]{8}"; break;
		case "IE": re_pais = "IE[0-9][A-Z0-9\+\*][0-9]{5}[A-Z0-9\+\*]"; break;
		case "IT": re_pais = "IT[0-9]{11}"; break;
		case "LV": re_pais = "LV[0-9]{11}"; break;
		case "LT": re_pais = "LT[0-9]{9,12}"; break;
		case "LU": re_pais = "LU[0-9]{8}"; break;
		case "MT": re_pais = "MT[0-9]{8}"; break;
		case "NL": re_pais = "NL[A-Z0-9]{9}B[A-Z0-9]{2}"; break;
		case "PL": re_pais = "PL[0-9]{10}"; break;
		case "PT": re_pais = "PT[0-9]{9}"; break;
		case "GB": re_pais = "GB([0-9]{9,12})|([A-Z]{2}[0-9]{3})"; break;
		case "RO": re_pais = "RO[0-9]{2,10}"; break;
		case "SE": re_pais = "SE[0-9]{10}01"; break;
		default: re_pais = ".*";
	}
	
	re = new RegExp(re_pais);
	
	if (vat.match(re)) valido = true;
	else valido = false;
	
	return valido;
}

function validarNumero(vat) {
	var url = "/clientes/validarVAT.php";
	var myAjax = new Ajax.Request(url,{
		method: 'get',
    	parameters: {'vat' : vat },
		onComplete: function (t) {
			if (t.responseText == "1") $F("vat_valido") = 1;
			else $F("vat_valido") = 0;
		}
	});
	return $F("vat_valido");
}

function muestraEsperaVAT() {
	$("vatImg").innerHTML="<img src=\"/images/varios/loading.gif\"/>";
}
