ctrl-alt-d / django-aula

Gestió de presencia, incidències i més en centres educatius i acadèmies.
Other
18 stars 28 forks source link

[BUG] Recuperació d'accés via e-mail és sensible a majúscules #169

Closed ctrl-alt-d closed 3 years ago

ctrl-alt-d commented 3 years ago

Intro

django-aula és un programari de codi obert per a la gestió de presència, activitats i altres a instituts, escoles i acadèmies.

Hi ha un sistema d'autenticació mitjançant usuari i contransenya, però, si un professor o la família d'un alumne perd la contrasenya, es pot recuperar mitjançant l'adreça de correu.

Issue

Actualment, a la funcionalitat de recuperar accés mitjançant l'adreça de correu, la cerca per adreça és sensible a majúscules / minúscules i no hauria de ser-ho.

Com fixar-ho

La vista de recuperar accés està dins el fitxer: usuaris/views.py i utilitza la funció enviaOneTimePasswd que és la que cal modificar.

Per tal d'obtenir recuperació no sensible a majúscules, la funció enviaOneTimePasswd (usuaris/tools.py) hauria de fer les cerca "case insensitive" usant iexcat

La funció enviaOneTimePasswd té dues parts, la primera part alumnes per correu, caldria substituir:

    q_correu_pare = Q( correu_relacio_familia_pare = email )
    q_correu_mare = Q( correu_relacio_familia_mare = email )   

per

    q_correu_pare = Q( correu_relacio_familia_pare__iexact = email )
    q_correu_mare = Q( correu_relacio_familia_mare__iexact = email )   

La segona part busca professors per correu, es resol de manera semblat.

Comprovar que s'ha resolt:

Per comprovar la funcionalitat és fàcil muntar un entorn demo en un Linux:

Hackoctoberfest

Aquest repo forma part de la Hackoctoberfest i aquesta és una bona issue per algú que comenci amb django i git.