/********************************************/
/*  FUNCIONES GENERALES                     */
/********************************************/

/* TRIM IZQUERDO DE CADEMAS */
function leftTrim(sString) {
	while (sString.substring(0,1) == ' ') {
		sString = sString.substring(1, sString.length);
	}
	return sString;
}

/* VERIFICA SI UNA CADENA ES UN NUMERO */
function esNumero(valor) {
  var log = valor.length;
  var sw = "S";
  for (x=0; x<log; x++) {
    v1 = valor.substr(x,1);
    v2 = parseInt(v1);
    //Compruebo si es un valor numérico
    if (isNaN(v2)) { sw= "N";}
  }
  if (sw=="S") {return true;} else {return false;}
}

/* VERIFICA EL FORMATO DE UN E-MAIL */
function verificarEmail(email) {
	if (email.indexOf('@',0) == -1 || email.indexOf(';',0) != -1 || email.indexOf(' ',0) != -1 || email.indexOf('/',0) != -1 || email.indexOf(';',0) != -1 || email.indexOf('<',0) != -1 || email.indexOf('>',0) != -1 || email.indexOf('*',0) != -1 || email.indexOf('|',0) != -1 || email.indexOf('`',0) != -1 || email.indexOf('&',0) != -1 || email.indexOf('$',0) != -1 || email.indexOf('!',0) != -1 || email.indexOf('"',0) != -1	|| email.indexOf(':',0) != -1) {
		return false;
	} else { return true; }
}

/* VERIFICA UNA FECHA CORRECTA */
function verificarFecha(dia,mes,anio) {
  var fecha = dia;
  if (fecha.length < 2) {
    fecha = "0" + fecha;
  }
  fecha = fecha + "/" + mes + "/" + anio;
  var fechaAux = fecha;
  for (i=0; i<10; i++) {
    if (((fecha.substr(i,1) < "0") || (fecha.substr(i,1) > "9")) && (i != 2) && (i != 5)) {
      fechaAux = "-";
      break;
    }
  }
  if (fechaAux != "-") {
    var d = fecha.substr(0,2);
    var m = fecha.substr(3,2);
    var a = fecha.substr(6,4);
    if ((a < 1900) || (a > 2100) || (m < 1) || (m > 12) || (d < 1) || (d > 31)) {
      fechaAux = "-";
    } else {
      if ((a%4 != 0) && (m == 2) && (d > 28)) {
        fechaAux = "-";
      } else if ((((m == 4) || (m == 6) || (m == 9) || (m==11)) && (d>30)) || ((m==2) && (d>29))) {
        fechaAux = "-";
      }
    }
  }
  if (fechaAux == "-") {return false;} else {return true;}
}

/* GENERA STRING DE GRUPOS */
function registroProcesarGrupos() {
	var ListGrpId='';
	var ListGrpSel='';
	var nombre;
	if (document.REGISTROUSR.CantGrupos) {
		for (cont=1;cont<=document.REGISTROUSR.CantGrupos.value;cont++) {
			nombre='grupo'+cont;
			var obj=document.getElementsByName(nombre);
			if (cont == 1) {
			} else {
				ListGrpId += '_';
				ListGrpSel += '_';
			}
			ListGrpId += obj[0].getAttribute('id');
			if (obj[0].checked==true) {
				ListGrpSel += obj[0].value;
			} else {
				ListGrpSel += obj[1].value;
			}
		}
		document.REGISTROUSR.ListGrpId.value = ListGrpId;
		document.REGISTROUSR.ListGrpSel.value = ListGrpSel;
	}
}

/* GENERA STRING DE TIPOS DE NEWSLETTERS */
function registroProcesarNLTipos() {
	var ListNLTipoId='';
	var ListNLTipoSel='';
	var objs = document.getElementsByName('nltipo');
	for (var i=0; i<objs.length; i++) {
		if (i == 0) {
		} else {
			ListNLTipoId += '_';
			ListNLTipoSel += '_';
		}
		ListNLTipoId += objs[i].getAttribute('id');
		if (objs[i].checked==true) {
			ListNLTipoSel += 'S';
		} else {
			ListNLTipoSel += 'N';
		}
	}
	document.REGISTROUSR.ListNLTipoId.value = ListNLTipoId;
	document.REGISTROUSR.ListNLTipoSel.value = ListNLTipoSel;
}

/* GENERA STRING DE CATEGORIAS DE NEWSLETTERS */
function registroProcesarNLCats() {
	var ListCatId='';
	var ListCatSel='';
	var objs = document.getElementsByName('nlcat');
	for (var i=0; i<objs.length; i++) {
		if (i == 0) {
		} else {
			ListCatId += '_';
			ListCatSel += '_';
		}
		ListCatId += objs[i].getAttribute('id');
		if (objs[i].checked==true) {
			ListCatSel += 'S';
		} else {
			ListCatSel += 'N';
		}
	}
	document.REGISTROUSR.ListCatId.value = ListCatId;
	document.REGISTROUSR.ListCatSel.value = ListCatSel;
}

/********************************************/
/*  FUNCIONES DE VALIDACION DE FORMULARIOS  */
/********************************************/

/* VALIDACION DEL FORMULARIO DE ENVIAR MENSAJE A FORO */
function chequeoDatosFEnviarMensaje() {
  var s;
  if (document.FENVIARMENSAJE.FMsgTexto.value == "" ) {
    alert("Debe ingresar el texto del mensaje!!");
    return(1);
  } else {
    s = leftTrim(document.FENVIARMENSAJE.FMsgTexto.value);
    if (s.length == 0) {
      alert("Debe ingresar el texto del mensaje!!");
      return(1);
    }
  }
}

/* VALIDACION DEL FORMULARIO DE LOGIN */
function chequeoDatosLogin() {
  var s;
  if (document.LOGINUSR.Usuario.value == "" ) {
    alert("Debe ingresar el usuario!!");
    return(1);
  } else {
    s = leftTrim(document.LOGINUSR.Usuario.value);
    if (s.length == 0) {
      alert("Debe ingresar el usuario!!");
      return(1);
    } else {
      if (document.LOGINUSR.UsrRegPwd.value == "" ) {
        alert("Debe ingresar la contraseña!!");
        return(1);
      } else {
        s = leftTrim(document.LOGINUSR.UsrRegPwd.value);
        if (s.length == 0) {
          alert("Debe ingresar la contraseña!!");
          return(1);
        }
      }
    }
  }
}

/* VALIDACION DEL FORMULARIO DE INGRESAR NICK */
function chequeoDatosIngresarNick() {
  var s;
  if (document.INGRESARNICK.UsrRegNick.value == "" ) {
    alert("Debe ingresar el Nick!!");
    return(1);
  } else {
    s = leftTrim(document.INGRESARNICK.UsrRegNick.value);
    if (s.length == 0) {
      alert("Debe ingresar el Nick!!");
      return(1);
    }
  }
}

/* VALIDACION DEL FORMULARIO DE RECOMENDAR NOTA */
function chequeoDatosRecomendar() {
  var s;
  if (document.RECOMENDAR.DesMail.value == "" ) {
    alert("Debe ingresar el mail del destinatario.");
    return(1);
  } else {
    s = leftTrim(document.RECOMENDAR.DesMail.value);
    if (s.length == 0) {
      alert("Debe ingresar el mail del destinatario.");
      return(1);
    } else {
      if (verificarEmail(document.RECOMENDAR.DesMail.value) == false) {
        alert("El mail que ingresó para el destinatario no es válido.");
        return(1);
      } else {
        if (document.RECOMENDAR.RemNom.value == "" ) {
          alert("Debe ingresar el nombre del remitente.");
          return(1);
        } else {
          s = leftTrim(document.RECOMENDAR.RemNom.value);
          if (s.length == 0) {
            alert("Debe ingresar el nombre del remitente.");
            return(1);
          } else {
            if (document.RECOMENDAR.RemMail.value == "" ) {
              alert("Debe ingresar el mail del remitente.");
              return(1);
            } else {
              s = leftTrim(document.RECOMENDAR.RemMail.value);
              if (s.length == 0) {
                alert("Debe ingresar el mail del remitente.");
                return(1);
              } else {
                if (verificarEmail(document.RECOMENDAR.RemMail.value) == false) {
                  alert("El mail que ingresó para el remitente no es válido.");
                  return(1);
                }
              }
            }
          }
        }
      }
    }
  }
}

/* VALIDACION DEL FORMULARIO DE RECORDAR CONTRASEÑA */
function chequeoDatosRecDatos() {
  var s;
  if (document.RECDATOS.Mail.value == "" ) {
    alert("Debe ingresar el mail.");
    return(1);
  } else {
    s = leftTrim(document.RECDATOS.Mail.value);
    if (s.length == 0) {
      alert("Debe ingresar el mail.");
      return(1);
    } else {
      if (verificarEmail(document.RECDATOS.Mail.value) == false) {
        alert("El mail que ingresó no es válido.");
        return(1);
      }
    }
  }
}


/********************************************/
/*  VARIABLES GLOBALES                      */
/********************************************/

var attPais, attDepartamento, attLocalidad, attSexo;
var cbxPaises, cbxDepartamentos, cbxLocalidades, cbxSexos;
var listaErrores;
var attFecNac, attContCal;

/********************************************/
/*  FUNCIONES GENERALES DE VALIDACION       */
/********************************************/

//VERIFICA FORMATO NUMERICO DE UNA CADENA
function validarNumero(cadena) {
	var posTotal=cadena.length;
	var esNumero=true;
	for (var pos=0; pos<posTotal; pos++) {
		//BUSCAR CADA CARACTER
		substr=cadena.substr(pos,1);
		substrint=parseInt(substr,10);
		//COMPROBAR SI ES NUMERICO
		if (isNaN(substrint)) {
			//EL CARACTER NO ES NUMERO
			esNumero=false;
		}
	}
	return esNumero;
}

//VERIFICA FORMATO E-MAIL DE UNA CADENA
function validarEmail(cadena) {
	var emailExp = /^[\w\-\.\+]+\@[a-zA-Z0-9\.\-]+\.[a-zA-z0-9]{2,4}$/;
	if (!cadena.match(emailExp)) {
		return false;
	} else {
		return true;
	}
}

//VERIFICA FORMATO E-MAIL DE UNA CADENA
function validarFecha(cadena) {
	return true;
}

//VERIFICA FORMATO E-MAIL DE UNA CADENA
function validarFechaHora(cadena) {
	return true;
}

//VERIFICA CONTRASEÑA Y CONFIRMACION
function verificarContrasenia(attValor,attNombre,attLength,attValorDup,attNombreDup) {
	/*if (attValor.length < attLength) {
		//APROVECHE EL TAMAÑO MAXIMO
		listaErrores += 'Para mayor seguridad, se recomienda utilizar el tama&ntilde;o m&aacute;ximo (' + attLength + ') para el campo &quot;' + attNombre + '&quot;.<br>';
		returnVal = false;
	} else*/ if (attValor!=attValorDup) {
		//CONTRASEÑA Y CONFIRMACION NO COINCIDEN
		listaErrores += 'Los campos &quot;' + attNombre + '&quot; y &quot;' + attNombreDup + '&quot; no coinciden.<br>';
		returnVal = false;
	} else {
		return true;
	}
}

//VERIFICA EL TIPO DE LOS ATRIBUTOS
function verificarCampoTipo(attTipo,attValor,attNombre) {
	var tipoCorrecto;

	if (attTipo=='NUMERIC') {
		tipoCorrecto = validarNumero(attValor);
	} else if (attTipo=='EMAIL') {
		tipoCorrecto = validarEmail(attValor);
	} else if (attTipo=='DATE') {
		tipoCorrecto = validarFecha(attValor);
	} else if (attTipo=='DATETIME') {
		tipoCorrecto = validarFechaHora(attValor);
	} else {
		//TIPOS SIN VALIDACION: CHAR
	}

	if (tipoCorrecto===false) {
		listaErrores+='El campo &quot;' + attNombre + '&quot; no es v&aacute;lido.<br>';
		return true;
	} else {
		return false;
	}
}

//VERIFICA SI LOS ATRIBUTOS SON OBLIGATORIOS
function verificarCampoObligato(attOblig,attTipo,attValor,attNombre) {
	var returnVal=false;
	if (attTipo=='COMBO') {
		if ( (attOblig===1) && ( (attValor==='0') || (attValor.length===0) ) ) {
			//CAMPO OBLIGATORIO NO SELECCIONADO
			listaErrores += 'Debe elegir una opci&oacute;n para el campo &quot;' + attNombre + '&quot;.<br>';
			returnVal = true;
		}
	} else {
		if ( (attOblig==1) && (attValor.length===0) ) {
			//CAMPO OBLIGATORIO NO INGRESADO
			listaErrores += 'El campo &quot;' + attNombre + '&quot; no puede estar vac&iacute;o.<br>';
			returnVal = true;
		}
	}
	return returnVal;
}

/********************************************/
/*  VALIDACION DEL FORMULARIO DE REGISTRO   */
/********************************************/
function validarFormularioRegistro() {
	//DESHABILITAR BOTON SUBMIT
    document.REGISTROUSR.Submit.enabled = false;

	//INICIALIZAR ERRORES
	var ctrlErr=document.getElementById("ListaDeErrores");
	ctrlErr.style.display='none';
	ctrlErr.innerHTML='';
	listaErrores='';
	var hayErrores=false;

	//COPIAR FECHA DE NACIMIENTO DESDE CALENDARIO A VARIABLE
	var f = MVD.Form.getFecha(attContCal);
	var v = f.getDMY();  // v es un array con, v[0] = día, v[1] = mes, v[2] = año. v = null si la fecha es incorrecta
	var dd, mm, aaaa;
	if (v !== null) {
		dd = v[0];
		if (dd < 10) {
			dd = '0' + dd;
		}
		mm = v[1];
		if (mm < 10) {
			mm = '0' + mm;
		}
		aaaa = v[2];
		attFecNac.value = dd + '/' + mm + '/' + aaaa;
	} else {
		listaErrores+='El campo &quot;Fecha de nacimiento&quot; no es v&aacute;lido.<br>';
		hayErrores=false;
	}

	//OBTENER TOTAL DE ATRIBUTOS EN FORMULARIO
	var attTotal=parseInt(document.REGISTROUSR.AttrCount.value,10);

	//VERIFICAR ATRIBUTOS
	var pos,inputName,attInput,attValor,attTipo,attOblig,attNombre;
	for (pos=1; pos<=attTotal; pos++) {
		//OBTENER ATRIBUTOS Y PROPIEDADES
		inputName='Attr' + pos + 'Value';
		attInput =document.REGISTROUSR[inputName];
		attValor =attInput.value;
		attTipo  =attInput.getAttribute('atttipo');
		attOblig =parseInt(attInput.getAttribute('attoblig'),10);
		attNombre=attInput.getAttribute('attnombre');

		//VERIFICAR ATRIBUTO OBLIGATORIO
		hayErrores=verificarCampoObligato(attOblig,attTipo,attValor,attNombre);
		if (hayErrores===false) {
			if (attTipo=='PASSWORD') {
				//VERIFICAR ATRIBUTO CONTRASEÑA
				var inputNameDup,attInputDup,attValorDup,attNombreDup,attLength;

				attLength=attInput.getAttribute('maxlength');
				inputNameDup=inputName + '_Dup';
				attInputDup =document.REGISTROUSR[inputNameDup];
				attValorDup =attInputDup.value;
				attNombreDup=attInputDup.getAttribute('attnombre');

				hayErrores=verificarContrasenia(attValor,attNombre,attLength,attValorDup,attNombreDup);
			} else {
				//VERIFICAR TIPO DEL ATRIBUTO
				hayErrores=verificarCampoTipo(attTipo,attValor,attNombre);
			}
		}
	}

	//MOSTRAR ERRORES
	if (listaErrores.length===0) {
		//PROCESAMOS GRUPOS Y NEWSLETTERS
		registroProcesarGrupos();
		registroProcesarNLTipos();
		registroProcesarNLCats();
		return true;
	} else {
		//DESHABILITAR BOTON SUBMIT
        document.REGISTROUSR.Submit.enabled = true;
		//MOSTRAR MENSAJES DE ERROR
		ctrlErr.innerHTML=listaErrores;
		ctrlErr.style.display='block';
		return false;
	}
}

/********************************************/
/*  COMBOS EN FORMULARIO DE REGISTRO        */
/********************************************/

function cargarComboVacio(control) {
	//VACIAR COMBO
	control.options.length=0;

	//AGREGAR VALOR POR DEFECTO
	control.options[0]=new Option('< No disponible >','0');
}

function buscarValorCombo(control) {
	//BUSCAR VALOR ACTUAL DEL COMBO
	var valorActual=control.options[control.selectedIndex].value;
	return valorActual;
}

function actualizarSexoSeleccionado() {
	//BUSCAR VALOR ACTUAL
	var sexoActual=buscarValorCombo(cbxSexos);

	//SI EL VALOR CAMBIO
	if (attSexo.value!=sexoActual) {
		attSexo.value=sexoActual;
	}
}

function actualizarComboSexos() {
	//RECORRER ARRAY Y DETERMINAR VALOR ACTUAL
	var selectedindex=0;
	for (i=0; i<cbxSexos.options.length; i++) {
		if (attSexo.value==cbxSexos.options[i].value) {
			//OPCION SELECCIONADA
			selectedindex=i;
		}
	}

	//SELECCIONAR INDICE DE LA LOCALIDAD DEL USUARIO
	cbxSexos.selectedIndex=selectedindex;
}

function actualizarLocalidadSeleccionada() {
	//BUSCAR VALOR ACTUAL
	var localidadActual=buscarValorCombo(cbxLocalidades);

	//SI EL VALOR CAMBIO
	if (attLocalidad.value!=localidadActual) {
		attLocalidad.value=localidadActual;
	}
}

function actualizarComboLocalidades(listaLocalidades) {
	//TRANSFORMAR RESPUESTA DE GX EN ARRAY DE OBJETOS
	eval("var arrayLocalidades=" + listaLocalidades);

	//VACIAR OPCIONES DEL COMBO
	cbxLocalidades.options.length=0;

	//RECORRER ARRAY Y AGREGAR OPCIONES AL COMBO
	var selectedindex=0;
	for (i=0; i<arrayLocalidades.length; i++) {
		if ((attLocalidad.value!='0') && (attLocalidad.value==arrayLocalidades[i].cod)) {
			//OPCION SELECCIONADA
			selectedindex=i;
		}
		cbxLocalidades.options[i]=new Option(arrayLocalidades[i].desc,arrayLocalidades[i].cod);
	}

	//SELECCIONAR INDICE DE LA LOCALIDAD DEL USUARIO
	cbxLocalidades.selectedIndex=selectedindex;
}

function cargarComboLocalidades() {
	if (attLocalidad !== null) {
		if ( (attPais.value!='ND') && (attDepartamento.value!='0') ) {
			//OBTENER LISTA LOCALIDADES
			MVD.Ajax.postGX('ancombogetoptions',{AttNom:'UsrRegLoc', OpcPadreValor:attDepartamento.value},actualizarComboLocalidades);
		} else {
			cargarComboVacio(cbxLocalidades);
			attLocalidad.value=0;
		}
	}
}

function actualizarDepartamentoSeleccionado() {
	//BUSCAR VALOR ACTUAL
	var departamentoActual=buscarValorCombo(cbxDepartamentos);

	//SI EL VALOR CAMBIO
	if (attDepartamento.value!=departamentoActual) {
		attDepartamento.value=departamentoActual;
		if (attLocalidad !== null) {
			cargarComboLocalidades();
			attLocalidad.value='0';
		}
	}
}

function actualizarComboDepartamentos(listaDepartamentos) {
	//TRANSFORMAR RESPUESTA DE GX EN ARRAY DE OBJETOS
	eval("var arrayDepartamentos=" + listaDepartamentos);

	//VACIAR OPCIONES DEL COMBO
	cbxDepartamentos.options.length=0;

	//RECORRER ARRAY Y AGREGAR OPCIONES AL COMBO
	var selectedindex=0;
	for (i=0; i<arrayDepartamentos.length; i++) {
		if ((attDepartamento.value!='0') && (attDepartamento.value==arrayDepartamentos[i].cod)) {
			//OPCION SELECCIONADA
			selectedindex=i;
		}
		cbxDepartamentos.options[i]=new Option(arrayDepartamentos[i].desc,arrayDepartamentos[i].cod);
	}

	//SELECCIONAR INDICE DEL DEPARTAMENTO DEL USUARIO
	cbxDepartamentos.selectedIndex=selectedindex;

	if (arrayDepartamentos.length==1) {
		if (attLocalidad !== null) {
			cargarComboVacio(cbxLocalidades);
			attLocalidad.value=0;
		}
	}
}

function cargarComboDepartamentos() {
	if (attDepartamento !== null) {
		if (attPais.value!='ND') {
			//OBTENER LISTA DEPARTAMENTOS
			MVD.Ajax.postGX('ancombogetoptions',{AttNom:'UsrRegDepto', OpcPadreValor:attPais.value},actualizarComboDepartamentos);
		} else {
			cargarComboVacio(cbxDepartamentos);
			attDepartamento.value='0';
		}
	}
}

function actualizarPaisSeleccionado() {
	//BUSCAR VALOR ACTUAL
	var paisActual=buscarValorCombo(cbxPaises);

	//SI EL VALOR CAMBIO
	if (attPais.value!=paisActual) {
		attPais.value=paisActual;
		if (attDepartamento !== null) {
			cargarComboDepartamentos();
			attDepartamento.value='0';
		}
		if (attLocalidad !== null) {
			attLocalidad.value='0';
		}
	}
}

function actualizarComboPaises(listaPaises) {
	//TRANSFORMAR RESPUESTA DE GX EN ARRAY DE OBJETOS
	eval("var arrayPaises=" + listaPaises);

	//VACIAR OPCIONES DEL COMBO
	cbxPaises.options.length=0;

	//RECORRER ARRAY Y AGREGAR OPCIONES AL COMBO
	var selectedindex=0;
	for (i=0; i<arrayPaises.length; i++) {
		if ((attPais.value!='ND') && (attPais.value==arrayPaises[i].cod)) {
			//OPCION SELECCIONADA
			selectedindex=i;
		}
		cbxPaises.options[i]=new Option(arrayPaises[i].desc,arrayPaises[i].cod);
	}
	cbxPaises.selectedIndex=selectedindex;
}

function cargarComboPaises() {
	//OBTENER LISTA PAISES
	MVD.Ajax.postGX('ancombogetoptions',{AttNom:'UsrRegPais', OpcPadreValor:0},actualizarComboPaises);
}

function initCombosRegistro(pais,departamento,localidad) {
	attPais=null;
	cbxPaises=null;
	attDepartamento=null;
	cbxDepartamentos=null;
	attLocalidad=null;
	cbxLocalidades=null;

	if (pais!='') {
		//INICIAR VARIABLES DE ATRIBUTOS
		attPais=document.REGISTROUSR[pais];
		cbxPaises=document.REGISTROUSR[pais + 'Select'];
		//ASOCIAR FUNCIONES A COMBOS
		cbxPaises.onchange=actualizarPaisSeleccionado;
		//INICIALIZAR VALORES DE COMBOS
		cargarComboPaises();
	}

	if (departamento!='') {
		//INICIAR VARIABLES DE ATRIBUTOS
		attDepartamento=document.REGISTROUSR[departamento];
		cbxDepartamentos=document.REGISTROUSR[departamento + 'Select'];
		//ASOCIAR FUNCIONES A COMBOS
		cbxDepartamentos.onchange=actualizarDepartamentoSeleccionado;
		//INICIALIZAR VALORES DE COMBOS
		if (attPais.value!='ND') {
			cargarComboDepartamentos();
		}
	}

	if (localidad!='') {
		//INICIAR VARIABLES DE ATRIBUTOS
		attLocalidad=document.REGISTROUSR[localidad];
		cbxLocalidades=document.REGISTROUSR[localidad + 'Select'];
		//ASOCIAR FUNCIONES A COMBOS
		cbxLocalidades.onchange=actualizarLocalidadSeleccionada;
		//INICIALIZAR VALORES DE COMBOS
		if (attDepartamento.value!='0') {
			cargarComboLocalidades();
		}
	}
}

function initCombosSexo(sexo) {
	//INICIAR VARIABLES DE ATRIBUTOS
	attSexo=document.REGISTROUSR[sexo];
	cbxSexos=document.REGISTROUSR[sexo + 'Select'];
	//ASOCIAR FUNCIONES A COMBOS
	cbxSexos.onchange=actualizarSexoSeleccionado;
	//INICIALIZAR VALORES DE COMBOS
	actualizarComboSexos();
}

function initFechaNacimiento(fechanac,contCal) {
	//SETEAR VARIABLES GLOBALES
	attFecNac=document.REGISTROUSR[fechanac];
	attContCal=contCal;

	//COPIAR FECHA DE NACIMIENTO DESDE VARIABLE A CALENDARIO
	var attValor=attFecNac.value;
	var er=/^([0-9]+)\/([0-9]+)\/([0-9]+)$/;
	var ermatch;
	ermatch=er.exec(attValor);
	var f=MVD.Form.getFecha(attContCal);
	if (ermatch) {
		var dd, mm, aaaa;
		dd=ermatch[1];
		if (dd.substr(0,1) === '0') {
			dd=dd.substr(1,1);
		}
		mm=ermatch[2];
		if (mm.substr(0,1) == '0') {
			mm=mm.substr(1,1);
		}
		aaaa=ermatch[3];
	    f.setValue(dd,mm,aaaa);
	}
}