annotate potd/signals.py @ 628:c6292e46e617

For local testing, set wiki cookie domain to None.
author Brian Neal <bgneal@gmail.com>
date Mon, 12 Nov 2012 16:40:54 -0600
parents ee87ea74d46b
children
rev   line source
bgneal@532 1 """
bgneal@532 2 Signal handlers for the potd application.
bgneal@532 3
bgneal@532 4 """
bgneal@532 5 from django.db.models.signals import post_save, post_delete
bgneal@532 6
bgneal@532 7 from potd.models import Photo, Sequence
bgneal@532 8
bgneal@532 9
bgneal@532 10 def on_photo_save(sender, **kwargs):
bgneal@532 11 """
bgneal@532 12 This function is executed when a Photo is saved. It inserts the photo into
bgneal@532 13 the current sequence.
bgneal@532 14
bgneal@532 15 """
bgneal@532 16 photo = kwargs['instance']
bgneal@532 17 Sequence.objects.insert_photo(photo.pk)
bgneal@532 18
bgneal@532 19
bgneal@532 20 def on_photo_delete(sender, **kwargs):
bgneal@532 21 """
bgneal@532 22 This function is executed when a Photo is deleted. It removes the photo from
bgneal@532 23 the current sequence of photos.
bgneal@532 24
bgneal@532 25 """
bgneal@532 26 photo = kwargs['instance']
bgneal@532 27 Sequence.objects.remove_photo(photo.pk)
bgneal@532 28
bgneal@532 29
bgneal@532 30 post_save.connect(on_photo_save, sender=Photo, dispatch_uid='potd.signals')
bgneal@532 31 post_delete.connect(on_photo_delete, sender=Photo, dispatch_uid='potd.signals')