#28751: Add an error message for inactive user login in AdminAuthenticationForm
-------------------------------------+-------------------------------------
     Reporter:  SeungWon Kang        |                    Owner:  nobody
         Type:                       |                   Status:  new
  Cleanup/optimization               |
    Component:  contrib.admin        |                  Version:  master
     Severity:  Normal               |               Resolution:
     Keywords:                       |             Triage Stage:
                                     |  Unreviewed
    Has patch:  0                    |      Needs documentation:  0
  Needs tests:  0                    |  Patch needs improvement:  0
Easy pickings:  0                    |                    UI/UX:  0
-------------------------------------+-------------------------------------
Description changed by SeungWon Kang:

Old description:

> In admin login site, I found that inactive error message does not exist.
> (In AuthenticationForm it exists) I know default BackEnd checks the
> inactive in user_can_authenticate() method, but I think this error
> message is helpful if using other BackEnd like AllowAllUsersModelBackEnd.
>
> In AuthenticationForm,
> {{{
>         def confirm_login_allowed(self, user):
>         ...
>         if not user.is_active:
>             raise forms.ValidationError(
>                 self.error_messages['inactive'],
>                 code='inactive',
>             )
> }}}
>
> but in AdminAuthenticationForm,
>
> {{{
>         def confirm_login_allowed(self, user):
>         if not user.is_active or not user.is_staff:
>             raise forms.ValidationError(
>                 self.error_messages['invalid_login'],
>                 code='invalid_login',
>                 params={'username': self.username_field.verbose_name}
>             )
> }}}

New description:

 In admin login site, I found that inactive error message does not exist.
 (In AuthenticationForm it exists) I know default BackEnd checks the
 inactive in user_can_authenticate() method, but I think this error message
 is helpful if using other BackEnd like AllowAllUsersModelBackEnd.

 In AuthenticationForm,
 {{{
     def confirm_login_allowed(self, user):
         ...
         if not user.is_active:
             raise forms.ValidationError(
                 self.error_messages['inactive'],
                 code='inactive',
             )
 }}}

 but in AdminAuthenticationForm,

 {{{
     def confirm_login_allowed(self, user):
         if not user.is_active or not user.is_staff:
             raise forms.ValidationError(
                 self.error_messages['invalid_login'],
                 code='invalid_login',
                 params={'username': self.username_field.verbose_name}
             )
 }}}

--

-- 
Ticket URL: <https://code.djangoproject.com/ticket/28751#comment:1>
Django <https://code.djangoproject.com/>
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To post to this group, send email to django-updates@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/065.ea3ed63a5c189ff4a3b8169413402593%40djangoproject.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to