diff --git a/CHANGELOG.txt b/CHANGELOG.txt index b72e19cad6..d00e9d0d58 100644 --- a/CHANGELOG.txt +++ b/CHANGELOG.txt @@ -23,6 +23,7 @@ Changelog * Added meaningful default icons to `StreamField` blocks (Benjamin Bach) * Added title text to action buttons in the page explorer (Liam Brenner) * Changed project template to explicitly import development settings via `settings.dev` (Tomas Olander) + * Improved L10N and I18N for revisions list (Roel Bruggink) * Fix: The currently selected day is now highlighted only in the correct month in date pickers (Jonas Lergell) * Fix: Fixed crash when an image without a source file was resized with the "dynamic serve view" * Fix: Registered settings admin menu items now show active correctly (Matthew Downey) diff --git a/docs/releases/1.5.rst b/docs/releases/1.5.rst index 99aa509405..d73a1c3c3a 100644 --- a/docs/releases/1.5.rst +++ b/docs/releases/1.5.rst @@ -48,6 +48,7 @@ Minor features * Added meaningful default icons to ``StreamField`` blocks (Benjamin Bach) * Added title text to action buttons in the page explorer (Liam Brenner) * Changed project template to explicitly import development settings via ``settings.dev`` (Tomas Olander) + * Improved L10N and I18N for revisions list (Roel Bruggink) Bug fixes ~~~~~~~~~ diff --git a/wagtail/wagtailadmin/templates/wagtailadmin/pages/edit.html b/wagtail/wagtailadmin/templates/wagtailadmin/pages/edit.html index d60f63cc5d..e2cac957a2 100644 --- a/wagtail/wagtailadmin/templates/wagtailadmin/pages/edit.html +++ b/wagtail/wagtailadmin/templates/wagtailadmin/pages/edit.html @@ -90,7 +90,7 @@ <span class="avatar small icon icon-user"><img src="{% gravatar_url page.get_latest_revision.user.email 25 %}" /></span> {% endif %} {% endif %} - <a href="{% url 'wagtailadmin_pages:revisions_index' page.id %}" class="underlined">Revisions</a> + <a href="{% url 'wagtailadmin_pages:revisions_index' page.id %}" class="underlined">{% trans 'Revisions' %}</a> {% endif %} </p> </li> diff --git a/wagtail/wagtailadmin/templates/wagtailadmin/pages/revisions/list.html b/wagtail/wagtailadmin/templates/wagtailadmin/pages/revisions/list.html index 44a3b560c7..558f71db0d 100644 --- a/wagtail/wagtailadmin/templates/wagtailadmin/pages/revisions/list.html +++ b/wagtail/wagtailadmin/templates/wagtailadmin/pages/revisions/list.html @@ -1,11 +1,12 @@ {% load i18n wagtailadmin_tags gravatar %} +{% load l10n %} <table class="listing"> <col width="100%" /> <thead> <tr> - <th><a href="{% url 'wagtailadmin_pages:revisions_index' page.id %}?ordering={% if ordering == "created_at" %}-{% endif %}created_at" class="icon icon-arrow-{% if ordering == "created_at" %}up-after{% elif ordering == "-created_at" %}down-after{% else %}down-after{% endif %} {% if ordering == "created_at" or ordering == "-created_at" %}teal{% endif %}">Revision date</a></th> + <th><a href="{% url 'wagtailadmin_pages:revisions_index' page.id %}?ordering={% if ordering == "created_at" %}-{% endif %}created_at" class="icon icon-arrow-{% if ordering == "created_at" %}up-after{% elif ordering == "-created_at" %}down-after{% else %}down-after{% endif %} {% if ordering == "created_at" or ordering == "-created_at" %}teal{% endif %}">{% trans 'Revision date' %}</a></th> </tr> </thead> <tbody> @@ -13,7 +14,7 @@ {% for revision in revisions %} <tr {% if revision == page.get_latest_revision %}class="index"{% endif %}> <td class="title"> - <h2><a href="{% url 'wagtailadmin_pages:revisions_revert' page.id revision.id %}">{{ revision.created_at|date:"d M Y H:i" }}</a> <span class="unbold">by<span class="avatar small icon icon-user"><img src="{% gravatar_url revision.user.email 25 %}" /></span>{{ revision.user }}</span> {% if revision == page.get_latest_revision %}({% trans 'Current draft' %}){% endif %}</h2> + <h2><a href="{% url 'wagtailadmin_pages:revisions_revert' page.id revision.id %}">{{ revision.created_at }}</a> <span class="unbold">{% trans 'by' context 'points to a user who created a revision' %}<span class="avatar small icon icon-user"><img src="{% gravatar_url revision.user.email 25 %}" /></span>{{ revision.user }}</span> {% if revision == page.get_latest_revision %}({% trans 'Current draft' %}){% endif %}</h2> <ul class="actions"> <li><a href="{% url 'wagtailadmin_pages:revisions_view' page.id revision.id %}" class="button button-small button-secondary" target="_blank">{% trans 'Preview' %}</a></li> @@ -27,7 +28,7 @@ </tr> {% endfor %} {% else %} - {% block no_results %}<tr><td class="no-results-message"><p>No revisions of this page exist</p></td></tr>{% endblock %} + {% block no_results %}<tr><td class="no-results-message"><p>{% trans 'No revisions of this page exist' %}</p></td></tr>{% endblock %} {% endif %} </tbody> </table> diff --git a/wagtail/wagtailadmin/tests/test_pages_views.py b/wagtail/wagtailadmin/tests/test_pages_views.py index 1165e522c4..3383a7fdc3 100644 --- a/wagtail/wagtailadmin/tests/test_pages_views.py +++ b/wagtail/wagtailadmin/tests/test_pages_views.py @@ -13,7 +13,8 @@ from django.core.files.base import ContentFile from django.core.urlresolvers import reverse from django.db.models.signals import post_delete, pre_delete from django.test import TestCase -from django.utils import timezone +from django.utils import formats, timezone +from django.utils.dateparse import parse_date from wagtail.tests.testapp.models import ( Advert, AdvertPlacement, BusinessChild, BusinessIndex, BusinessSubIndex, EventPage, @@ -2858,7 +2859,7 @@ class TestRevisions(TestCase, WagtailTestUtils): ) self.assertEqual(response.status_code, 200) - self.assertContains(response, "25 Dec 2013") + self.assertContains(response, formats.localize(parse_date('2013-12-25'))) last_christmas_preview_url = reverse( 'wagtailadmin_pages:revisions_view', args=(self.christmas_event.id, self.last_christmas_revision.id) @@ -2870,7 +2871,7 @@ class TestRevisions(TestCase, WagtailTestUtils): self.assertContains(response, last_christmas_preview_url) self.assertContains(response, last_christmas_revert_url) - self.assertContains(response, "25 Dec 2014") + self.assertContains(response, formats.localize(local_datetime(2014, 12, 25))) this_christmas_preview_url = reverse( 'wagtailadmin_pages:revisions_view', args=(self.christmas_event.id, self.this_christmas_revision.id) diff --git a/wagtail/wagtailadmin/views/pages.py b/wagtail/wagtailadmin/views/pages.py index e1e9c9eb4f..1725a3749f 100644 --- a/wagtail/wagtailadmin/views/pages.py +++ b/wagtail/wagtailadmin/views/pages.py @@ -983,7 +983,12 @@ def revisions_revert(request, page_id, revision_id): user_avatar = render_to_string('wagtailadmin/shared/user_avatar.html', {'user': revision.user}) - messages.warning(request, mark_safe(_("You are viewing a previous revision of this page from <b>%s</b> by %s") % (revision.created_at.strftime("%d %b %Y %H:%M"), user_avatar))) + messages.warning(request, mark_safe( + _("You are viewing a previous revision of this page from <b>%(created_at)s</b> by %(user)s") % { + 'created_at': revision.created_at.strftime("%d %b %Y %H:%M"), + 'user': user_avatar, + } + )) return render(request, 'wagtailadmin/pages/edit.html', { 'page': page,