diff options
Diffstat (limited to 'app/pages/views.py')
-rw-r--r-- | app/pages/views.py | 24 |
1 files changed, 23 insertions, 1 deletions
diff --git a/app/pages/views.py b/app/pages/views.py index 167ad01..ed8d380 100644 --- a/app/pages/views.py +++ b/app/pages/views.py @@ -1,6 +1,9 @@ from utils.views import LuxDetailView +from django.views.generic import DetailView -from .models import Page +from locations.models import LuxCheckIn +from posts.models import Post, PostType +from .models import Page, HomePage class PageDetailView(LuxDetailView): @@ -15,3 +18,22 @@ class PageDetailTXTView(LuxDetailView): model = Page slug_field = "slug" template_name = "pages/page_detail.txt" + + +class HomePageList(DetailView): + """ + Return a main entry and list of Entries in reverse chronological order + """ + model = HomePage + + def get_template_names(self): + return ["pages/%s.html" % self.template_name, 'pages/homepage.html'] + + def get_context_data(self, **kwargs): + # Call the base implementation first to get a context + context = super(HomePageList, self).get_context_data(**kwargs) + context['object_list'] = Post.objects.filter(post_type=PostType.JRNL).filter(status__exact=1).order_by('-pub_date').exclude().select_related('location').select_related('featured_image')[1:9] + context['location'] = LuxCheckIn.objects.latest() + return context + + |