Exemple #1
0
def tagged_view(request, tag):
    """
    Renders view for the tag passed in.
    :param request: http request
    :param tag: tag to view
    :return: rendered tag template
    """
    posts = Tag.find_posts_for_tag(tag) #TODO: pass tag as GET parameter so spaces in url are not an issue(as opposed to slugifying tags)
    display_info_list=[]
    for post in posts:
        display_info_list.append(PostDisplayInfo(request.user.blog,
                                 post,
                                 Activity.find_activity_for_object(post.pk,
                                                                  ContentType.objects.get_for_model(Post)).activity_type))
    context = {"tag":tag, "display_info_list":display_info_list}
    return render(request, "tagged.html", context)
Exemple #2
0
def load_more_tagged_posts(request, tag):
    """
    Asynchronously loads NUM_POSTS_TO_RETRIEVE more posts onto the current tag being viewed.
    :param request: xml http request
    :param tag: tag for which to retrieve posts
    :return: rendered posts template
    """
    offset = int(request.GET["offset"])
    NUM_POSTS_TO_RETRIEVE = int(request.GET["NUM_POSTS_TO_RETRIEVE"])
    posts = Tag.find_posts_for_tag(tag)[offset:offset+NUM_POSTS_TO_RETRIEVE]
    display_info_list=[]
    for post in posts:
        display_info_list.append(PostDisplayInfo(request.user.blog,
                                 post,
                                 Activity.find_activity_for_object(post.pk,
                                                                  ContentType.objects.get_for_model(Post)).activity_type))
    context = {"display_info_list": display_info_list}
    raw_template = loader.get_template("posts.html")
    rendered_template = raw_template.render(context)
    return HttpResponse(rendered_template, content_type='text/html')