Exemple #1
0
def tags_search(request, tag_id):
    page = request.GET.get("offset", 1)
    showall = request.GET.get("showall", "0")
    tag = get_object_or_404(Tag, pk=tag_id)
    posts = Post.objects.filter(blog=None, tags=tag_id) \
                .order_by('-created') \
                .select_related('owner__profile', 'thread', 'forum')

    if showall == "0":
        posts = posts.exclude(rating__lte=settings.MIN_RATING)

    paginator = ExtendedPaginator(
                    posts,
                    settings.PAGE_LIMITATIONS["FORUM_TOPICS"]
                )

    try:
        thread = paginator.page(page)
    except (EmptyPage, InvalidPage):
        thread = paginator.page(paginator.num_pages)

    return {
        'thread': thread,
        'search_tag': tag.name,
        'showall': showall
    }
Exemple #2
0
def forum(request, forum_id):
    showall = request.GET.get("showall", "0")
    page = request.GET.get("offset", 1)
    forum = get_object_or_404(Forum, pk=forum_id)
    posts = Post.objects.filter(
                reply_to=None, forum=forum) \
                .order_by('-sticked', '-created') \
                .select_related('owner__profile', 'thread'
            )

    if showall == "0":
        posts = posts.exclude(rating__lte=settings.MIN_RATING)

    paginator = ExtendedPaginator(
                    posts,
                    settings.PAGE_LIMITATIONS["FORUM_TOPICS"]
                )

    try:
        thread = paginator.page(page)
    except (EmptyPage, InvalidPage):
        thread = paginator.page(paginator.num_pages)

    return {
        'forum': forum,
        'thread': thread,
        'form': PostForm(),
        'showall': showall,
    }
Exemple #3
0
def index(request):
    page = request.GET.get("offset", 1)
    posts = Post.get_rated_blog_posts()
    paginator = ExtendedPaginator(
                    posts,
                    settings.PAGE_LIMITATIONS["BLOG_POSTS"]
                )

    try:
        thread = paginator.page(page)
    except (EmptyPage, InvalidPage):
        thread = paginator.page(paginator.num_pages)

    return { 'thread': thread }
Exemple #4
0
def list_users(request):
    blog_list = Blog.objects.all().exclude(owner=1) \
                .exclude(owner__profile__visible_name__isnull=True) \
                .order_by("-owner__profile__karma")

    page = request.GET.get("offset", 1)

    paginator = ExtendedPaginator(
                    blog_list,
                    settings.PAGE_LIMITATIONS["FORUM_TOPICS"]
                )

    return {
        'thread': paginator.page(page)
    }
Exemple #5
0
def firebox(request):
    page = request.GET.get("offset", 1)
    posts = Post.objects.exclude(blog=None) \
            .exclude(rating__gte=settings.MIN_RATING) \
            .order_by('-created') \
            .select_related('owner__profile', 'blog', 'thread')

    paginator = ExtendedPaginator(
                    posts,
                    settings.PAGE_LIMITATIONS["BLOG_POSTS"]
                )

    try:
        thread = paginator.page(page)
    except (EmptyPage, InvalidPage):
        thread = paginator.page(paginator.num_pages)

    return { 'thread': thread }
Exemple #6
0
def tags_search(request, tag_id):
    page = request.GET.get("offset", 1)

    tag = get_object_or_404(Tag, pk=tag_id)
    posts = Post.objects.filter(forum=None, tags=tag_id) \
            .order_by('-created') \
            .select_related('owner__profile','blog','thread')

    paginator = ExtendedPaginator(
                    posts,
                    settings.PAGE_LIMITATIONS["BLOG_POSTS"]
                )

    try:
        thread = paginator.page(page)
    except (EmptyPage, InvalidPage):
        thread = paginator.page(paginator.num_pages)

    return {'thread': thread, 'tag': tag}
Exemple #7
0
def thread(request, post_id):
    page = request.GET.get("offset", 1)
    showall = request.GET.get("showall", "0")

    try:
        startpost = Post.objects \
            .select_related(
                'owner__profile',
                'blog',
                'forum',
                'thread'
            ).get(pk = post_id, reply_to = None)
    except Post.DoesNotExist:
        raise Http404


    posts = Post.objects.filter(thread=startpost.thread.pk) \
        .exclude(pk=startpost.pk) \
        .select_related(
            'owner__profile',
            'reply_to__owner__profile',
            'thread'
        )

    if showall == "0":
        posts = posts.exclude(rating__lte=settings.MIN_RATING)

    paginator = ExtendedPaginator(
                    posts,
                    settings.PAGE_LIMITATIONS["FORUM_COMMENTS"]
                )

    try:
        thread = paginator.page(page)
    except (EmptyPage, InvalidPage):
        thread = paginator.page(paginator.num_pages)

    return {
        'startpost': startpost,
        'thread': thread,
        'showall': showall
    }
Exemple #8
0
def view(request, blog_id):
    page = request.GET.get("offset", 1)

    try:
        blog_info = Blog.objects.select_related('owner').get(pk=blog_id)
    except:
        raise Http404

    posts = Post.get_users_blog_posts(blog_info)

    paginator = ExtendedPaginator(
                    posts,
                    settings.PAGE_LIMITATIONS["BLOG_POSTS"]
                )

    try:
        thread = paginator.page(page)
    except (EmptyPage, InvalidPage):
        thread = paginator.page(paginator.num_pages)

    return {
        'thread': thread,
        'blog_info': blog_info,
    }