Merge pull request #833 from mouse-reeve/all-books-view

Adds "all books" view
This commit is contained in:
Mouse Reeve 2021-03-31 11:03:35 -07:00 committed by GitHub
commit 2d95f9c1f5
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
9 changed files with 178 additions and 150 deletions

View file

@ -20,10 +20,13 @@
<div class="column"> <div class="column">
<div class="tabs"> <div class="tabs">
<ul> <ul>
<li class="{% if shelf.identifier == 'all' %}is-active{% endif %}">
<a href="{% url 'user-shelves' user|username %}"{% if shelf.identifier == 'all' %} aria-current="page"{% endif %}>{% trans "All books" %}</a>
</li>
{% for shelf_tab in shelves %} {% for shelf_tab in shelves %}
<li class="{% if shelf_tab.identifier == shelf.identifier %}is-active{% endif %}"> <li class="{% if shelf_tab.identifier == shelf.identifier %}is-active{% endif %}">
<a href="{{ shelf_tab.local_path }}"{% if shelf_tab.identifier == shelf.identifier %} aria-current="page"{% endif %}>{% if shelf_tab.identifier == 'to-read' %}{% trans "To Read" %}{% elif shelf_tab.identifier == 'reading' %}{% trans "Currently Reading" %}{% elif shelf_tab.identifier == 'read' %}{% trans "Read" %}{% else %}{{ shelf_tab.name }}{% endif %}</a> <a href="{{ shelf_tab.local_path }}"{% if shelf_tab.identifier == shelf.identifier %} aria-current="page"{% endif %}>{% if shelf_tab.identifier == 'to-read' %}{% trans "To Read" %}{% elif shelf_tab.identifier == 'reading' %}{% trans "Currently Reading" %}{% elif shelf_tab.identifier == 'read' %}{% trans "Read" %}{% else %}{{ shelf_tab.name }}{% endif %}</a>
</li> </li>
{% endfor %} {% endfor %}
</ul> </ul>
</div> </div>
@ -50,7 +53,7 @@
</span> </span>
</h2> </h2>
</div> </div>
{% if is_self %} {% if is_self and shelf.id %}
<div class="column is-narrow"> <div class="column is-narrow">
{% trans "Edit shelf" as button_text %} {% trans "Edit shelf" as button_text %}
{% include 'snippets/toggle/open_button.html' with text=button_text icon="pencil" controls_text="edit-shelf-form" focus="edit-shelf-form-header" %} {% include 'snippets/toggle/open_button.html' with text=button_text icon="pencil" controls_text="edit-shelf-form" focus="edit-shelf-form-header" %}
@ -81,7 +84,6 @@
{% endif %} {% endif %}
</tr> </tr>
{% for book in books %} {% for book in books %}
{% with book=book.book %}
<tr class="book-preview"> <tr class="book-preview">
<td> <td>
<a href="{{ book.local_path }}">{% include 'snippets/book_cover.html' with book=book size="small" %}</a> <a href="{{ book.local_path }}">{% include 'snippets/book_cover.html' with book=book size="small" %}</a>
@ -113,13 +115,12 @@
</td> </td>
{% endif %} {% endif %}
</tr> </tr>
{% endwith %}
{% endfor %} {% endfor %}
</table> </table>
</div> </div>
{% else %} {% else %}
<p>{% trans "This shelf is empty." %}</p> <p>{% trans "This shelf is empty." %}</p>
{% if shelf.editable %} {% if shelf.id and shelf.editable %}
<form name="delete-shelf" action="/delete-shelf/{{ shelf.id }}" method="post"> <form name="delete-shelf" action="/delete-shelf/{{ shelf.id }}" method="post">
{% csrf_token %} {% csrf_token %}
<input type="hidden" name="user" value="{{ request.user.id }}"> <input type="hidden" name="user" value="{{ request.user.id }}">

View file

@ -151,8 +151,8 @@ urlpatterns = [
re_path( re_path(
r"^list/(?P<list_id>\d+)/curate/?$", views.Curate.as_view(), name="list-curate" r"^list/(?P<list_id>\d+)/curate/?$", views.Curate.as_view(), name="list-curate"
), ),
# shelf # Uyser books
re_path(r"%s/books/?$" % user_path, views.user_shelves_page, name="user-shelves"), re_path(r"%s/books/?$" % user_path, views.Shelf.as_view(), name="user-shelves"),
re_path( re_path(
r"^%s/(helf|books)/(?P<shelf_identifier>[\w-]+)(.json)?/?$" % user_path, r"^%s/(helf|books)/(?P<shelf_identifier>[\w-]+)(.json)?/?$" % user_path,
views.Shelf.as_view(), views.Shelf.as_view(),

View file

@ -27,7 +27,7 @@ from .rss_feed import RssFeed
from .password import PasswordResetRequest, PasswordReset, ChangePassword from .password import PasswordResetRequest, PasswordReset, ChangePassword
from .search import Search from .search import Search
from .shelf import Shelf from .shelf import Shelf
from .shelf import user_shelves_page, create_shelf, delete_shelf from .shelf import create_shelf, delete_shelf
from .shelf import shelve, unshelve from .shelf import shelve, unshelve
from .site import Site from .site import Site
from .status import CreateStatus, DeleteStatus from .status import CreateStatus, DeleteStatus

View file

@ -1,4 +1,6 @@
""" shelf views""" """ shelf views"""
from collections import namedtuple
from django.db import IntegrityError from django.db import IntegrityError
from django.contrib.auth.decorators import login_required from django.contrib.auth.decorators import login_required
from django.core.paginator import Paginator from django.core.paginator import Paginator
@ -6,6 +8,7 @@ from django.http import HttpResponseBadRequest, HttpResponseNotFound
from django.shortcuts import get_object_or_404, redirect from django.shortcuts import get_object_or_404, redirect
from django.template.response import TemplateResponse from django.template.response import TemplateResponse
from django.utils.decorators import method_decorator from django.utils.decorators import method_decorator
from django.utils.translation import gettext as _
from django.views import View from django.views import View
from django.views.decorators.http import require_POST from django.views.decorators.http import require_POST
@ -13,14 +16,14 @@ from bookwyrm import forms, models
from bookwyrm.activitypub import ActivitypubResponse from bookwyrm.activitypub import ActivitypubResponse
from bookwyrm.settings import PAGE_LENGTH from bookwyrm.settings import PAGE_LENGTH
from .helpers import is_api_request, get_edition, get_user_from_username from .helpers import is_api_request, get_edition, get_user_from_username
from .helpers import handle_reading_status from .helpers import handle_reading_status, privacy_filter, object_visible_to_user
# pylint: disable= no-self-use # pylint: disable= no-self-use
class Shelf(View): class Shelf(View):
""" shelf page """ """ shelf page """
def get(self, request, username, shelf_identifier): def get(self, request, username, shelf_identifier=None):
""" display a shelf """ """ display a shelf """
try: try:
user = get_user_from_username(request.user, username) user = get_user_from_username(request.user, username)
@ -32,35 +35,30 @@ class Shelf(View):
except ValueError: except ValueError:
page = 1 page = 1
shelves = privacy_filter(request.user, user.shelf_set)
# get the shelf and make sure the logged in user should be able to see it
if shelf_identifier: if shelf_identifier:
shelf = user.shelf_set.get(identifier=shelf_identifier) shelf = user.shelf_set.get(identifier=shelf_identifier)
if not object_visible_to_user(request.user, shelf):
return HttpResponseNotFound()
# this is a constructed "all books" view, with a fake "shelf" obj
else: else:
shelf = user.shelf_set.first() FakeShelf = namedtuple(
"Shelf", ("identifier", "name", "user", "books", "privacy")
)
books = models.Edition.objects.filter(
shelfbook__shelf__in=shelves.all()
).distinct()
shelf = FakeShelf("all", _("All books"), user, books, "public")
is_self = request.user == user is_self = request.user == user
shelves = user.shelf_set
if not is_self:
follower = user.followers.filter(id=request.user.id).exists()
# make sure the user has permission to view the shelf
if shelf.privacy == "direct" or (
shelf.privacy == "followers" and not follower
):
return HttpResponseNotFound()
# only show other shelves that should be visible
if follower:
shelves = shelves.filter(privacy__in=["public", "followers"])
else:
shelves = shelves.filter(privacy="public")
if is_api_request(request): if is_api_request(request):
return ActivitypubResponse(shelf.to_activity(**request.GET)) return ActivitypubResponse(shelf.to_activity(**request.GET))
paginated = Paginator( paginated = Paginator(
models.ShelfBook.objects.filter(user=user, shelf=shelf) shelf.books.order_by("-updated_date").all(),
.order_by("-updated_date")
.all(),
PAGE_LENGTH, PAGE_LENGTH,
) )
@ -95,11 +93,6 @@ class Shelf(View):
return redirect(shelf.local_path) return redirect(shelf.local_path)
def user_shelves_page(request, username):
""" default shelf """
return Shelf.as_view()(request, username, None)
@login_required @login_required
@require_POST @require_POST
def create_shelf(request): def create_shelf(request):
@ -176,7 +169,8 @@ def shelve(request):
models.ShelfBook.objects.create( models.ShelfBook.objects.create(
book=book, shelf=desired_shelf, user=request.user book=book, shelf=desired_shelf, user=request.user
) )
# The book is already on this shelf. Might be good to alert, or reject the action? # The book is already on this shelf.
# Might be good to alert, or reject the action?
except IntegrityError: except IntegrityError:
pass pass
return redirect(request.headers.get("Referer", "/")) return redirect(request.headers.get("Referer", "/"))

View file

@ -8,7 +8,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: 0.0.1\n" "Project-Id-Version: 0.0.1\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-03-31 09:22-0700\n" "POT-Creation-Date: 2021-03-31 10:36-0700\n"
"PO-Revision-Date: 2021-03-02 17:19-0800\n" "PO-Revision-Date: 2021-03-02 17:19-0800\n"
"Last-Translator: Mouse Reeve <mousereeve@riseup.net>\n" "Last-Translator: Mouse Reeve <mousereeve@riseup.net>\n"
"Language-Team: English <LL@li.org>\n" "Language-Team: English <LL@li.org>\n"
@ -418,7 +418,7 @@ msgid "John Doe, Jane Smith"
msgstr "" msgstr ""
#: bookwyrm/templates/book/edit_book.html:155 #: bookwyrm/templates/book/edit_book.html:155
#: bookwyrm/templates/user/shelf.html:72 #: bookwyrm/templates/user/shelf.html:75
msgid "Cover" msgid "Cover"
msgstr "" msgstr ""
@ -860,14 +860,14 @@ msgid "There are no books here right now! Try searching for a book to get starte
msgstr "Hier sind noch keine Bücher! Versuche nach Büchern zu suchen um loszulegen" msgstr "Hier sind noch keine Bücher! Versuche nach Büchern zu suchen um loszulegen"
#: bookwyrm/templates/feed/feed_layout.html:23 #: bookwyrm/templates/feed/feed_layout.html:23
#: bookwyrm/templates/user/shelf.html:25 #: bookwyrm/templates/user/shelf.html:28
#, fuzzy #, fuzzy
#| msgid "Read" #| msgid "Read"
msgid "To Read" msgid "To Read"
msgstr "Auf der Leseliste" msgstr "Auf der Leseliste"
#: bookwyrm/templates/feed/feed_layout.html:24 #: bookwyrm/templates/feed/feed_layout.html:24
#: bookwyrm/templates/user/shelf.html:25 #: bookwyrm/templates/user/shelf.html:28
#, fuzzy #, fuzzy
#| msgid "Start reading" #| msgid "Start reading"
msgid "Currently Reading" msgid "Currently Reading"
@ -875,7 +875,7 @@ msgstr "Gerade lesend"
#: bookwyrm/templates/feed/feed_layout.html:25 #: bookwyrm/templates/feed/feed_layout.html:25
#: bookwyrm/templates/snippets/shelve_button/shelve_button_options.html:11 #: bookwyrm/templates/snippets/shelve_button/shelve_button_options.html:11
#: bookwyrm/templates/user/shelf.html:25 #: bookwyrm/templates/user/shelf.html:28
msgid "Read" msgid "Read"
msgstr "Gelesen" msgstr "Gelesen"
@ -1003,12 +1003,12 @@ msgstr "Buch"
#: bookwyrm/templates/import_status.html:115 #: bookwyrm/templates/import_status.html:115
#: bookwyrm/templates/snippets/create_status_form.html:10 #: bookwyrm/templates/snippets/create_status_form.html:10
#: bookwyrm/templates/user/shelf.html:73 #: bookwyrm/templates/user/shelf.html:76
msgid "Title" msgid "Title"
msgstr "Titel" msgstr "Titel"
#: bookwyrm/templates/import_status.html:118 #: bookwyrm/templates/import_status.html:118
#: bookwyrm/templates/user/shelf.html:74 #: bookwyrm/templates/user/shelf.html:77
msgid "Author" msgid "Author"
msgstr "Autor*in" msgstr "Autor*in"
@ -2031,7 +2031,7 @@ msgid "Review:"
msgstr "Bewerten" msgstr "Bewerten"
#: bookwyrm/templates/snippets/create_status_form.html:29 #: bookwyrm/templates/snippets/create_status_form.html:29
#: bookwyrm/templates/user/shelf.html:78 #: bookwyrm/templates/user/shelf.html:81
msgid "Rating" msgid "Rating"
msgstr "" msgstr ""
@ -2501,7 +2501,8 @@ msgid "Update shelf"
msgstr "Regal aktualisieren" msgstr "Regal aktualisieren"
#: bookwyrm/templates/user/followers.html:7 #: bookwyrm/templates/user/followers.html:7
#: bookwyrm/templates/user/following.html:7 bookwyrm/templates/user/user.html:9 #: bookwyrm/templates/user/following.html:7
#: bookwyrm/templates/user/user.html:10
msgid "User Profile" msgid "User Profile"
msgstr "Benutzerprofil" msgstr "Benutzerprofil"
@ -2532,62 +2533,68 @@ msgstr "Listen: %(username)s"
msgid "Create list" msgid "Create list"
msgstr "Liste Erstellen" msgstr "Liste Erstellen"
#: bookwyrm/templates/user/shelf.html:34 #: bookwyrm/templates/user/shelf.html:24 bookwyrm/views/shelf.py:53
#, fuzzy
#| msgid "books"
msgid "All books"
msgstr "Bücher"
#: bookwyrm/templates/user/shelf.html:37
msgid "Create shelf" msgid "Create shelf"
msgstr "Regal erstellen" msgstr "Regal erstellen"
#: bookwyrm/templates/user/shelf.html:55 #: bookwyrm/templates/user/shelf.html:58
msgid "Edit shelf" msgid "Edit shelf"
msgstr "Regal bearbeiten" msgstr "Regal bearbeiten"
#: bookwyrm/templates/user/shelf.html:75 #: bookwyrm/templates/user/shelf.html:78
msgid "Shelved" msgid "Shelved"
msgstr "Ins Regal gestellt" msgstr "Ins Regal gestellt"
#: bookwyrm/templates/user/shelf.html:76 #: bookwyrm/templates/user/shelf.html:79
msgid "Started" msgid "Started"
msgstr "Gestartet" msgstr "Gestartet"
#: bookwyrm/templates/user/shelf.html:77 #: bookwyrm/templates/user/shelf.html:80
msgid "Finished" msgid "Finished"
msgstr "Abgeschlossen" msgstr "Abgeschlossen"
#: bookwyrm/templates/user/shelf.html:121 #: bookwyrm/templates/user/shelf.html:122
msgid "This shelf is empty." msgid "This shelf is empty."
msgstr "Dieses Regal ist leer." msgstr "Dieses Regal ist leer."
#: bookwyrm/templates/user/shelf.html:127 #: bookwyrm/templates/user/shelf.html:128
msgid "Delete shelf" msgid "Delete shelf"
msgstr "Regal löschen" msgstr "Regal löschen"
#: bookwyrm/templates/user/user.html:15 #: bookwyrm/templates/user/user.html:16
msgid "Edit profile" msgid "Edit profile"
msgstr "Profil bearbeiten" msgstr "Profil bearbeiten"
#: bookwyrm/templates/user/user.html:33 #: bookwyrm/templates/user/user.html:34
#, fuzzy, python-format #, fuzzy, python-format
#| msgid "See all %(size)s" #| msgid "See all %(size)s"
msgid "View all %(size)s" msgid "View all %(size)s"
msgstr "Alle %(size)s anzeigen" msgstr "Alle %(size)s anzeigen"
#: bookwyrm/templates/user/user.html:46 #: bookwyrm/templates/user/user.html:47
msgid "View all books" msgid "View all books"
msgstr "" msgstr ""
#: bookwyrm/templates/user/user.html:58 #: bookwyrm/templates/user/user.html:59
#, python-format #, python-format
msgid "Set a reading goal for %(year)s" msgid "Set a reading goal for %(year)s"
msgstr "Leseziel für %(year)s setzen" msgstr "Leseziel für %(year)s setzen"
#: bookwyrm/templates/user/user.html:64 #: bookwyrm/templates/user/user.html:65
msgid "User Activity" msgid "User Activity"
msgstr "Nutzer*innenaktivität" msgstr "Nutzer*innenaktivität"
#: bookwyrm/templates/user/user.html:67 #: bookwyrm/templates/user/user.html:68
msgid "RSS feed" msgid "RSS feed"
msgstr "" msgstr ""
#: bookwyrm/templates/user/user.html:78 #: bookwyrm/templates/user/user.html:79
msgid "No activities yet!" msgid "No activities yet!"
msgstr "Noch keine Aktivitäten!" msgstr "Noch keine Aktivitäten!"

View file

@ -8,7 +8,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: 0.0.1\n" "Project-Id-Version: 0.0.1\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-03-31 09:22-0700\n" "POT-Creation-Date: 2021-03-31 10:36-0700\n"
"PO-Revision-Date: 2021-02-28 17:19-0800\n" "PO-Revision-Date: 2021-02-28 17:19-0800\n"
"Last-Translator: Mouse Reeve <mousereeve@riseup.net>\n" "Last-Translator: Mouse Reeve <mousereeve@riseup.net>\n"
"Language-Team: English <LL@li.org>\n" "Language-Team: English <LL@li.org>\n"
@ -396,7 +396,7 @@ msgid "John Doe, Jane Smith"
msgstr "" msgstr ""
#: bookwyrm/templates/book/edit_book.html:155 #: bookwyrm/templates/book/edit_book.html:155
#: bookwyrm/templates/user/shelf.html:72 #: bookwyrm/templates/user/shelf.html:75
msgid "Cover" msgid "Cover"
msgstr "" msgstr ""
@ -813,18 +813,18 @@ msgid "There are no books here right now! Try searching for a book to get starte
msgstr "" msgstr ""
#: bookwyrm/templates/feed/feed_layout.html:23 #: bookwyrm/templates/feed/feed_layout.html:23
#: bookwyrm/templates/user/shelf.html:25 #: bookwyrm/templates/user/shelf.html:28
msgid "To Read" msgid "To Read"
msgstr "" msgstr ""
#: bookwyrm/templates/feed/feed_layout.html:24 #: bookwyrm/templates/feed/feed_layout.html:24
#: bookwyrm/templates/user/shelf.html:25 #: bookwyrm/templates/user/shelf.html:28
msgid "Currently Reading" msgid "Currently Reading"
msgstr "" msgstr ""
#: bookwyrm/templates/feed/feed_layout.html:25 #: bookwyrm/templates/feed/feed_layout.html:25
#: bookwyrm/templates/snippets/shelve_button/shelve_button_options.html:11 #: bookwyrm/templates/snippets/shelve_button/shelve_button_options.html:11
#: bookwyrm/templates/user/shelf.html:25 #: bookwyrm/templates/user/shelf.html:28
msgid "Read" msgid "Read"
msgstr "" msgstr ""
@ -950,12 +950,12 @@ msgstr ""
#: bookwyrm/templates/import_status.html:115 #: bookwyrm/templates/import_status.html:115
#: bookwyrm/templates/snippets/create_status_form.html:10 #: bookwyrm/templates/snippets/create_status_form.html:10
#: bookwyrm/templates/user/shelf.html:73 #: bookwyrm/templates/user/shelf.html:76
msgid "Title" msgid "Title"
msgstr "" msgstr ""
#: bookwyrm/templates/import_status.html:118 #: bookwyrm/templates/import_status.html:118
#: bookwyrm/templates/user/shelf.html:74 #: bookwyrm/templates/user/shelf.html:77
msgid "Author" msgid "Author"
msgstr "" msgstr ""
@ -1915,7 +1915,7 @@ msgid "Review:"
msgstr "" msgstr ""
#: bookwyrm/templates/snippets/create_status_form.html:29 #: bookwyrm/templates/snippets/create_status_form.html:29
#: bookwyrm/templates/user/shelf.html:78 #: bookwyrm/templates/user/shelf.html:81
msgid "Rating" msgid "Rating"
msgstr "" msgstr ""
@ -2360,7 +2360,8 @@ msgid "Update shelf"
msgstr "" msgstr ""
#: bookwyrm/templates/user/followers.html:7 #: bookwyrm/templates/user/followers.html:7
#: bookwyrm/templates/user/following.html:7 bookwyrm/templates/user/user.html:9 #: bookwyrm/templates/user/following.html:7
#: bookwyrm/templates/user/user.html:10
msgid "User Profile" msgid "User Profile"
msgstr "" msgstr ""
@ -2391,61 +2392,65 @@ msgstr ""
msgid "Create list" msgid "Create list"
msgstr "" msgstr ""
#: bookwyrm/templates/user/shelf.html:34 #: bookwyrm/templates/user/shelf.html:24 bookwyrm/views/shelf.py:53
msgid "All books"
msgstr ""
#: bookwyrm/templates/user/shelf.html:37
msgid "Create shelf" msgid "Create shelf"
msgstr "" msgstr ""
#: bookwyrm/templates/user/shelf.html:55 #: bookwyrm/templates/user/shelf.html:58
msgid "Edit shelf" msgid "Edit shelf"
msgstr "" msgstr ""
#: bookwyrm/templates/user/shelf.html:75 #: bookwyrm/templates/user/shelf.html:78
msgid "Shelved" msgid "Shelved"
msgstr "" msgstr ""
#: bookwyrm/templates/user/shelf.html:76 #: bookwyrm/templates/user/shelf.html:79
msgid "Started" msgid "Started"
msgstr "" msgstr ""
#: bookwyrm/templates/user/shelf.html:77 #: bookwyrm/templates/user/shelf.html:80
msgid "Finished" msgid "Finished"
msgstr "" msgstr ""
#: bookwyrm/templates/user/shelf.html:121 #: bookwyrm/templates/user/shelf.html:122
msgid "This shelf is empty." msgid "This shelf is empty."
msgstr "" msgstr ""
#: bookwyrm/templates/user/shelf.html:127 #: bookwyrm/templates/user/shelf.html:128
msgid "Delete shelf" msgid "Delete shelf"
msgstr "" msgstr ""
#: bookwyrm/templates/user/user.html:15 #: bookwyrm/templates/user/user.html:16
msgid "Edit profile" msgid "Edit profile"
msgstr "" msgstr ""
#: bookwyrm/templates/user/user.html:33 #: bookwyrm/templates/user/user.html:34
#, python-format #, python-format
msgid "View all %(size)s" msgid "View all %(size)s"
msgstr "" msgstr ""
#: bookwyrm/templates/user/user.html:46 #: bookwyrm/templates/user/user.html:47
msgid "View all books" msgid "View all books"
msgstr "" msgstr ""
#: bookwyrm/templates/user/user.html:58 #: bookwyrm/templates/user/user.html:59
#, python-format #, python-format
msgid "Set a reading goal for %(year)s" msgid "Set a reading goal for %(year)s"
msgstr "" msgstr ""
#: bookwyrm/templates/user/user.html:64 #: bookwyrm/templates/user/user.html:65
msgid "User Activity" msgid "User Activity"
msgstr "" msgstr ""
#: bookwyrm/templates/user/user.html:67 #: bookwyrm/templates/user/user.html:68
msgid "RSS feed" msgid "RSS feed"
msgstr "" msgstr ""
#: bookwyrm/templates/user/user.html:78 #: bookwyrm/templates/user/user.html:79
msgid "No activities yet!" msgid "No activities yet!"
msgstr "" msgstr ""

View file

@ -8,7 +8,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: 0.0.1\n" "Project-Id-Version: 0.0.1\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-03-31 09:22-0700\n" "POT-Creation-Date: 2021-03-31 10:36-0700\n"
"PO-Revision-Date: 2021-03-19 11:49+0800\n" "PO-Revision-Date: 2021-03-19 11:49+0800\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n" "Language-Team: LANGUAGE <LL@li.org>\n"
@ -413,7 +413,7 @@ msgid "John Doe, Jane Smith"
msgstr "" msgstr ""
#: bookwyrm/templates/book/edit_book.html:155 #: bookwyrm/templates/book/edit_book.html:155
#: bookwyrm/templates/user/shelf.html:72 #: bookwyrm/templates/user/shelf.html:75
msgid "Cover" msgid "Cover"
msgstr "Portada:" msgstr "Portada:"
@ -857,18 +857,18 @@ msgid "There are no books here right now! Try searching for a book to get starte
msgstr "¡No hay ningún libro aqui ahorita! Busca a un libro para empezar" msgstr "¡No hay ningún libro aqui ahorita! Busca a un libro para empezar"
#: bookwyrm/templates/feed/feed_layout.html:23 #: bookwyrm/templates/feed/feed_layout.html:23
#: bookwyrm/templates/user/shelf.html:25 #: bookwyrm/templates/user/shelf.html:28
msgid "To Read" msgid "To Read"
msgstr "Para leer" msgstr "Para leer"
#: bookwyrm/templates/feed/feed_layout.html:24 #: bookwyrm/templates/feed/feed_layout.html:24
#: bookwyrm/templates/user/shelf.html:25 #: bookwyrm/templates/user/shelf.html:28
msgid "Currently Reading" msgid "Currently Reading"
msgstr "Leyendo actualmente" msgstr "Leyendo actualmente"
#: bookwyrm/templates/feed/feed_layout.html:25 #: bookwyrm/templates/feed/feed_layout.html:25
#: bookwyrm/templates/snippets/shelve_button/shelve_button_options.html:11 #: bookwyrm/templates/snippets/shelve_button/shelve_button_options.html:11
#: bookwyrm/templates/user/shelf.html:25 #: bookwyrm/templates/user/shelf.html:28
msgid "Read" msgid "Read"
msgstr "Leer" msgstr "Leer"
@ -996,12 +996,12 @@ msgstr "Libro"
#: bookwyrm/templates/import_status.html:115 #: bookwyrm/templates/import_status.html:115
#: bookwyrm/templates/snippets/create_status_form.html:10 #: bookwyrm/templates/snippets/create_status_form.html:10
#: bookwyrm/templates/user/shelf.html:73 #: bookwyrm/templates/user/shelf.html:76
msgid "Title" msgid "Title"
msgstr "Título" msgstr "Título"
#: bookwyrm/templates/import_status.html:118 #: bookwyrm/templates/import_status.html:118
#: bookwyrm/templates/user/shelf.html:74 #: bookwyrm/templates/user/shelf.html:77
msgid "Author" msgid "Author"
msgstr "Autor/Autora" msgstr "Autor/Autora"
@ -2023,7 +2023,7 @@ msgid "Review:"
msgstr "Reseña" msgstr "Reseña"
#: bookwyrm/templates/snippets/create_status_form.html:29 #: bookwyrm/templates/snippets/create_status_form.html:29
#: bookwyrm/templates/user/shelf.html:78 #: bookwyrm/templates/user/shelf.html:81
msgid "Rating" msgid "Rating"
msgstr "Calificación" msgstr "Calificación"
@ -2493,7 +2493,8 @@ msgid "Update shelf"
msgstr "Actualizar estante" msgstr "Actualizar estante"
#: bookwyrm/templates/user/followers.html:7 #: bookwyrm/templates/user/followers.html:7
#: bookwyrm/templates/user/following.html:7 bookwyrm/templates/user/user.html:9 #: bookwyrm/templates/user/following.html:7
#: bookwyrm/templates/user/user.html:10
msgid "User Profile" msgid "User Profile"
msgstr "Perfil de usuario" msgstr "Perfil de usuario"
@ -2524,62 +2525,68 @@ msgstr "Listas: %(username)s"
msgid "Create list" msgid "Create list"
msgstr "Crear lista" msgstr "Crear lista"
#: bookwyrm/templates/user/shelf.html:34 #: bookwyrm/templates/user/shelf.html:24 bookwyrm/views/shelf.py:53
#, fuzzy
#| msgid "books"
msgid "All books"
msgstr "libros"
#: bookwyrm/templates/user/shelf.html:37
msgid "Create shelf" msgid "Create shelf"
msgstr "Crear estante" msgstr "Crear estante"
#: bookwyrm/templates/user/shelf.html:55 #: bookwyrm/templates/user/shelf.html:58
msgid "Edit shelf" msgid "Edit shelf"
msgstr "Editar estante" msgstr "Editar estante"
#: bookwyrm/templates/user/shelf.html:75 #: bookwyrm/templates/user/shelf.html:78
msgid "Shelved" msgid "Shelved"
msgstr "Archivado" msgstr "Archivado"
#: bookwyrm/templates/user/shelf.html:76 #: bookwyrm/templates/user/shelf.html:79
msgid "Started" msgid "Started"
msgstr "Empezado" msgstr "Empezado"
#: bookwyrm/templates/user/shelf.html:77 #: bookwyrm/templates/user/shelf.html:80
msgid "Finished" msgid "Finished"
msgstr "Terminado" msgstr "Terminado"
#: bookwyrm/templates/user/shelf.html:121 #: bookwyrm/templates/user/shelf.html:122
msgid "This shelf is empty." msgid "This shelf is empty."
msgstr "Este estante está vacio." msgstr "Este estante está vacio."
#: bookwyrm/templates/user/shelf.html:127 #: bookwyrm/templates/user/shelf.html:128
msgid "Delete shelf" msgid "Delete shelf"
msgstr "Eliminar estante" msgstr "Eliminar estante"
#: bookwyrm/templates/user/user.html:15 #: bookwyrm/templates/user/user.html:16
msgid "Edit profile" msgid "Edit profile"
msgstr "Editar perfil" msgstr "Editar perfil"
#: bookwyrm/templates/user/user.html:33 #: bookwyrm/templates/user/user.html:34
#, fuzzy, python-format #, fuzzy, python-format
#| msgid "See all %(size)s" #| msgid "See all %(size)s"
msgid "View all %(size)s" msgid "View all %(size)s"
msgstr "Ver %(size)s" msgstr "Ver %(size)s"
#: bookwyrm/templates/user/user.html:46 #: bookwyrm/templates/user/user.html:47
msgid "View all books" msgid "View all books"
msgstr "" msgstr ""
#: bookwyrm/templates/user/user.html:58 #: bookwyrm/templates/user/user.html:59
#, python-format #, python-format
msgid "Set a reading goal for %(year)s" msgid "Set a reading goal for %(year)s"
msgstr "Establecer una meta de lectura para %(year)s" msgstr "Establecer una meta de lectura para %(year)s"
#: bookwyrm/templates/user/user.html:64 #: bookwyrm/templates/user/user.html:65
msgid "User Activity" msgid "User Activity"
msgstr "Actividad de usuario" msgstr "Actividad de usuario"
#: bookwyrm/templates/user/user.html:67 #: bookwyrm/templates/user/user.html:68
msgid "RSS feed" msgid "RSS feed"
msgstr "Feed RSS" msgstr "Feed RSS"
#: bookwyrm/templates/user/user.html:78 #: bookwyrm/templates/user/user.html:79
msgid "No activities yet!" msgid "No activities yet!"
msgstr "¡Aún no actividades!" msgstr "¡Aún no actividades!"

View file

@ -8,7 +8,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: 0.1.1\n" "Project-Id-Version: 0.1.1\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-03-31 09:22-0700\n" "POT-Creation-Date: 2021-03-31 10:36-0700\n"
"PO-Revision-Date: 2021-03-02 12:37+0100\n" "PO-Revision-Date: 2021-03-02 12:37+0100\n"
"Last-Translator: Fabien Basmaison <contact@arkhi.org>\n" "Last-Translator: Fabien Basmaison <contact@arkhi.org>\n"
"Language-Team: Mouse Reeve <LL@li.org>\n" "Language-Team: Mouse Reeve <LL@li.org>\n"
@ -422,7 +422,7 @@ msgid "John Doe, Jane Smith"
msgstr "" msgstr ""
#: bookwyrm/templates/book/edit_book.html:155 #: bookwyrm/templates/book/edit_book.html:155
#: bookwyrm/templates/user/shelf.html:72 #: bookwyrm/templates/user/shelf.html:75
msgid "Cover" msgid "Cover"
msgstr "Couverture" msgstr "Couverture"
@ -876,14 +876,14 @@ msgid "There are no books here right now! Try searching for a book to get starte
msgstr "Aucun livre ici pour linstant! Cherchez un livre pour commencer" msgstr "Aucun livre ici pour linstant! Cherchez un livre pour commencer"
#: bookwyrm/templates/feed/feed_layout.html:23 #: bookwyrm/templates/feed/feed_layout.html:23
#: bookwyrm/templates/user/shelf.html:25 #: bookwyrm/templates/user/shelf.html:28
#, fuzzy #, fuzzy
#| msgid "Read" #| msgid "Read"
msgid "To Read" msgid "To Read"
msgstr "Lu" msgstr "Lu"
#: bookwyrm/templates/feed/feed_layout.html:24 #: bookwyrm/templates/feed/feed_layout.html:24
#: bookwyrm/templates/user/shelf.html:25 #: bookwyrm/templates/user/shelf.html:28
#, fuzzy #, fuzzy
#| msgid "Started reading" #| msgid "Started reading"
msgid "Currently Reading" msgid "Currently Reading"
@ -891,7 +891,7 @@ msgstr "Commencer la lecture"
#: bookwyrm/templates/feed/feed_layout.html:25 #: bookwyrm/templates/feed/feed_layout.html:25
#: bookwyrm/templates/snippets/shelve_button/shelve_button_options.html:11 #: bookwyrm/templates/snippets/shelve_button/shelve_button_options.html:11
#: bookwyrm/templates/user/shelf.html:25 #: bookwyrm/templates/user/shelf.html:28
msgid "Read" msgid "Read"
msgstr "Lu" msgstr "Lu"
@ -1023,12 +1023,12 @@ msgstr "Livre"
#: bookwyrm/templates/import_status.html:115 #: bookwyrm/templates/import_status.html:115
#: bookwyrm/templates/snippets/create_status_form.html:10 #: bookwyrm/templates/snippets/create_status_form.html:10
#: bookwyrm/templates/user/shelf.html:73 #: bookwyrm/templates/user/shelf.html:76
msgid "Title" msgid "Title"
msgstr "Titre" msgstr "Titre"
#: bookwyrm/templates/import_status.html:118 #: bookwyrm/templates/import_status.html:118
#: bookwyrm/templates/user/shelf.html:74 #: bookwyrm/templates/user/shelf.html:77
msgid "Author" msgid "Author"
msgstr "Auteur ou autrice" msgstr "Auteur ou autrice"
@ -2055,7 +2055,7 @@ msgid "Review:"
msgstr "Critique" msgstr "Critique"
#: bookwyrm/templates/snippets/create_status_form.html:29 #: bookwyrm/templates/snippets/create_status_form.html:29
#: bookwyrm/templates/user/shelf.html:78 #: bookwyrm/templates/user/shelf.html:81
msgid "Rating" msgid "Rating"
msgstr "Note" msgstr "Note"
@ -2531,7 +2531,8 @@ msgid "Update shelf"
msgstr "Mettre létagère à jour" msgstr "Mettre létagère à jour"
#: bookwyrm/templates/user/followers.html:7 #: bookwyrm/templates/user/followers.html:7
#: bookwyrm/templates/user/following.html:7 bookwyrm/templates/user/user.html:9 #: bookwyrm/templates/user/following.html:7
#: bookwyrm/templates/user/user.html:10
msgid "User Profile" msgid "User Profile"
msgstr "Profil" msgstr "Profil"
@ -2563,62 +2564,68 @@ msgstr "Listes: %(username)s"
msgid "Create list" msgid "Create list"
msgstr "Créer une liste" msgstr "Créer une liste"
#: bookwyrm/templates/user/shelf.html:34 #: bookwyrm/templates/user/shelf.html:24 bookwyrm/views/shelf.py:53
#, fuzzy
#| msgid "books"
msgid "All books"
msgstr "livres"
#: bookwyrm/templates/user/shelf.html:37
msgid "Create shelf" msgid "Create shelf"
msgstr "Créer létagère" msgstr "Créer létagère"
#: bookwyrm/templates/user/shelf.html:55 #: bookwyrm/templates/user/shelf.html:58
msgid "Edit shelf" msgid "Edit shelf"
msgstr "Modifier létagère" msgstr "Modifier létagère"
#: bookwyrm/templates/user/shelf.html:75 #: bookwyrm/templates/user/shelf.html:78
msgid "Shelved" msgid "Shelved"
msgstr "Ajouté à une étagère" msgstr "Ajouté à une étagère"
#: bookwyrm/templates/user/shelf.html:76 #: bookwyrm/templates/user/shelf.html:79
msgid "Started" msgid "Started"
msgstr "Commencé" msgstr "Commencé"
#: bookwyrm/templates/user/shelf.html:77 #: bookwyrm/templates/user/shelf.html:80
msgid "Finished" msgid "Finished"
msgstr "Terminé" msgstr "Terminé"
#: bookwyrm/templates/user/shelf.html:121 #: bookwyrm/templates/user/shelf.html:122
msgid "This shelf is empty." msgid "This shelf is empty."
msgstr "Cette étagère est vide" msgstr "Cette étagère est vide"
#: bookwyrm/templates/user/shelf.html:127 #: bookwyrm/templates/user/shelf.html:128
msgid "Delete shelf" msgid "Delete shelf"
msgstr "Supprimer létagère" msgstr "Supprimer létagère"
#: bookwyrm/templates/user/user.html:15 #: bookwyrm/templates/user/user.html:16
msgid "Edit profile" msgid "Edit profile"
msgstr "Modifier le profil" msgstr "Modifier le profil"
#: bookwyrm/templates/user/user.html:33 #: bookwyrm/templates/user/user.html:34
#, fuzzy, python-format #, fuzzy, python-format
#| msgid "See all %(size)s" #| msgid "See all %(size)s"
msgid "View all %(size)s" msgid "View all %(size)s"
msgstr "Voir les %(size)s" msgstr "Voir les %(size)s"
#: bookwyrm/templates/user/user.html:46 #: bookwyrm/templates/user/user.html:47
msgid "View all books" msgid "View all books"
msgstr "" msgstr ""
#: bookwyrm/templates/user/user.html:58 #: bookwyrm/templates/user/user.html:59
#, python-format #, python-format
msgid "Set a reading goal for %(year)s" msgid "Set a reading goal for %(year)s"
msgstr "Définir un défi lecture pour %(year)s" msgstr "Définir un défi lecture pour %(year)s"
#: bookwyrm/templates/user/user.html:64 #: bookwyrm/templates/user/user.html:65
msgid "User Activity" msgid "User Activity"
msgstr "Activité du compte" msgstr "Activité du compte"
#: bookwyrm/templates/user/user.html:67 #: bookwyrm/templates/user/user.html:68
msgid "RSS feed" msgid "RSS feed"
msgstr "Flux RSS" msgstr "Flux RSS"
#: bookwyrm/templates/user/user.html:78 #: bookwyrm/templates/user/user.html:79
msgid "No activities yet!" msgid "No activities yet!"
msgstr "Aucune activité pour linstant!" msgstr "Aucune activité pour linstant!"

View file

@ -8,7 +8,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: 0.1.1\n" "Project-Id-Version: 0.1.1\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-03-31 09:22-0700\n" "POT-Creation-Date: 2021-03-31 10:36-0700\n"
"PO-Revision-Date: 2021-03-20 00:56+0000\n" "PO-Revision-Date: 2021-03-20 00:56+0000\n"
"Last-Translator: Kana <gudzpoz@live.com>\n" "Last-Translator: Kana <gudzpoz@live.com>\n"
"Language-Team: Mouse Reeve <LL@li.org>\n" "Language-Team: Mouse Reeve <LL@li.org>\n"
@ -397,7 +397,7 @@ msgid "John Doe, Jane Smith"
msgstr "张三, 李四" msgstr "张三, 李四"
#: bookwyrm/templates/book/edit_book.html:155 #: bookwyrm/templates/book/edit_book.html:155
#: bookwyrm/templates/user/shelf.html:72 #: bookwyrm/templates/user/shelf.html:75
msgid "Cover" msgid "Cover"
msgstr "封面" msgstr "封面"
@ -838,18 +838,18 @@ msgid "There are no books here right now! Try searching for a book to get starte
msgstr "现在这里还没有任何书目!尝试着从搜索某本书开始吧" msgstr "现在这里还没有任何书目!尝试着从搜索某本书开始吧"
#: bookwyrm/templates/feed/feed_layout.html:23 #: bookwyrm/templates/feed/feed_layout.html:23
#: bookwyrm/templates/user/shelf.html:25 #: bookwyrm/templates/user/shelf.html:28
msgid "To Read" msgid "To Read"
msgstr "想读" msgstr "想读"
#: bookwyrm/templates/feed/feed_layout.html:24 #: bookwyrm/templates/feed/feed_layout.html:24
#: bookwyrm/templates/user/shelf.html:25 #: bookwyrm/templates/user/shelf.html:28
msgid "Currently Reading" msgid "Currently Reading"
msgstr "在读" msgstr "在读"
#: bookwyrm/templates/feed/feed_layout.html:25 #: bookwyrm/templates/feed/feed_layout.html:25
#: bookwyrm/templates/snippets/shelve_button/shelve_button_options.html:11 #: bookwyrm/templates/snippets/shelve_button/shelve_button_options.html:11
#: bookwyrm/templates/user/shelf.html:25 #: bookwyrm/templates/user/shelf.html:28
msgid "Read" msgid "Read"
msgstr "读过" msgstr "读过"
@ -977,12 +977,12 @@ msgstr "书目"
#: bookwyrm/templates/import_status.html:115 #: bookwyrm/templates/import_status.html:115
#: bookwyrm/templates/snippets/create_status_form.html:10 #: bookwyrm/templates/snippets/create_status_form.html:10
#: bookwyrm/templates/user/shelf.html:73 #: bookwyrm/templates/user/shelf.html:76
msgid "Title" msgid "Title"
msgstr "标题" msgstr "标题"
#: bookwyrm/templates/import_status.html:118 #: bookwyrm/templates/import_status.html:118
#: bookwyrm/templates/user/shelf.html:74 #: bookwyrm/templates/user/shelf.html:77
msgid "Author" msgid "Author"
msgstr "作者" msgstr "作者"
@ -1992,7 +1992,7 @@ msgid "Review:"
msgstr "书评" msgstr "书评"
#: bookwyrm/templates/snippets/create_status_form.html:29 #: bookwyrm/templates/snippets/create_status_form.html:29
#: bookwyrm/templates/user/shelf.html:78 #: bookwyrm/templates/user/shelf.html:81
msgid "Rating" msgid "Rating"
msgstr "评价" msgstr "评价"
@ -2450,7 +2450,8 @@ msgid "Update shelf"
msgstr "更新书架" msgstr "更新书架"
#: bookwyrm/templates/user/followers.html:7 #: bookwyrm/templates/user/followers.html:7
#: bookwyrm/templates/user/following.html:7 bookwyrm/templates/user/user.html:9 #: bookwyrm/templates/user/following.html:7
#: bookwyrm/templates/user/user.html:10
msgid "User Profile" msgid "User Profile"
msgstr "用户个人资料" msgstr "用户个人资料"
@ -2481,62 +2482,68 @@ msgstr "列表: %(username)s"
msgid "Create list" msgid "Create list"
msgstr "创建列表" msgstr "创建列表"
#: bookwyrm/templates/user/shelf.html:34 #: bookwyrm/templates/user/shelf.html:24 bookwyrm/views/shelf.py:53
#, fuzzy
#| msgid "books"
msgid "All books"
msgstr "书目"
#: bookwyrm/templates/user/shelf.html:37
msgid "Create shelf" msgid "Create shelf"
msgstr "创建书架" msgstr "创建书架"
#: bookwyrm/templates/user/shelf.html:55 #: bookwyrm/templates/user/shelf.html:58
msgid "Edit shelf" msgid "Edit shelf"
msgstr "编辑书架" msgstr "编辑书架"
#: bookwyrm/templates/user/shelf.html:75 #: bookwyrm/templates/user/shelf.html:78
msgid "Shelved" msgid "Shelved"
msgstr "已上架" msgstr "已上架"
#: bookwyrm/templates/user/shelf.html:76 #: bookwyrm/templates/user/shelf.html:79
msgid "Started" msgid "Started"
msgstr "已开始" msgstr "已开始"
#: bookwyrm/templates/user/shelf.html:77 #: bookwyrm/templates/user/shelf.html:80
msgid "Finished" msgid "Finished"
msgstr "已完成" msgstr "已完成"
#: bookwyrm/templates/user/shelf.html:121 #: bookwyrm/templates/user/shelf.html:122
msgid "This shelf is empty." msgid "This shelf is empty."
msgstr "此书架是空的。" msgstr "此书架是空的。"
#: bookwyrm/templates/user/shelf.html:127 #: bookwyrm/templates/user/shelf.html:128
msgid "Delete shelf" msgid "Delete shelf"
msgstr "删除书架" msgstr "删除书架"
#: bookwyrm/templates/user/user.html:15 #: bookwyrm/templates/user/user.html:16
msgid "Edit profile" msgid "Edit profile"
msgstr "编辑个人资料" msgstr "编辑个人资料"
#: bookwyrm/templates/user/user.html:33 #: bookwyrm/templates/user/user.html:34
#, fuzzy, python-format #, fuzzy, python-format
#| msgid "See all %(size)s" #| msgid "See all %(size)s"
msgid "View all %(size)s" msgid "View all %(size)s"
msgstr "查看所有 %(size)s 本" msgstr "查看所有 %(size)s 本"
#: bookwyrm/templates/user/user.html:46 #: bookwyrm/templates/user/user.html:47
msgid "View all books" msgid "View all books"
msgstr "" msgstr ""
#: bookwyrm/templates/user/user.html:58 #: bookwyrm/templates/user/user.html:59
#, python-format #, python-format
msgid "Set a reading goal for %(year)s" msgid "Set a reading goal for %(year)s"
msgstr "设定 %(year)s 的阅读目标" msgstr "设定 %(year)s 的阅读目标"
#: bookwyrm/templates/user/user.html:64 #: bookwyrm/templates/user/user.html:65
msgid "User Activity" msgid "User Activity"
msgstr "用户活动" msgstr "用户活动"
#: bookwyrm/templates/user/user.html:67 #: bookwyrm/templates/user/user.html:68
msgid "RSS feed" msgid "RSS feed"
msgstr "RSS 流" msgstr "RSS 流"
#: bookwyrm/templates/user/user.html:78 #: bookwyrm/templates/user/user.html:79
msgid "No activities yet!" msgid "No activities yet!"
msgstr "还没有活动!" msgstr "还没有活动!"