From ee2f98776bb907406b203ec3680b3f659646cd08 Mon Sep 17 00:00:00 2001 From: Iacopo Spalletti Date: Wed, 25 Jan 2017 11:20:06 +0100 Subject: [PATCH] Added featured date to post --- HISTORY.rst | 1 + djangocms_blog/admin.py | 2 +- .../migrations/0027_post_date_featured.py | 20 +++++++++++++++++++ djangocms_blog/models.py | 7 +++++++ .../djangocms_blog/includes/blog_meta.html | 5 +++++ tests/test_models.py | 8 ++++++++ 6 files changed, 42 insertions(+), 1 deletion(-) create mode 100644 djangocms_blog/migrations/0027_post_date_featured.py diff --git a/HISTORY.rst b/HISTORY.rst index 8278ce0..ae2bb88 100644 --- a/HISTORY.rst +++ b/HISTORY.rst @@ -20,6 +20,7 @@ History * Improved category admin to avoid circular relationships. * Dropped strict dependency on aldryn-search, haystack. Install separately for search support. * Improved admin filtering. +* Added featured date to post. ******************* 0.8.10 (2017-01-02) diff --git a/djangocms_blog/admin.py b/djangocms_blog/admin.py index 0f301c2..e6f4555 100755 --- a/djangocms_blog/admin.py +++ b/djangocms_blog/admin.py @@ -90,7 +90,7 @@ class PostAdmin(PlaceholderAdminMixin, FrontendEditableAdminMixin, }), (_('Info'), { 'fields': [['slug', 'tags'], - ['date_published', 'date_published_end'], + ['date_published', 'date_published_end', 'date_featured'], ['enable_comments']], 'classes': ('collapse',) }), diff --git a/djangocms_blog/migrations/0027_post_date_featured.py b/djangocms_blog/migrations/0027_post_date_featured.py new file mode 100644 index 0000000..693b58a --- /dev/null +++ b/djangocms_blog/migrations/0027_post_date_featured.py @@ -0,0 +1,20 @@ +# -*- coding: utf-8 -*- +# Generated by Django 1.10.5 on 2017-01-25 11:15 +from __future__ import unicode_literals + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('djangocms_blog', '0026_merge'), + ] + + operations = [ + migrations.AddField( + model_name='post', + name='date_featured', + field=models.DateTimeField(blank=True, null=True, verbose_name='featured date'), + ), + ] diff --git a/djangocms_blog/models.py b/djangocms_blog/models.py index 6850034..63ab67a 100644 --- a/djangocms_blog/models.py +++ b/djangocms_blog/models.py @@ -142,6 +142,7 @@ class Post(KnockerModel, ModelMeta, TranslatableModel): date_modified = models.DateTimeField(_('last modified'), auto_now=True) date_published = models.DateTimeField(_('published since'), null=True, blank=True) date_published_end = models.DateTimeField(_('published until'), null=True, blank=True) + date_featured = models.DateTimeField(_('featured date'), null=True, blank=True) publish = models.BooleanField(_('publish'), default=False) categories = models.ManyToManyField('djangocms_blog.BlogCategory', verbose_name=_('category'), related_name='blog_posts', blank=True) @@ -237,6 +238,12 @@ class Post(KnockerModel, ModelMeta, TranslatableModel): ) return hashlib.sha256(force_bytes(base_string)).hexdigest() + @property + def date(self): + if self.date_featured: + return self.date_featured + return self.date_published + def save(self, *args, **kwargs): """ Handle some auto configuration during save diff --git a/djangocms_blog/templates/djangocms_blog/includes/blog_meta.html b/djangocms_blog/templates/djangocms_blog/includes/blog_meta.html index 0705dc2..df1e6c5 100644 --- a/djangocms_blog/templates/djangocms_blog/includes/blog_meta.html +++ b/djangocms_blog/templates/djangocms_blog/includes/blog_meta.html @@ -9,6 +9,11 @@
  • {{ post.date_published|date:"DATE_FORMAT" }}
  • + {% if post.date_featured %} +
  • + {{ post.date_featured|date:"DATE_FORMAT" }} +
  • + {% endif %}