Closed JoaoFelipe closed 3 years ago
Parece que o :validatable
tem 3 confirmações
A parte de presença de senha deu problema usando o active scaffold: não consegui editar usuário sem alterar senha. Então adicionei só a confirmação de senha com o validades_confirmation_of
. Podem homologar o branch bugfixes
A validação funcionou, mas a mensagem de erro está estranha:
"Digite a senha novamente não está igual". Poderia ser algo como "As senhas digitadas não são iguais. Por favor, digite-as novamente."
Além disso, após trocar a senha pela interface, não consigo mais fazer nada no sistema. Tenho que fazer logout e login novamente. Como será que poderíamos resolver isso? Talvez colocar uma mensagem pedindo ao usuário para fazer login novamente?
Não dá para forçar o logout automaticamente e voltar para a tela de login?
Leo
On Sat, Aug 7, 2021 at 10:21 AM Vanessa Braganholo @.***> wrote:
Além disso, após trocar a senha pela interface, não consigo mais fazer nada no sistema. Tenho que fazer logout e login novamente. Como será que poderíamos resolver isso? Talvez colocar uma mensagem pedindo ao usuário para fazer login novamente?
— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/gems-uff/sapos/issues/355#issuecomment-894654445, or unsubscribe https://github.com/notifications/unsubscribe-auth/AACKM54SJFNYWP4GZWQYMK3T3UXPBANCNFSM5BWS4BKQ . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&utm_campaign=notification-email .
No rails, o nome do atributo ("Digite a senha novamente") precisa aparecer no início. Tem como tirar essa limitação com uma gem (https://github.com/nanamkim/custom-err-msg), mas ela não recebe atualização há 6 anos e só é instalável por git. Será que vale a pena?
Uma alternativa é mudar o nome do campo para "Confirmação de senha". Com isso a mensagem fica "Confirmação de senha não está igual". Ou poderia ser "Confirmação de senha não está igual à senha. Por favor, digite-as novamente.". Que tal?
Vou ver esse problema da troca de senha pela interface agora.
Parece que o problema da alteração de senha era justamente que o Devise faz o logout automático ao trocar a senha, mas o active scaffold só atualiza o formulário parcialmente, então tudo deixa de funcionar ao invés de ir para a tela inicial. Corrigi mantendo o usuário logado (apenas na sessão atual) após a troca de senha. Se o usuário estiver logado em outro lugar, ainda deve desconectar.
Também alterei o atributo/mensagem para "Confirmação de senha não está igual à Senha". Podem testar outra vez
Obrigado @JoaoFelipe . @braganholo , coloquei em homologação. Você poderia testar novamente?
Testei e está ok. Pode colocar em produção.
Atualmente é possível definir uma senha diferente da confirmação e o SAPOS aceita (tanto na interface quanto no form de resetar senha).
Aparentemente, o devise não está configurado como
:validatable
. Vou configurar e ver se tem alguma outra implicação. Se tiver, usereivalidates_confirmation_of