from time import time from django.conf import settings from misago.threads.counts import (ModeratedCount, NewThreadsCount, UnreadThreadsCount, sync_user_unread_private_threads_count) class UnreadThreadsCountMiddleware(object): def process_request(self, request): if request.user.is_authenticated(): if request.user.acl['moderated_forums']: request.user.moderated_content = ModeratedCount( request.user, request.session) request.user.new_threads = NewThreadsCount( request.user, request.session) request.user.unread_threads = UnreadThreadsCount( request.user, request.session) if request.user.acl['can_use_private_threads']: # special case: count unread threads sync_user_unread_private_threads_count(request.user)