Do not generate a new reset password if the current one is still valid

Closes #14819
This commit is contained in:
Cédric Krier committed 2026-05-06 17:15:31 +02:00
1 parent 408cd5debf
commit dd56e5d88d
1 file changed
+5
+5
View File
@@ -285,8 +285,13 @@ class User(avatar_mixin(100, 'login'), DeactivableMixin, ModelSQL, ModelView):
@dualmethod
@ModelView.button
def reset_password(cls, users, length=8, from_=None):
now = datetime.datetime.now()
length = max(length, config.getint('password', 'length', default=0))
for user in users:
if (user.password_reset
and user.password_reset_expire
and user.password_reset_expire > now):
continue
user.password_reset = gen_password(length=length)
user.password_reset_expire = (
datetime.datetime.now() + datetime.timedelta(