def mark_seen(self, request): """Mark community feed as seen""" self.check_permissions(request) meta, _ = CommunityFeedMeta.objects.update_or_create( {'marked_at': timezone.now()}, user=request.user) serializer = CommunityFeedMetaSerializer(meta) return Response(serializer.data)
def community_feed_meta_saved(sender, instance, **kwargs): meta = instance payload = CommunityFeedMetaSerializer(meta).data for subscription in ChannelSubscription.objects.recent().filter( user=meta.user): send_in_channel(subscription.reply_channel, topic='community_feed:meta', payload=payload)
def list(self, request, *args, **kwargs): meta, _ = CommunityFeedMeta.objects.get_or_create(user=request.user) serializer = CommunityFeedMetaSerializer( meta, context=self.get_serializer_context()) return Response(serializer.data)