X-Git-Url: https://git.mdrn.pl/wolnelektury.git/blobdiff_plain/ae60b2a3949e96357477cc04f90fd0873cee8a92..6f243b8bce43513bfbde89071868c688beb8bc9a:/src/catalogue/signals.py?ds=sidebyside
diff --git a/src/catalogue/signals.py b/src/catalogue/signals.py
index 3adfedbb0..28d84bece 100644
--- a/src/catalogue/signals.py
+++ b/src/catalogue/signals.py
@@ -4,6 +4,7 @@
#
from django.conf import settings
from django.core.cache import caches
+from django.core.exceptions import ImproperlyConfigured
from django.db.models.signals import post_save, post_delete
from django.dispatch import receiver
from ssify import flush_ssi_includes
@@ -19,6 +20,7 @@ from .models import BookMedia, Book, Collection, Fragment, Tag
@receiver([post_save, post_delete], sender=BookMedia)
def bookmedia_save(sender, instance, **kwargs):
+ instance.book.set_audio_length()
instance.book.save()
@@ -50,6 +52,11 @@ def collection_delete(sender, instance, **kwargs):
def book_save(sender, instance, **kwargs):
# Books come out anywhere.
caches[settings.CACHE_MIDDLEWARE_ALIAS].clear()
+ # deleting selectively is too much work
+ try:
+ caches['template_fragments'].clear()
+ except ImproperlyConfigured:
+ pass
instance.flush_includes()