Merge master into img-playground. Image support with new management features. Missing...
[redakcja.git] / apps / catalogue / models / listeners.py
index 7848974..de1387e 100755 (executable)
@@ -5,7 +5,7 @@
 #
 from django.contrib.auth.models import User
 from django.db import models
-from catalogue.models import Book, Chunk
+from catalogue.models import Book, Chunk, Image
 from catalogue.signals import post_publish
 from dvcs.signals import post_publishable
 
@@ -23,6 +23,11 @@ def chunk_changed(sender, instance, created, **kwargs):
 models.signals.post_save.connect(chunk_changed, sender=Chunk)
 
 
+def image_changed(sender, instance, created, **kwargs):
+    instance.touch()
+models.signals.post_save.connect(image_changed, sender=Image)
+
+
 def user_changed(sender, instance, *args, **kwargs):
     books = set()
     for c in instance.chunk_set.all():
@@ -40,9 +45,14 @@ def publish_listener(sender, *args, **kwargs):
 post_publish.connect(publish_listener)
 
 
+def publishable_listener(sender, *args, **kwargs):
+    sender.tree.touch()
+    sender.tree.book.touch()
+post_publishable.connect(publishable_listener)
+
+
 def listener_create(sender, instance, created, **kwargs):
     if created:
         instance.chunk_set.create(number=1, slug='1')
 models.signals.post_save.connect(listener_create, sender=Book)
 
-