Skip to content

Commit

Permalink
Sincronização dos dados no perfil do voluntário
Browse files Browse the repository at this point in the history
  • Loading branch information
BiancaFSilva authored Aug 19, 2024
1 parent 945f23a commit 82efcb3
Show file tree
Hide file tree
Showing 2 changed files with 103 additions and 101 deletions.
6 changes: 2 additions & 4 deletions fj-tech/src/js/voluntarios/lista.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -164,9 +164,10 @@ document.getElementById("corpoTabelaDeListagemDeVoluntarios").addEventListener("
const idVoluntarioPerfil = event.target.closest("tr").id;

const docVoluntario = voluntarioSnapshot.docs.find((doc) => doc.id === idVoluntarioPerfil);
const inscricaoVoluntario = getDoc(doc(docVoluntario, 'festival', edicaoAtualFestival), data_inscricao);
const inscricaoVoluntario = doc(docVoluntario.ref, 'festival', edicaoAtualFestival).data_inscricao;
const dataInscricaoVoluntario = new Date(inscricaoVoluntario * 1000).toLocaleDateString('pt-BR');

//console.log("Dados do voluntário: ", docVoluntario.data());
document.getElementById("docVoluntarioPerfil").innerHTML = `ID: ${docVoluntario.id} | Voluntário desde ${dataInscricaoVoluntario}`;
});

Expand All @@ -179,9 +180,6 @@ document.getElementById("corpoTabelaDeListagemDeVoluntarios").addEventListener("

document.getElementById("nomeVoluntarioGerenciado").innerText = `${docVoluntario.data().nome_completo_voluntario}`;
document.getElementById("gestaoRecusosVoluntarioNoFestival").innerText = `${docVoluntario.id}`;

// Adiciona o código de credencial previamente cadastrado
document.getElementById("codigoCredencial").value = getDoc(doc(voluntarioDoc.ref, 'festival', edicaoAtualFestival)).data().codigo_credencial_voluntario;
});

/**
Expand Down
198 changes: 101 additions & 97 deletions fj-tech/src/js/voluntarios/perfil.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -7,108 +7,112 @@ import './lista.mjs';
/**
* Identifica o id do voluntário cujo perfil será exibido
*/
document.querySelectorAll("tr").forEach((tr) => {
tr.addEventListener("click", async () => {
const idPerfilVoluntario = tr.id;

/**
* Exibe as informações mais relevantes do voluntário na tela de perfil
*/
const docRef = doc(db, "voluntario", idPerfilVoluntario);
const perfil = await getDoc(docRef);

if (perfil.exists()) {
//console.log("Document data:", perfil.data());

/**
* Dados Pessoais
*/
document.getElementById("nomeCompletoDoVoluntario").value = perfil.data().nome_completo_voluntario;
document.getElementById("cpfDoVoluntario").value = perfil.data().cpf_voluntario;
document.getElementById("emailDoVoluntario").value = perfil.data().contato.email_voluntario;
document.getElementById("telefoneDoVoluntario").value = perfil.data().contato.celular_voluntario;

(perfil.data().sexo_voluntario === "Masculino")
? document.getElementById("sexoMasculino").checked = true
: document.getElementById("sexoFeminino").checked = true;

perfil.data().faixa_etaria_voluntario.forEach((faixaEtaria) => {
document.getElementById("faixaEtariaDoVoluntario").value += faixaEtaria;
});

/**
* Contato de Emergência
*/
document.getElementById("nomeContatoDoVoluntario").value = perfil.data().contato.emergencia.nome_contato_emergencia;
document.getElementById("telefoneContatoDoVoluntario").value = perfil.data().contato.emergencia.telefone_contato_emergencia;

/**
* Endereço do Voluntário
*/
document.getElementById("cepDoVoluntario").setAttribute("readonly", true);
document.getElementById("cepDoVoluntario").value = perfil.data().endereco.cep;

document.getElementById("enderecoDoVoluntario").value = perfil.data().endereco.logradouro;
document.getElementById("bairroDoVoluntario").value = perfil.data().endereco.bairro;
document.getElementById("cidadeDoVoluntario").value = perfil.data().endereco.cidade;
document.getElementById("estadoDoVoluntario").value = perfil.data().endereco.estado;
document.getElementById("corpoTabelaDeListagemDeVoluntarios").addEventListener("click", () => {
document.querySelectorAll("tr").forEach((tr) => {
tr.addEventListener("click", async () => {
const idPerfilVoluntario = tr.id;

/**
* Dados Adicionais
* Exibe as informações mais relevantes do voluntário na tela de perfil
*/
document.getElementById("ascendente").setAttribute("hidden", true);
if (perfil.data().descendencia_voluntario.descendente_japones === true) {
document.getElementById("descendenteSim").checked = true;
document.getElementById("ascendente").removeAttribute("hidden");
const docRef = doc(db, "voluntario", idPerfilVoluntario);
const perfil = await getDoc(docRef);

if (perfil.exists()) {
// Limpa os campos do modal de perfil do voluntário se houver algum valor
clearInputData();
//console.log("Document data:", perfil.data());

/**
* Dados Pessoais
*/
document.getElementById("nomeCompletoDoVoluntario").value = perfil.data().nome_completo_voluntario;
document.getElementById("cpfDoVoluntario").value = perfil.data().cpf_voluntario;
document.getElementById("emailDoVoluntario").value = perfil.data().contato.email_voluntario;
document.getElementById("telefoneDoVoluntario").value = perfil.data().contato.celular_voluntario;

(perfil.data().dados_pessoais.sexo_voluntario === "Masculino")
? document.getElementById("sexoMasculino").checked = true
: document.getElementById("sexoFeminino").checked = true;

perfil.data().dados_pessoais.faixa_etaria.forEach((faixaEtaria) => {
document.getElementById("faixaEtariaDoVoluntario").value += faixaEtaria;
});

/**
* Contato de Emergência
*/
document.getElementById("nomeContatoDoVoluntario").value = perfil.data().contato.emergencia.nome_contato_emergencia;
document.getElementById("telefoneContatoDoVoluntario").value = perfil.data().contato.emergencia.telefone_contato_emergencia;

/**
* Endereço do Voluntário
*/
document.getElementById("cepDoVoluntario").setAttribute("readonly", true);
document.getElementById("cepDoVoluntario").value = perfil.data().endereco.cep;

document.getElementById("enderecoDoVoluntario").value = perfil.data().endereco.logradouro;
document.getElementById("bairroDoVoluntario").value = perfil.data().endereco.bairro;
document.getElementById("cidadeDoVoluntario").value = perfil.data().endereco.cidade;
document.getElementById("estadoDoVoluntario").value = perfil.data().endereco.estado;

/**
* Dados Adicionais
*/
document.getElementById("ascendente").setAttribute("hidden", true);
if (perfil.data().dados_pessoais.descendencia.possui_descendencia_japonesa === true) {
document.getElementById("descendenteSim").checked = true;
document.getElementById("ascendente").removeAttribute("hidden");
} else {
document.getElementById("descendenteNao").checked = true;
document.getElementById("ascendente").setAttribute("hidden", true);
}

perfil.data().dados_pessoais.descendencia.ascendencia_voluntario.forEach((ascendencia) => {
document.getElementById("ascendenciaDoVoluntarioDescendente").value += ascendencia;
});

// Idiomas
// Conhecimento em Ingl~Es
document.getElementById("idiomaVoluntarioIngles").removeAttribute("checked", true);
(perfil.data().carreira.escolaridade.conhecimento_linguas.idioma_ingles === true)
? document.getElementById("idiomaVoluntarioIngles").checked = true
: document.getElementById("idiomaVoluntarioIngles").removeAttribute("checked");
// Conhecimento em Japonês
document.getElementById("idiomaVoluntarioJapones").removeAttribute("checked", true);
(perfil.data().carreira.escolaridade.conhecimento_linguas.idioma_japones === true)
? document.getElementById("idiomaVoluntarioJapones").checked = true
: document.getElementById("idiomaVoluntarioJapones").removeAttribute("checked");
// Conhecimento em Espanhol
document.getElementById("idiomaVoluntarioEspanhol").removeAttribute("checked", true);
(perfil.data().carreira.escolaridade.conhecimento_linguas.idioma_espanhol === true)
? document.getElementById("idiomaVoluntarioEspanhol").checked = true
: document.getElementById("idiomaVoluntarioEspanhol").removeAttribute("checked");

// Conhecimento em Libras
(perfil.data().carreira.escolaridade.conhecimento_linguas.linguagem_de_sinais_brasileira === true)
? document.getElementById("conhecimentoLibrasSim").checked = true
: document.getElementById("conhecimentoLibrasNao").checked = true;

// Treinamento em Primeiros Socorros
(perfil.data().treinamento_primeiros_socorros === true)
? document.getElementById("treinamentoSim").checked = true
: document.getElementById("treinamentoNao").checked = true;

// Escolaridade
perfil.data().carreira.escolaridade.nivel_escolaridade.forEach((nivelEscolaridade) => {
document.getElementById("nivelEscolaridadeVoluntario").value += nivelEscolaridade;
});

// Trabalho
(perfil.data().carreira.profissao.trabalha_atualmente === true)
? document.getElementById("trabalhaSim").checked = true
: document.getElementById("trabalhaNao").checked = true;
} else {
document.getElementById("descendenteNao").checked = true;
// perfil.data() retornará undefined
console.log("Não foi possível encontrar o perfil deste voluntário.");
}

perfil.data().descendencia_voluntario.ascendencia_voluntario.forEach((ascendencia) => {
document.getElementById("ascendenciaDoVoluntarioDescendente").value += ascendencia;
});

// Idiomas
// Conhecimento em Ingl~Es
document.getElementById("idiomaVoluntarioIngles").removeAttribute("checked", true);
(perfil.data().escolaridade_voluntario.conhecimento_voluntario.idioma_ingles === true)
? document.getElementById("idiomaVoluntarioIngles").setAttribute("checked", true)
: document.getElementById("idiomaVoluntarioIngles").removeAttribute("checked");
// Conhecimento em Japonês
document.getElementById("idiomaVoluntarioJapones").removeAttribute("checked", true);
(perfil.data().escolaridade_voluntario.conhecimento_voluntario.idioma_japones === true)
? document.getElementById("idiomaVoluntarioJapones").setAttribute("checked", true)
: document.getElementById("idiomaVoluntarioJapones").removeAttribute("checked");
// Conhecimento em Espanhol
document.getElementById("idiomaVoluntarioEspanhol").removeAttribute("checked", true);
(perfil.data().escolaridade_voluntario.conhecimento_voluntario.idioma_espanhol === true)
? document.getElementById("idiomaVoluntarioEspanhol").setAttribute("checked", true)
: document.getElementById("idiomaVoluntarioEspanhol").removeAttribute("checked");

// Conhecimento em Libras
(perfil.data().escolaridade_voluntario.conhecimento_voluntario.linguagem_libras === true)
? document.getElementById("conhecimentoLibrasSim").checked = true
: document.getElementById("conhecimentoLibrasNao").checked = true;

// Treinamento em Primeiros Socorros
(perfil.data().escolaridade_voluntario.treinamento_primeiros_socorros === true)
? document.getElementById("treinamentoSim").checked = true
: document.getElementById("treinamentoNao").checked = true;

// Escolaridade
perfil.data().escolaridade_voluntario.nivel_escolaridade_voluntario.forEach((nivelEscolaridade) => {
document.getElementById("nivelEscolaridadeVoluntario").value += nivelEscolaridade;
});

// Trabalho
(perfil.data().carreira_voluntario.trabalha_atualmente === true)
? document.getElementById("trabalhaSim").checked = true
: document.getElementById("trabalhaNao").checked = true;
} else {
// perfil.data() retornará undefined
console.log("Não foi possível encontrar o perfil deste voluntário.");
}

});
});
});

Expand Down

0 comments on commit 82efcb3

Please sign in to comment.