""" admin announcements """ from django.db import models from django.utils import timezone from .base_model import BookWyrmModel class Announcement(BookWyrmModel): """The admin has something to say""" user = models.ForeignKey("User", on_delete=models.PROTECT) name = models.CharField(max_length=255) preview = models.CharField(max_length=255) content = models.TextField() event_date = models.DateTimeField(blank=True, null=True) start_date = models.DateTimeField(blank=True, null=True) end_date = models.DateTimeField(blank=True, null=True) active = models.BooleanField(default=True) @classmethod def active_announcements(cls): """announcements that should be displayed""" now = timezone.now() return cls.objects.filter(active=True, start_date__lte=now, end_date__gte=now)