From 2f06afe6e1ee1e2f25b9a1b9efe37e49fb830766 Mon Sep 17 00:00:00 2001 From: Marco Fucci Date: Fri, 9 Dec 2016 13:00:46 +0000 Subject: [PATCH] Make all live and draft links open in a new win Some 'live' and 'view draft' links were opening in a new window and some weren't for no apparent reason. This fixes that inconsistency. --- CHANGELOG.txt | 1 + CONTRIBUTORS.rst | 1 + docs/releases/1.9.rst | 2 +- wagtail/wagtailadmin/messages.py | 4 ++-- .../home/pages_for_moderation.html | 2 +- .../wagtailadmin/home/recent_edits.html | 4 ++-- .../wagtailadmin/shared/messages.html | 2 +- wagtail/wagtailadmin/views/pages.py | 21 +++++++++++++------ 8 files changed, 24 insertions(+), 13 deletions(-) diff --git a/CHANGELOG.txt b/CHANGELOG.txt index 6bc6fb25e9..cc79432f14 100644 --- a/CHANGELOG.txt +++ b/CHANGELOG.txt @@ -4,6 +4,7 @@ Changelog 1.9 (xx.xx.xxxx) - IN DEVELOPMENT ~~~~~~~~~~~~~~~~ + * View live / draft links in the admin now consistently open in a new window (Marco Fucci) 1.8 (xx.xx.xxxx) - IN DEVELOPMENT diff --git a/CONTRIBUTORS.rst b/CONTRIBUTORS.rst index 1ce5dae7b1..22534da66c 100644 --- a/CONTRIBUTORS.rst +++ b/CONTRIBUTORS.rst @@ -193,6 +193,7 @@ Contributors * Jeffrey Chau * Craig Loftus * MattRijk +* Marco Fucci Translators =========== diff --git a/docs/releases/1.9.rst b/docs/releases/1.9.rst index cc27207d3d..d6034ce635 100644 --- a/docs/releases/1.9.rst +++ b/docs/releases/1.9.rst @@ -15,7 +15,7 @@ What's new Minor features ~~~~~~~~~~~~~~ - + * View live / draft links in the admin now consistently open in a new window (Marco Fucci) Bug fixes diff --git a/wagtail/wagtailadmin/messages.py b/wagtail/wagtailadmin/messages.py index 917091ea92..ca7691212f 100644 --- a/wagtail/wagtailadmin/messages.py +++ b/wagtail/wagtailadmin/messages.py @@ -31,5 +31,5 @@ def error(request, message, buttons=None): return messages.error(request, render(message, buttons)) -def button(url, text): - return url, text +def button(url, text, new_window=False): + return url, text, new_window diff --git a/wagtail/wagtailadmin/templates/wagtailadmin/home/pages_for_moderation.html b/wagtail/wagtailadmin/templates/wagtailadmin/home/pages_for_moderation.html index 77b0bfa25b..e910c55be6 100644 --- a/wagtail/wagtailadmin/templates/wagtailadmin/home/pages_for_moderation.html +++ b/wagtail/wagtailadmin/templates/wagtailadmin/home/pages_for_moderation.html @@ -40,7 +40,7 @@
  • {% trans 'Edit' %}
  • -
  • {% trans 'Preview' %}
  • +
  • {% trans 'Preview' %}
  • diff --git a/wagtail/wagtailadmin/templates/wagtailadmin/home/recent_edits.html b/wagtail/wagtailadmin/templates/wagtailadmin/home/recent_edits.html index 5e7b190a0a..2601636f1b 100644 --- a/wagtail/wagtailadmin/templates/wagtailadmin/home/recent_edits.html +++ b/wagtail/wagtailadmin/templates/wagtailadmin/home/recent_edits.html @@ -27,10 +27,10 @@ diff --git a/wagtail/wagtailadmin/templates/wagtailadmin/shared/messages.html b/wagtail/wagtailadmin/templates/wagtailadmin/shared/messages.html index 50c6f71cdd..a23ee3efae 100644 --- a/wagtail/wagtailadmin/templates/wagtailadmin/shared/messages.html +++ b/wagtail/wagtailadmin/templates/wagtailadmin/shared/messages.html @@ -3,7 +3,7 @@ {% if buttons %} {% for button in buttons %} - {{ button.1 }} + {{ button.1 }} {% endfor %} {% endif %} diff --git a/wagtail/wagtailadmin/views/pages.py b/wagtail/wagtailadmin/views/pages.py index 9a4a65b5af..f44a09c5fa 100644 --- a/wagtail/wagtailadmin/views/pages.py +++ b/wagtail/wagtailadmin/views/pages.py @@ -224,7 +224,7 @@ def create(request, content_type_app_name, content_type_model_name, parent_page_ ]) else: messages.success(request, _("Page '{0}' created and published.").format(page.get_admin_display_title()), buttons=[ - messages.button(page.url, _('View live')), + messages.button(page.url, _('View live'), new_window=True), messages.button(reverse('wagtailadmin_pages:edit', args=(page.id,)), _('Edit')) ]) elif is_submitting: @@ -232,8 +232,15 @@ def create(request, content_type_app_name, content_type_model_name, parent_page_ request, _("Page '{0}' created and submitted for moderation.").format(page.get_admin_display_title()), buttons=[ - messages.button(reverse('wagtailadmin_pages:view_draft', args=(page.id,)), _('View draft')), - messages.button(reverse('wagtailadmin_pages:edit', args=(page.id,)), _('Edit')) + messages.button( + reverse('wagtailadmin_pages:view_draft', args=(page.id,)), + _('View draft'), + new_window=True + ), + messages.button( + reverse('wagtailadmin_pages:edit', args=(page.id,)), + _('Edit') + ) ] ) if not send_notification(page.get_latest_revision().id, 'submitted', request.user.pk): @@ -381,7 +388,8 @@ def edit(request, page_id): messages.success(request, message, buttons=[ messages.button( page.url, - _('View live') + _('View live'), + new_window=True ), messages.button( reverse('wagtailadmin_pages:edit', args=(page_id,)), @@ -400,7 +408,8 @@ def edit(request, page_id): messages.success(request, message, buttons=[ messages.button( reverse('wagtailadmin_pages:view_draft', args=(page_id,)), - _('View draft') + _('View draft'), + new_window=True ), messages.button( reverse('wagtailadmin_pages:edit', args=(page_id,)), @@ -893,7 +902,7 @@ def approve_moderation(request, revision_id): if request.method == 'POST': revision.approve_moderation() messages.success(request, _("Page '{0}' published.").format(revision.page.get_admin_display_title()), buttons=[ - messages.button(revision.page.url, _('View live')), + messages.button(revision.page.url, _('View live'), new_window=True), messages.button(reverse('wagtailadmin_pages:edit', args=(revision.page.id,)), _('Edit')) ]) if not send_notification(revision.id, 'approved', request.user.pk):