def get_visible_threads_queryset(logged_user): queryset = Thread.objects listnames_for_user = [] if logged_user.is_authenticated(): lists_for_user = mailman.get_user_mailinglists(logged_user) listnames_for_user = mailman.extract_listname_from_list(lists_for_user) user_lists = Q(mailinglist__name__in=listnames_for_user) public_lists = Q(mailinglist__is_private=False) queryset = Thread.objects.filter(user_lists | public_lists) return queryset
def generate_content(self, **kwargs): all_threads = Thread.objects.all() lists_for_user = [] if kwargs['context']['user'].is_authenticated(): lists_for_user = mailman.get_user_mailinglists( kwargs['context']['user']) kwargs['context']['latest_threads'] = get_user_threads( all_threads, lists_for_user, lambda t: t)[:10] return super(DashboardLatestThreadsWidget, self).generate_content(**kwargs)
def generate_content(self, **kwargs): highest_score_threads = Thread.highest_score.all() lists_for_user = [] if kwargs['context']['user'].is_authenticated(): lists_for_user = mailman.get_user_mailinglists( kwargs['context']['user']) kwargs['context']['hottest_threads'] = get_user_threads( highest_score_threads, lists_for_user, lambda t: t.latest_message)[:10] return super(DashboardMostRelevantThreadsWidget, self).generate_content(**kwargs)