mirror of
https://github.com/bookwyrm-social/bookwyrm.git
synced 2024-09-27 14:00:21 +00:00
25 lines
815 B
Python
25 lines
815 B
Python
""" template filters for list page """
|
|
from django import template
|
|
from django.utils.translation import gettext_lazy as _, ngettext
|
|
|
|
from bookwyrm import models
|
|
|
|
|
|
register = template.Library()
|
|
|
|
|
|
@register.filter(name="opengraph_title")
|
|
def get_opengraph_title(book_list: models.List) -> str:
|
|
"""Construct title for Open Graph"""
|
|
return _("Book List: %(name)s") % {"name": book_list.name}
|
|
|
|
|
|
@register.filter(name="opengraph_description")
|
|
def get_opengraph_description(book_list: models.List) -> str:
|
|
"""Construct description for Open Graph"""
|
|
num_books = book_list.books.all().count()
|
|
num_books_str = ngettext(
|
|
"%(num)d book - by %(user)s", "%(num)d books - by %(user)s", num_books
|
|
) % {"num": num_books, "user": book_list.user}
|
|
|
|
return f"{book_list.description} {num_books_str}"
|