mirror of
https://github.com/retspen/webvirtcloud
synced 2026-11-08 19:26:48 +00:00
feat(admin): a password an administrator sets can be one the user must change
The administrator's password form has "The user must change it at their next login". With it, the user is sent to the change form until they choose their own, as the generated admin password already does.
This commit is contained in:
parent
0e8130f1b0
commit
24896aaecd
4 changed files with 33 additions and 7 deletions
|
|
@ -1,5 +1,6 @@
|
|||
from django import forms
|
||||
from django.contrib.auth import password_validation
|
||||
from django.contrib.auth.forms import AdminPasswordChangeForm
|
||||
from django.contrib.auth.models import Group, User
|
||||
from django.core.exceptions import ValidationError
|
||||
from django.utils.translation import gettext_lazy as _
|
||||
|
|
@ -123,3 +124,12 @@ class UserAttributesForm(forms.ModelForm):
|
|||
class Meta:
|
||||
model = UserAttributes
|
||||
exclude = ["user", "can_clone_instances", "must_change_password"]
|
||||
|
||||
|
||||
class AdminPasswordForm(AdminPasswordChangeForm):
|
||||
"""A password an administrator sets; the user may have to change it at their next login."""
|
||||
must_change_password = forms.BooleanField(label=_("The user must change it at their next login"), required=False)
|
||||
|
||||
def __init__(self, *args, **kwargs):
|
||||
super().__init__(*args, **kwargs)
|
||||
self.fields["must_change_password"] = self.fields.pop("must_change_password") # last, after Django's own
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue