blob: 49ff5747ee4fa1692df3a5d56d2eceb337c701eb (
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
|
from utils.views import LuxDetailView
from django.views.generic import DetailView
from locations.models import LuxCheckIn
from posts.models import Post, PostType
from .models import Page, HomePage
class PageDetailView(LuxDetailView):
model = Page
def get_template_names(self):
obj = self.get_object()
return ["pages/%s/%s.html" % (obj.site.name, obj.slug), 'pages/%spage_detail.html'% obj.site.name]
class PageDetailTXTView(LuxDetailView):
model = Page
slug_field = "slug"
def get_template_names(self):
obj = self.get_object()
return 'pages/%spage_detail.txt'% obj.site.display_name
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
|