code: def get_readable_forums(self, forums, user):
          
          # Any superuser should be able to read all the forums.
          if user.is_superuser:
              return forums
  
          # Fetches the forums that can be read by the given user.
          readable_forums = self._get_forums_for_user(
              user, ['can_read_forum', ], use_tree_hierarchy=True)
          return forums.filter(id__in=[f.id for f in readable_forums]) \
              if isinstance(forums, (models.Manager, models.QuerySet)) \
              else list(filter(lambda f: f in readable_forums, forums))
docs: Returns a queryset of forums that can be read by the considered user.