diff options
author | luxagraf <sng@luxagraf> | 2021-01-15 16:36:00 -0500 |
---|---|---|
committer | luxagraf <sng@luxagraf> | 2021-01-15 16:36:00 -0500 |
commit | 776712e1288138f546d105ab621523a2c632638a (patch) | |
tree | 8215fb8e6d024f6f1b1b92bf962334ea61753fd0 /app/utils | |
parent | 47b79fd9d4329e73cef7929ed8f64d9eeb287ae5 (diff) |
proj: updated several views to use utils.LuxDetailView
This allows for a single breadcrumbs template, consolidating code
Diffstat (limited to 'app/utils')
-rw-r--r-- | app/utils/views.py | 25 |
1 files changed, 18 insertions, 7 deletions
diff --git a/app/utils/views.py b/app/utils/views.py index 71163ce..f1e947a 100644 --- a/app/utils/views.py +++ b/app/utils/views.py @@ -13,10 +13,12 @@ from recordings.models import Audio BREADCRUMBS = { 'SrcPost':'SRC', + 'AP':'dialogue', 'Book':'Book Notes', 'Entry':'Jrnl', 'NewsletterMailing':'lttr', - 'LuxImage':'lttr' + 'LuxImage':'lttr', + 'Sighting':'dialogue' } class PaginatedListView(ListView): @@ -62,10 +64,13 @@ class LuxDetailView(DetailView): context = super(LuxDetailView, self).get_context_data(**kwargs) print(self.object._meta.verbose_name_plural) try: - context['breadcrumbs'] = (BREADCRUMBS[self.object._meta.model],) + context['breadcrumbs'] = (BREADCRUMBS[self.object._meta.label.split(".")[1]],) except KeyError: if self.object._meta.verbose_name_plural == 'posts': - context['breadcrumbs'] = (self.object.get_post_type_display()+"s",) + if self.object.get_post_type_display() != 'src': + context['breadcrumbs'] = (self.object.get_post_type_display()+"s",) + else: + context['breadcrumbs'] = (self.object.get_post_type_display(),) context['crumb_url'] = "/%ss/" % self.object.get_post_type_display() else: context['breadcrumbs'] = (self.object._meta.verbose_name_plural,) @@ -73,11 +78,17 @@ class LuxDetailView(DetailView): context['crumb_url'] except KeyError: try: - context['crumb_url'] = reverse('%s:list' % self.object._meta.verbose_name_plural.slugify()) + context['crumb_url'] = reverse('%s:list' % slugify(self.object._meta.verbose_name_plural)) except: - # special case for pages: - context['breadcrumbs'] = (self.object.title,) - context['crumb_url'] = None + # special case for books: + if self.object._meta.verbose_name_plural == 'books': + context['crumb_url'] = reverse('books:list') + elif self.object._meta.verbose_name_plural == 'Animal/Plant': + context['crumb_url'] = reverse('sightings:list') + else: + # special case for pages: + context['breadcrumbs'] = (self.object.title,) + context['crumb_url'] = None return context |