docs: def logout(request):
      """
      Removes the authenticated user's ID from the request and flushes their
      session data.
      """
      # Dispatch the signal before the user is logged out so the receivers have a
      # chance to find out *who* logged out.
      user = getattr(request, 'user', None)
      if hasattr(user, 'is_authenticated') and not user.is_authenticated:
          user = None
      user_logged_out.send(sender=user.__class__, request=request, user=user)
  
      # remember language choice saved to session
      language = request.session.get(LANGUAGE_SESSION_KEY)
  
      request.session.flush()
  
      if language is not None:
          request.session[LANGUAGE_SESSION_KEY] = language
  
      if hasattr(request, 'user'):
          request.user = MojAnonymousUser()