diff --git a/webapp/views.py b/webapp/views.py index 84d8e0c..f882b53 100644 --- a/webapp/views.py +++ b/webapp/views.py @@ -67,10 +67,11 @@ class FeedViewSet(ModelViewSet): # Soft deleted objects can be edited (and completely deleted) via Django admin (for superadmins) return Feed.objects.filter(deleted=False).order_by("-publishAt") + now = timezone.now() # Hide deleted and unpublished objects... - query = Q(deleted=False, isPublished=True) + query = Q(deleted=False, isPublished=True, publishAt__lte=now) # and hide objects that are automatically unpublished - hideQuery = Q(autoUnpublish=False) | Q(unpublishAt__gt=timezone.now()) + hideQuery = Q(autoUnpublish=False) | Q(unpublishAt__gt=now) query.add(hideQuery, Q.AND) return Feed.objects.filter(query).order_by("-publishAt") @@ -105,8 +106,9 @@ class EventViewSet(ModelViewSet): ) ) + now = timezone.now() # Hide deleted and unpublished objects... - query = Q(deleted=False, isPublished=True) + query = Q(deleted=False, isPublished=True, publishAt__lte=now) # and hide objects that are automatically unpublished hideQuery = Q(autoUnpublish=False) | Q(unpublishAt__gt=timezone.now()) query.add(hideQuery, Q.AND) @@ -115,7 +117,7 @@ class EventViewSet(ModelViewSet): if since: query.add(Q(end_time__gt=since), Q.AND) else: - query.add(Q(end_time__gt=timezone.now()), Q.AND) + query.add(Q(end_time__gt=now), Q.AND) return Event.objects.filter(query).prefetch_related( Prefetch( @@ -158,7 +160,8 @@ class JobAdViewSet(ModelViewSet): if self.request.user.is_authenticated: return JobAd.objects.filter(deleted=False).order_by("-publishAt") - query = Q(deleted=False, isPublished=True) + now = timezone.now() + query = Q(deleted=False, isPublished=True, publishAt__lte=now) hideQuery = Q(autoUnpublish=False) | Q(unpublishAt__gt=timezone.now()) query.add(hideQuery, Q.AND) return JobAd.objects.filter(query).order_by("-publishAt")