regiov / voluntarios

Website voluntarios.com.br
GNU General Public License v3.0
14 stars 13 forks source link

Permitir que voluntários marquem entidades como favoritas #13

Closed regiov closed 1 year ago

regiov commented 4 years ago

Algumas ideias:

Sugestão de modelo: class EntidadeFavorita(models.Model): entidade = models.ForeignKey(Entidade, on_delete=models.CASCADE) voluntario = models.ForeignKey(Voluntario, on_delete=models.CASCADE) momento = models.DateTimeField(u'Momento', default=timezone.now) class Meta: unique_together = ('entidade', 'voluntario')

Obs: claro que o voluntário pode usar o próprio recurso do navegador pra marcar a página da entidade como favorita, mas se o mecanismo for interno ao site, teremos como saber quais as entidades mais populares, e poderemos oferecer a possibilidade do voluntário receber notificações automáticas sobre aquela entidade no futuro.

Diogojlq commented 1 year ago

Boa noite @regiov, gostaria de trabalhar nessa issue.

regiov commented 1 year ago

Bacana @Diogojlq, não sei como ninguém quis pegar essa antes - acho uma das mais legais de implementar... ps: fui viajar esse fim de semana e ainda não consegui ver o outro pull request. Assim que possível vou incorporar.

Diogojlq commented 1 year ago

Olá @regiov, que legal, espero que tenha sido uma viagem gratificante e proveitosa. Criei o modelo e estou criando o botão, e me surgiu a dúvida de que texto colocar, pensei em colocar simplesmente "favoritar entidade", mas gostaria de saber como prefere, ou se prefere sem esse texto, só o ícone de coração mesmo... Quanto ao posicionamento desse botão na página, estava pensando em colocar na direita, na mesma linha do nome da entidade, mas pela forma que o html está estruturado acredito que vá ficar melhor simplesmente colocar embaixo do nome da entidade, mas me diga o que acha.

regiov commented 1 year ago

Fala @Diogojlq, prefiro só o ícone, sem botão, semelhante ao que encontramos nas redes sociais. Acho que o ícone ficaria melhor numa linha abaixo do nome da entidade. Nessa linha futuramente podemos colocar outros ícones, como por exemplo para compartilhamento (da mesma forma que já temos nos posts do nosso blog).

Diogojlq commented 1 year ago

Boa @regiov, fiz apenas o ícone, e coloquei o atributo "title", assim quando o usuário colocar o mouse em cima do ícone, o texto de ajuda "Adicionar entidade as favoritas" é mostrado. Quanto ao tamanho, vou deixar um pouco maior e você pode facilmente depois alterar para o que considerar mais adequado no CSS, estou utilizando "font-size" para definir o tamanho. Uma dúvida, provavelmente boba : devo verificar se o usuário está logado e é voluntário ? Me parece que apenas um "if request.user.is_voluntario" já resolve, apenas verificando se é voluntario.

regiov commented 1 year ago

Legal, @Diogojlq, isso mesmo. Mas pega leve aí senão daqui a pouco você já faz o pull request e eu ainda nem consegui incorporar o outro! ;-) (brincadeira, pode mandar ver) Quanto à pergunta, sim, observe que o modelo sugerido pra armazenar o favorito tem uma ForeignKey apontando para o Voluntario, então precisa estar logado e ser voluntário sim pra aparecer o ícone. O if mencionado já deve ser suficiente.

Diogojlq commented 1 year ago

Boa noite @regiov, infelizmente estou quase terminando :-( . Brincadeiras a parte, essa issue está sendo bem divertida, só falta criar a página no menu para mostrar a lista de entidades favoritas do voluntário. Acho que ainda hoje, amanhã no máximo, faço o pull request.