+    def short_html(self):
+        if len(self._short_html):
+            return mark_safe(self._short_html)
+        else:
+            tags = self.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 self.html_file:
+                formats.append(u'<a href="%s">Czytaj online</a>' % self.html_file.url)
+            if self.pdf_file:
+                formats.append(u'<a href="%s">Plik PDF</a>' % self.pdf_file.url)
+            if self.odt_file:
+                formats.append(u'<a href="%s">Plik ODT</a>' % self.odt_file.url)
+            
+            self._short_html = render_to_string('catalogue/book_short.html',
+                {'book': self, 'tags': tags, 'formats': formats})
+            self.save()
+            return mark_safe(self._short_html)
+