Commit a607d9d3 authored by Jannis Leidel's avatar Jannis Leidel
Browse files

[1.2.X] Fixed #8342 -- Removed code from the admin that assumed that you can't...

[1.2.X] Fixed #8342 -- Removed code from the admin that assumed that you can't login with an email address (nixed by r12634).

Backport from trunk (r14769).

git-svn-id: http://code.djangoproject.com/svn/django/branches/releases/1.2.X@14773 bcc190cf-cafb-0310-a4f2-bffc1f526a37
parent 1155b493
Loading
Loading
Loading
Loading
+1 −3
Original line number Diff line number Diff line
@@ -327,13 +327,11 @@ class AdminSite(object):
                try:
                    user = User.objects.get(email=username)
                except (User.DoesNotExist, User.MultipleObjectsReturned):
                    message = _("Usernames cannot contain the '@' character.")
                    pass
                else:
                    if user.check_password(password):
                        message = _("Your e-mail address is not your username."
                                    " Try '%s' instead.") % user.username
                    else:
                        message = _("Usernames cannot contain the '@' character.")
            return self.display_login_form(request, message)

        # The user data is correct; log in the user in and continue.
+0 −4
Original line number Diff line number Diff line
@@ -60,10 +60,6 @@ def staff_member_required(view_func):
                users = list(User.objects.filter(email=username))
                if len(users) == 1 and users[0].check_password(password):
                    message = _("Your e-mail address is not your username. Try '%s' instead.") % users[0].username
                else:
                    # Either we cannot find the user, or if more than 1
                    # we cannot guess which user is the correct one.
                    message = _("Usernames cannot contain the '@' character.")
            return _display_login_form(request, message)

        # The user data is correct; log in the user in and continue.
+4 −4
Original line number Diff line number Diff line
@@ -453,12 +453,12 @@ class AdminViewPermissionsTest(TestCase):
        self.assertContains(login, "Your e-mail address is not your username")
        # only correct passwords get a username hint
        login = self.client.post('/test_admin/admin/', self.super_email_bad_login)
        self.assertContains(login, "Usernames cannot contain the '@' character")
        self.assertContains(login, "Please enter a correct username and password")
        new_user = User(username='jondoe', password='secret', email='super@example.com')
        new_user.save()
        # check to ensure if there are multiple e-mail addresses a user doesn't get a 500
        login = self.client.post('/test_admin/admin/', self.super_email_login)
        self.assertContains(login, "Usernames cannot contain the '@' character")
        self.assertContains(login, "Please enter a correct username and password")

        # Add User
        request = self.client.get('/test_admin/admin/')
@@ -962,12 +962,12 @@ class SecureViewTest(TestCase):
        self.assertContains(login, "Your e-mail address is not your username")
        # only correct passwords get a username hint
        login = self.client.post('/test_admin/admin/secure-view/', self.super_email_bad_login)
        self.assertContains(login, "Usernames cannot contain the '@' character")
        self.assertContains(login, "Please enter a correct username and password")
        new_user = User(username='jondoe', password='secret', email='super@example.com')
        new_user.save()
        # check to ensure if there are multiple e-mail addresses a user doesn't get a 500
        login = self.client.post('/test_admin/admin/secure-view/', self.super_email_login)
        self.assertContains(login, "Usernames cannot contain the '@' character")
        self.assertContains(login, "Please enter a correct username and password")

        # Add User
        request = self.client.get('/test_admin/admin/secure-view/')