Moving forward.
[wolnelektury.git] / src / catalogue / templatetags / catalogue_tags.py
index b45fc50..67ba553 100644 (file)
@@ -424,7 +424,18 @@ def related_books_2022(book=None, picture=None, limit=4, taken=0):
     books = Book.tagged.related_to(instance, books_qs)[:max_books]
 
     return books
-    
+
+@register.simple_tag
+def related_pictures_2022(book=None, picture=None, limit=4, taken=0):
+    limit -= taken
+    max_books = limit
+
+    books_qs = Picture.objects.all()
+    instance = book or picture
+    books = Picture.tagged.related_to(instance, books_qs)[:max_books]
+
+    return books
+
 
 @register.simple_tag
 def download_audio(book, daisy=True, mp3=True):
@@ -550,6 +561,8 @@ def content_warning(book):
 @register.inclusion_tag('catalogue/preview_ad.html', takes_context=True)
 def preview_ad(context):
     book = Book.objects.filter(parent=None, preview=True).first()
+    if book is None:
+        return {}
     return {
         'accessible': book.is_accessible_to(context['request'].user),
         'book': book,
@@ -558,6 +571,8 @@ def preview_ad(context):
 @register.inclusion_tag('catalogue/preview_ad_homepage.html', takes_context=True)
 def preview_ad_homepage(context):
     book = Book.objects.filter(parent=None, preview=True).first()
+    if book is None:
+        return {}
     return {
         'accessible': book.is_accessible_to(context['request'].user),
         'book': book,