7
This repository has been archived on 2023-05-07. You can view files and clone it, but cannot push or open issues or pull requests.
Files
cavemanon-wagtail-personali…/src/wagtail_personalisation/receivers.py
2017-05-31 14:48:46 +02:00

25 lines
797 B
Python

from django.db.models.signals import pre_save
from django.utils import timezone
from wagtail_personalisation.models import Segment
def check_status_change(sender, instance, *args, **kwargs):
"""Check if the status has changed. Alter dates accordingly."""
try:
original_status = sender.objects.get(pk=instance.id).status
except sender.DoesNotExist:
original_status = ""
if original_status != instance.status:
if instance.status == instance.STATUS_ENABLED:
instance.enable_date = timezone.now()
instance.visit_count = 0
return instance
if instance.status == instance.STATUS_DISABLED:
instance.disable_date = timezone.now()
def register():
pre_save.connect(check_status_change, sender=Segment)