from django.utils.encoding import smart_str
from django.core.urlresolvers import reverse
from django.contrib.auth.forms import UserCreationForm, AuthenticationForm
+from django.db.models import Q
register = template.Library()
return context
+@register.inclusion_tag('catalogue/_book.html')
+def book(book):
+ tags = book.tags.filter(~Q(category__in=('set', 'theme')))
+ tags = [u'<a href="%s">%s</a>' % (tag.get_absolute_url(), tag.name) for tag in tags]
+
+ formats = []
+ if book.html_file:
+ formats.append(u'<a href="%s">Czytaj online</a>' % book.html_file.url)
+ if book.pdf_file:
+ formats.append(u'<a href="%s">Plik PDF</a>' % book.pdf_file.url)
+ if book.odt_file:
+ formats.append(u'<a href="%s">Plik ODT</a>' % book.odt_file.url)
+
+ return {'book': book, 'tags': tags, 'formats': formats}
+
+
@register.tag
def catalogue_url(parser, token):
bits = token.split_contents()
<div class="book-thumbnail"></div>
<div class="book-description">
<h2><a href="{{ book.get_absolute_url }}">{{ book.title }}</a></h2>
- <p style="margin: 0">Formaty:
- <a href="#">Czytaj online</a>
- {% if book.pdf_file %}
- <a href="{{ book.pdf_file.url }}">Pobierz plik PDF</a>
- {% endif %}
- {% if book.odt_file %}
- <a href="{{ book.odt_file.url }}">ODT</a>
- {% endif %}
- {% if book.html_file %}
- <a href="{{ book.html_file.url }}">Pobierz plik HTML</a>
- {% endif %}
- </p>
- <p style="margin: 0">Utwór w kategoriach:
- {% for tag in book.tags %}
- {% ifnotequal tag.category "set" %}
- <a href="{{ tag.get_absolute_url }}">{{ tag }}</a>{% if not forloop.last %},{% endif %}
- {% endifnotequal %}
- {% endfor %}
- </p>
+ <p style="margin: 0">Formaty: {{ formats|join:", "|safe }}</p>
+ <p style="margin: 0">Utwór w kategoriach: {{ tags|join:", "|safe }}</p>
</div>
</div>
\ No newline at end of file