More work on new HTML reader.
[wolnelektury.git] / apps / catalogue / templatetags / catalogue_tags.py
index 6a30a9c..4df9f7b 100644 (file)
@@ -14,9 +14,9 @@ from django.core.urlresolvers import reverse
 from django.contrib.auth.forms import UserCreationForm, AuthenticationForm
 from django.utils.translation import ugettext as _
 
-from catalogue.utils import split_tags
+from catalogue.utils import split_tags, related_tag_name as _related_tag_name
 from catalogue.models import Book, BookMedia, Fragment, Tag
-from catalogue.constants import LICENSES
+from catalogue.constants import LICENSES, LANGUAGES_3TO2
 
 register = template.Library()
 
@@ -335,6 +335,7 @@ def book_wide(context, book):
         'hide_about': hide_about,
         'themes': book_themes,
         'request': context.get('request'),
+        'show_lang': book.language_code() != settings.LANGUAGE_CODE,
     }
 
 
@@ -345,16 +346,19 @@ def book_short(context, book):
         'main_link': book.get_absolute_url(),
         'related': book.related_info(),
         'request': context.get('request'),
+        'show_lang': book.language_code() != settings.LANGUAGE_CODE,
     }
 
 
 @register.inclusion_tag('catalogue/book_mini_box.html')
-def book_mini(book):
-    author_str = ", ".join(name
-        for name, url in book.related_info()['tags']['author'])
+def book_mini(book, with_link=True):
+    author_str = ", ".join(related_tag_name(tag)
+        for tag in book.related_info()['tags'].get('author', ()))
     return {
         'book': book,
         'author_str': author_str,
+        'with_link': with_link,
+        'show_lang': book.language_code() != settings.LANGUAGE_CODE,
     }
 
 
@@ -463,3 +467,8 @@ def license_icon(license_url):
         "icon": "img/licenses/%s.png" % known['icon'],
         "license_description": known['description'],
     }
+
+
+@register.simple_tag
+def related_tag_name(tag, lang=None):
+    return _related_tag_name(tag, lang)