def topic(request, pk): user = request.user topic = get_object_or_404(Topic, pk=pk) if not topic.has_access(user): raise Http404 Topic.objects.filter(pk=pk).update(views=F('views') + 1) qs = topic.posts.all() form = None if topic.can_post(user): form = AddPostForm(topic, user) topic.mark_visited_for(user) extra_context = { 'form': form, 'forum': topic.forum, 'topic': topic, 'has_access': topic.has_access(user) } return object_list(request, qs, POSTS_ON_PAGE, template_name='djforum/topic.html', extra_context=extra_context)
def my_topics(request): qs = Topic.objects.filter(user=request.user) extra_context = {} return object_list(request, qs, 20, template_name='djforum/my_topics.html', extra_context=extra_context)
def search(request): q = request.GET.get('q', '') form = forms.SearchForm(request.GET) search_qs = form.search() extra_context = {'searching_for': q, 'form': form} return object_list(request, search_qs, 30, template_name='main/search.html', extra_context=extra_context)
def forum(request, pk): forum_obj = get_object_or_404(Forum, pk=pk) if not forum_obj.has_access(request.user): raise Http404 qs = forum_obj.topics.all() extra_context = { 'forum': forum_obj } return object_list(request, qs, 20, template_name='djforum/forum.html', extra_context=extra_context)
def forum(request, pk): forum_obj = get_object_or_404(Forum, pk=pk) if not forum_obj.has_access(request.user): raise Http404 qs = forum_obj.topics.all() extra_context = {'forum': forum_obj} return object_list(request, qs, 20, template_name='djforum/forum.html', extra_context=extra_context)
def search(request): q = request.GET.get('q', '') form = forms.SearchForm(request.GET) search_qs = form.search() extra_context = { 'searching_for': q, 'form': form } return object_list(request, search_qs, 30, template_name='main/search.html', extra_context=extra_context)
def index(request): qs = models.Video.objects.all() tag_name = request.GET.get('tag', None) tag = None if tag_name: tag = get_object_or_404(Tag, name=tag_name) qs = TaggedItem.objects.get_by_model(qs, tag) extra_context = { 'tag': tag } return object_list(request, qs, VIDEOS_ON_PAGE, template_name='videos/index.html', extra_context=extra_context)