Skip to content

Helping people with sign‐in and email problems

Mike Lissner edited this page Sep 13, 2023 · 2 revisions

People have a lot of problems with emails and signing in. Here are a few that we can help with.

Can't sign in despite resetting password

This is almost always because they are trying to sign in with their email address instead of their username. Tell them to use their username, but do not give it to them until they have confirmed their email address. They can get their username themselves via this page:

https://www.courtlistener.com/reset-password/

Blocked email addresses

Background

We monitor which of our emails are delivered to inboxes. If an email address starts failing, we stop sending new emails and save them instead, and retry the last one that didn’t go through for up to five days. If/when it goes through, we send the emails that we had saved since the outage began. If nothing goes through for five days, we give up, block the address, and stop saving emails for it.

We show a big banner to users so they can fix things. It links to this page:

https://www.courtlistener.com/help/broken-email/

You can also learn more about the approach on our blog.

Fixing it

To fix it, look up the user's email address here, and then delete the blockage:

https://www.courtlistener.com/admin/users/emailflag/

That's usually all it takes. From there, emails will flush out to the user.

Email Changed Incorrectly

This is a tricky one. what happens is a user attempts to change their email address, but when they do, they put in a new value that has a typo. Their old email is thus wiped out, and their new email is no good either. They have no obvious way of confirming their account, so they send us a message via the contact form.

Here's what to do:

  1. We cannot trust anything they say via the contact form. Assume it's all lies, but pull up "their" account via in the Django admin anyway. You'll need their username for this, since any email address they give you should not work.

    What you should see in their profile is an email address that's different from what they want it to be (according to their lie-ridden message), and it should not be confirmed — How could they if it has a typo?

  2. The only way to see if the email was actually changed is to go to the history record for their account, via Python. So, from the shell:

    from django.contrib.auth.models import User
    u = User.objects.get(pk=9443)
    # Look at the email in their previous revision of their account.
    # This should be a different value than what it is now.
    u.event.all().order_by('pgh_created_at')[0].__dict__['email']
    # Make sure it was confirmed:
    u.profile.event.all().order_by('pgh_created_at')[0].__dict__['email_confirmed']
    
  3. If the old value was confirmed, reset it to that value via the admin panel and set it to confirmed.

  4. Tell the user to try again.

User wants to change their email, after losing control of previous one

If a user cannot prove that they own an email address, we can't help them, but the good news is, they can log in and change their email address themselves. If, however, they've forgotten their log in information, there's nothing we can do.