Array.prototype.inArray = function (value) {
	var ind
	for( ind  in this) {
		if (this[ind] == value ) {
			return true;
		}
	}
	return false;
}

function comprobar_alta(formul , campos) {

	var campos_tmp = campos.substring(0,campos.length-1)
	var obligatorios = campos_tmp.split(',')

	if (!validar_obligatorios(formul.name, obligatorios)) {
		alert(ERR_OBLIGATORIOS)
		return false
	}

	var cp = obtenerValor(formul.name, "cp")
	if (cp.length > 0) {
		if (!validaCP(obtenerValor(formul.name, "cp"))) {
			alert(ERR_CP)
			foco(formul.name, "cp")
			return false
		}
	}


	if(obligatorios.inArray('tipo_documento')){
		var documento = obtenerValor(formul.name, "tipo_documento");
		if(documento == 0){
			alert(ERR_OBLIGATORIOS)
			return false
		}

		if(documento == '1'){
			var nif = obtenerValor(formul.name, "nif")
			if (nif.length > 0) {
				//if (nif.length < 9) {
				//	var nif_valido='0';
				//	for(n=(nif.length);n<8;n++){
				//		nif_valido =+ '0' + nif_valido;
				//	}
				//	nif = nif_valido+nif
				//}
				if (!validar_nif_nie(nif)) {
					foco(formul.name, "nif")
					return false
				}
			}
		}
	}

	var tfno = obtenerValor(formul.name, "telefono")
	if (tfno.length > 0) {
		if (tfno.length > 9) {
			alert(ERR_TFNO)
			return false
		}
		if (!validaTfno(tfno)) {
			alert(ERR_TFNO)
			foco(formul.name, "telefono")
			return false
		}
	}

	if(obligatorios.inArray("nseg")){
		var nseg = obtenerValor(formul.name, "nseg")
		if (nseg.length > 0) {
			if ((!validaNSegNoEspacios(nseg)) && (!validaNSeg(nseg))){
				alert(ERR_NSEG)
				foco(formul.name, "nseg")
				return false
			}
		}
	}

	var tfno = obtenerValor(formul.name, "movil")
	if (tfno.length > 0) {
		if (!validaTfno(tfno)) {
			alert(ERR_TFNO)
			foco(formul.name, "movil")
			return false
		}
	}

	if (!validamail(obtenerValor(formul.name, "email"))) {
		alert(ERR_EMAIL)
		foco(formul.name, "email")
		return false
	}

	var fax = obtenerValor(formul.name, "fax")
	if (fax.length > 0) {
		if (fax.length > 9) {
			alert(ERR_FAX)
			return false
		}
		if (!validaTfno(fax)) {
			alert(ERR_FAX)
			foco(formul.name, "fax")
			return false
		}
	}
	if(obligatorios.inArray("login")){
		var login = obtenerValor(formul.name, "login")
		if (login.length < 4) {
			alert(ERR_LOGIN_LONG)
			foco(formul.name, "login")
			return false
		}
	}
	if(formul.name == 'alta_registro'){
		var clave = obtenerValor(formul.name, "clave")
		if (clave.length < 5) {
			alert(ERR_CLAVE_LONG)
			foco(formul.name, "clave")
			return false
		}

		var clave2 = obtenerValor(formul.name, "clave2")
		if (clave != clave2) {
			alert(ERR_CLAVES)
			foco(formul.name, "clave2")
			return false
		}
	} else {
		var clave = obtenerValor(formul.name, "clave")
		var clave2 = obtenerValor(formul.name, "clave2")
		if (clave != clave2) {
			alert(ERR_CLAVES)
			foco(formul.name, "clave2")
			return false
		}
	}

	var sexo = obtenerValor(formul.name, "sexo")
	if (sexo != 0 && sexo != 1) {
		alert(ERR_SEXO)
		foco(formul.name, "sexo")
		return false

	}

	var tfno = obtenerValor(formul.name, "telefonoemp")
	if (tfno.length > 0) {
		if (!validaTfno(tfno)) {
			alert(ERR_TFNO)
			foco(formul.name, "telefonoemp")
			return false
		}
	}


	var fecha_nacimiento = obtenerValor(formul.name, "fecha_nacimiento")

	if (fecha_nacimiento && !valFecha(fecha_nacimiento)){
		alert (ERR_FECHA)
		return false
	}

	var nseg = obtenerValor(formul.name, "nsegemp")
	if (nseg.length > 0) {
		if ((!validaNSegEmp(nseg)) && (!validaNSegEmpNoEspacios(nseg))) {
			alert(ERR_NSEGEMP)
			foco(formul.name, "nsegemp")
			return false
		}
	}

	function esDigito2(sChr){
		var sCod = sChr.charCodeAt(0);
		return ((sCod > 47) && (sCod < 58));
	}

	function valSep(oTxt){
		var bOk = false;
		bOk = bOk || ((oTxt.charAt(2) == "-") && (oTxt.charAt(5) == "-"));
		return bOk;
	}

	function finMes(oTxt){
		var nMes = parseInt(oTxt.substr(3, 2), 10);
		var nRes = 0;
		switch (nMes){
		case 1: nRes = 31; break;
		case 2: nRes = 29; break;
		case 3: nRes = 31; break;
		case 4: nRes = 30; break;
		case 5: nRes = 31; break;
		case 6: nRes = 30; break;
		case 7: nRes = 31; break;
		case 8: nRes = 31; break;
		case 9: nRes = 30; break;
		case 10: nRes = 31; break;
		case 11: nRes = 30; break;
		case 12: nRes = 31; break;
		}
		return nRes;
	}

	function valDia(oTxt){
		var bOk = false;
		var nDia = parseInt(oTxt.substr(0, 2), 10);
		bOk = bOk || ((nDia >= 1) && (nDia <= finMes(oTxt)));
		return bOk;
	}

	function valMes(oTxt){
		var bOk = false;
		var nMes = parseInt(oTxt.substr(3, 2), 10);
		bOk = bOk || ((nMes >= 1) && (nMes <= 12));
		return bOk;
	}

	function valAno(oTxt){
		var bOk = true;
		var nAno = oTxt.substr(6);
		bOk = bOk && (nAno.length == 4);
		if (bOk){
		for (var i = 0; i < nAno.length; i++){
		bOk = bOk && esDigito2(nAno.charAt(i));
		}
		}
		return bOk;
	}

	function valFecha(oTxt){
		var bOk = true;
		if (oTxt.value != "" && oTxt.length == 10){

			bOk = bOk && (valAno(oTxt));
			bOk = bOk && (valMes(oTxt));
			bOk = bOk && (valDia(oTxt));
			bOk = bOk && (valSep(oTxt));


		} else {
			return false;
		}

		if (!bOk){

			return false;
		}

		return bOk;

	}
	Array.prototype.inArray = function (value) {
		var i;
		for (i=0; i < this.length; i++) {
			if (this[i] === value) {
				return true;
			}
		}
		return false;
	}

	if(document.forms[formul.name].aceptarcondiciones.checked){
    return true;
  	}else{
      alert(LBL_ALERTA_NO_ACEPTADO);
      return false;
  	}

	return true
}


