diff options
author | lxf <sng@luxagraf.net> | 2025-05-31 11:37:22 -0500 |
---|---|---|
committer | lxf <sng@luxagraf.net> | 2025-05-31 11:37:22 -0500 |
commit | e2b3a335e3984931f1343cb6be8db53a8a1304ab (patch) | |
tree | 4c31dcb9e55487858dbb939f3fc53afd153eeb5c /app | |
parent | e0bd735f74c327f1c6f0abccc431b35a270fb8eb (diff) |
condensed everything into jrnl. need to clean up
Diffstat (limited to 'app')
-rw-r--r-- | app/media/utils.py | 2 | ||||
-rw-r--r-- | app/posts/build.py | 4 | ||||
-rw-r--r-- | app/posts/models.py | 3 | ||||
-rw-r--r-- | app/posts/urls/jrnl_urls.py | 5 | ||||
-rw-r--r-- | app/posts/views/jrnl_views.py | 21 |
5 files changed, 30 insertions, 5 deletions
diff --git a/app/media/utils.py b/app/media/utils.py index 893663c..0a5a8ea 100644 --- a/app/media/utils.py +++ b/app/media/utils.py @@ -23,4 +23,4 @@ def resize_image(img, width=None, height=None, quality=72, filepath=""): newimg = resizeimage.resize_height(img, height) ImageFile.MAXBLOCK = img.size[0] * img.size[1] * 4 newimg.save(filepath, newimg.format, quality=quality) - subprocess.call(["jpegoptim", "%s" % filepath]) + #subprocess.call(["jpegoptim", "%s" % filepath]) diff --git a/app/posts/build.py b/app/posts/build.py index ba0fe27..5c8b8f2 100644 --- a/app/posts/build.py +++ b/app/posts/build.py @@ -4,6 +4,7 @@ from django.apps import apps from builder.base import BuildNew from itertools import chain +from django.db.models import Q from django.conf import settings from .models import PostType, PostTopic @@ -55,7 +56,7 @@ class BuildJrnl(BuildNew): Write jrnl to disk ''' def get_model_queryset(self): - return self.model.objects.filter(post_type=PostType.JRNL).filter(status__exact=1).order_by('-pub_date') + return self.model.objects.filter(Q(post_type=PostType.JRNL)|Q(post_type=PostType.ESSAY)).filter(status__exact=1).order_by('-pub_date') def build(self): self.build_list_view( @@ -65,6 +66,7 @@ class BuildJrnl(BuildNew): self.build_year_view("jrnl:list_year") self.build_month_view("jrnl:list_month") self.build_detail_view() + self.build_detail_view() self.build_location_view() self.build_latest() diff --git a/app/posts/models.py b/app/posts/models.py index ba578b8..94adf6c 100644 --- a/app/posts/models.py +++ b/app/posts/models.py @@ -138,7 +138,8 @@ class Post(models.Model): if self.post_type == PostType.PHOTO_ESSAY: return reverse('photo_essay:detail', kwargs={"slug": self.slug}) if self.post_type == PostType.ESSAY: - return reverse('essays:detail', kwargs={"cat": self.get_post_topic_display(), "slug": self.slug}) + #return reverse('essays:detail', kwargs={"cat": self.get_post_topic_display(), "slug": self.slug}) + return reverse('jrnl:essay', kwargs={"slug": self.slug,}) if self.post_type == PostType.SRC: return reverse('src:detail', kwargs={"slug": self.slug}) if self.post_type == PostType.FIELD_NOTE: diff --git a/app/posts/urls/jrnl_urls.py b/app/posts/urls/jrnl_urls.py index d7f0fb1..11685b0 100644 --- a/app/posts/urls/jrnl_urls.py +++ b/app/posts/urls/jrnl_urls.py @@ -36,6 +36,11 @@ urlpatterns = [ name="list" ), path( + r'<str:slug>', + views.JrnlEssayView.as_view(), + name="essay" + ), + path( r'latest/', views.JrnlLatestView.as_view(), name="latest" diff --git a/app/posts/views/jrnl_views.py b/app/posts/views/jrnl_views.py index a7d9f1c..bd22343 100644 --- a/app/posts/views/jrnl_views.py +++ b/app/posts/views/jrnl_views.py @@ -24,7 +24,7 @@ class JrnlListView(PaginatedListView): """ model = Post template_name = "posts/jrnl_list.html" - queryset = Post.objects.filter(post_type=PostType.JRNL).filter(status__exact=1).order_by('-pub_date').prefetch_related('location').prefetch_related('featured_image') + queryset = Post.objects.filter(Q(post_type=PostType.JRNL)|Q(post_type=PostType.ESSAY)).filter(status__exact=1).order_by('-pub_date').prefetch_related('location').prefetch_related('featured_image') def get_context_data(self, **kwargs): context = super(JrnlListView, self).get_context_data(**kwargs) @@ -87,6 +87,23 @@ class JrnlMonthArchiveView(MonthArchiveView): template_name = "posts/jrnl_date.html" +class JrnlEssayView(DetailView): + model = Post + slug_field = "slug" + template_name = "posts/jrnl_detail.html" + + def get_context_data(self, **kwargs): + context = super(JrnlEssayView, self).get_context_data(**kwargs) + related = [] + for obj in self.object.related.all(): + model = apps.get_model(obj.model_name.app_label, obj.model_name.model) + related.append(model.objects.get(slug=obj.slug, pub_date=obj.pub_date)) + context['related'] = related + context['breadcrumbs'] = ("jrnl",) + context['crumb_url'] = '/jrnl/' + return context + + class JrnlDetailView(DateDetailView): model = Post date_field = 'pub_date' @@ -147,7 +164,7 @@ class JrnlRSSFeedView(Feed): description_template = 'feeds/blog_description.html' def items(self): - return Post.objects.filter(status__exact=1).filter(post_type__in=[PostType.JRNL]).order_by('-pub_date')[:10] + return Post.objects.filter(status__exact=1).filter(post_type__in=[PostType.JRNL,PostType.ESSAY]).order_by('-pub_date')[:10] def item_pubdate(self, item): """ |