Skip to content

Commit 4e4fa99

Browse files
committed
make datepublisher save aware datetimes
1 parent b5d08a4 commit 4e4fa99

1 file changed

Lines changed: 8 additions & 4 deletions

File tree

feincms/module/extensions/datepublisher.py

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -42,13 +42,16 @@ def granular_now(n=None):
4242
"""
4343
if n is None:
4444
n = timezone.now()
45-
return datetime(n.year, n.month, n.day, n.hour, (n.minute // 5) * 5)
45+
return timezone.make_aware(datetime(n.year, n.month, n.day, n.hour,
46+
(n.minute // 5) * 5), n.tzinfo)
4647

4748
# ------------------------------------------------------------------------
4849
def register(cls, admin_cls):
49-
cls.add_to_class('publication_date', models.DateTimeField(_('publication date'),
50+
cls.add_to_class('publication_date',
51+
models.DateTimeField(_('publication date'),
5052
default=granular_now))
51-
cls.add_to_class('publication_end_date', models.DateTimeField(_('publication end date'),
53+
cls.add_to_class('publication_end_date',
54+
models.DateTimeField(_('publication end date'),
5255
blank=True, null=True,
5356
help_text=_('Leave empty if the entry should stay active forever.')))
5457
cls.add_to_class('latest_children', latest_children)
@@ -68,7 +71,8 @@ def granular_save(obj, *args, **kwargs):
6871
if hasattr(cls._default_manager, 'add_to_active_filters'):
6972
cls._default_manager.add_to_active_filters(
7073
Q(publication_date__lte=granular_now) &
71-
(Q(publication_end_date__isnull=True) | Q(publication_end_date__gt=granular_now)),
74+
(Q(publication_end_date__isnull=True) |
75+
Q(publication_end_date__gt=granular_now)),
7276
key='datepublisher')
7377

7478
def datepublisher_admin(self, page):

0 commit comments

Comments
 (0)