summaryrefslogtreecommitdiff
path: root/app/guides/views.py
blob: 01dc9741a8c6188fc7dd9ccc915d032877d9eb52 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
from django.views.generic import ListView
from django.views.generic.detail import DetailView
from django.contrib.syndication.views import Feed

from utils.views import PaginatedListView

from .models import Guide


class GuideListView(PaginatedListView):
    model = Guide

    def get_queryset(self, **kwargs):
        qs = Guide.objects.filter(status=1)
        return qs

    def get_context_data(self, **kwargs):
        # Call the base implementation first to get a context
        context = super(GuideListView, self).get_context_data(**kwargs)
        context['topic_list'] = Guide.tags.all()
        return context


class GuideCatListView(GuideListView):
    model = Guide

    def get_queryset(self, **kwargs):
        cat = Category.objects.get(slug=self.kwargs['slug'])
        qs = Guide.objects.filter(status=1, tags=cat)
        return qs

class GuideDetailView(DetailView):
    model = Guide


class GuideDetailViewTXT(GuideDetailView):
    template_name = "essays/entry_detail.txt"


'''
class TopicListView(ListView):
    template_name = 'archives/src_home.html'

    def queryset(self):
        return Post.objects.filter(topics__slug=self.kwargs['slug'])

    def get_context_data(self, **kwargs):
        # Call the base implementation first to get a context
        context = super(TopicListView, self).get_context_data(**kwargs)
        context['topic'] = Topic.objects.get(slug__exact=self.kwargs['slug'])
        return context


class SrcRSSFeedView(Feed):
    title = "luxagraf:src Code and Technology"
    link = "/src/"
    description = "Latest postings to luxagraf.net/src"
    description_template = 'feeds/blog_description.html'

    def items(self):
        return Post.objects.filter(status__exact=1).order_by('-pub_date')[:10]
'''