def clear_posts_render_cache(instance, **kwargs):
    for group in Group.objects.all():
        allowed_categories = get_all_viewable_categories( group, instance.user )
        post_list = Post.objects.filter( category__id__in = allowed_categories,
                                         author = instance.user )
        for post in post_list:
            post.clear_render_cache()
def clear_posts_render_cache(instance, **kwargs):
    for group in Group.objects.all():
        allowed_categories = get_all_viewable_categories( group, instance.user )
        post_list = Post.objects.filter( category__id__in = allowed_categories,
                                         author = instance.user )
        for post in post_list:
            post.clear_render_cache()
 def render(self, context):
     # TODO check permissions
     category_id = None
     if self.categoryvar:
         category_id = self.categoryvar.resolve(context)
     if not category_id:
         # if no category id is given simply display all categories
         # of the current group.
         category = None
         categories = get_all_viewable_categories(get_current_group(),
                                                  get_current_user())
         threads = Post.objects.filter(
             category__id__in=categories,
             thread__isnull=True,
         ).order_by('-postdate')
     else:
         category = Category.objects.get(pk=category_id)
         threads = Post.objects.filter(
             category=category,
             thread__isnull=True,
         ).order_by('-postdate')
     context.push()
     context['threads'] = threads
     context['category'] = category
     output = self.nodelist.render(context)
     context.pop()
     return output
 def render(self, context):
     # TODO check permissions
     category_id = None
     if self.categoryvar:
         category_id = self.categoryvar.resolve(context)
     if not category_id:
         # if no category id is given simply display all categories
         # of the current group.
         category = None
         categories = get_all_viewable_categories(get_current_group(), get_current_user())
         threads = Post.objects.filter(category__id__in=categories, thread__isnull=True).order_by("-postdate")
     else:
         category = Category.objects.get(pk=category_id)
         threads = Post.objects.filter(category=category, thread__isnull=True).order_by("-postdate")
     context.push()
     context["threads"] = threads
     context["category"] = category
     output = self.nodelist.render(context)
     context.pop()
     return output