Move the lock switch to the page actions

pull/6257/head
Dan Braghis 2020-06-15 17:02:13 +01:00 zatwierdzone przez Matt Westcott
rodzic 24cbaeefd4
commit 3630170d54
4 zmienionych plików z 49 dodań i 37 usunięć

Wyświetl plik

@ -193,6 +193,46 @@ class DeleteMenuItem(ActionMenuItem):
return reverse('wagtailadmin_pages:delete', args=(context['page'].id,))
class LockMenuItem(ActionMenuItem):
name = 'action-lock'
label = _("Lock")
aria_label = _("Apply editor lock")
icon_name = 'lock'
template = 'wagtailadmin/pages/action_menu/lock_unlock_menu_item.html'
def is_shown(self, request, context):
return (
context['view'] == 'edit'
and not context['page'].locked
and context['user_page_permissions'].for_page(context['page']).can_lock()
)
def get_url(self, request, context):
return reverse('wagtailadmin_pages:lock', args=(context['page'].id,))
def render_html(self, request, parent_context):
context = self.get_context(request, parent_context)
context['aria_label'] = self.aria_label
return render_to_string(self.template, context, request=request)
class UnlockMenuItem(LockMenuItem):
name = 'action-unlock'
label = _("Unlock")
aria_label = _("Apply editor lock")
icon_name = 'lock-open'
def is_shown(self, request, context):
return (
context['view'] == 'edit'
and context['page'].locked
and context['user_page_permissions'].for_page(context['page']).can_unlock()
)
def get_url(self, request, context):
return reverse('wagtailadmin_pages:unlock', args=(context['page'].id,))
class SaveDraftMenuItem(ActionMenuItem):
name = 'action-save-draft'
label = _("Save Draft")
@ -231,8 +271,10 @@ def _get_base_page_action_menu_items():
if BASE_PAGE_ACTION_MENU_ITEMS is None:
BASE_PAGE_ACTION_MENU_ITEMS = [
SaveDraftMenuItem(order=0),
UnpublishMenuItem(order=10),
DeleteMenuItem(order=20),
DeleteMenuItem(order=10),
LockMenuItem(order=15),
UnlockMenuItem(order=15),
UnpublishMenuItem(order=20),
PublishMenuItem(order=30),
CancelWorkflowMenuItem(order=40),
RestartWorkflowMenuItem(order=50),

Wyświetl plik

@ -1,31 +0,0 @@
{% load i18n wagtailadmin_tags %}
{% if not page_perms %}
{% page_permissions page as page_perms %}
{% endif %}
{% if page.locked and page_perms.can_unlock %}
{% url 'wagtailadmin_pages:unlock' page.id as form_action %}
{% elif not page.locked and page_perms.can_lock %}
{% url 'wagtailadmin_pages:lock' page.id as form_action %}
{% endif %}
<div class="lock-indicator {{ page.locked|yesno:'locked,unlocked' }}">
{% if page.locked %}
{% if page_perms.can_unlock %}
<button class="button button-nobg button-strokeonhover" data-locking-action="{{ form_action }}" aria-label="{% trans 'Remove editor lock' %}">
{% trans "Unlock" as unlock_text %}
{% icon name="lock" title=unlock_text class_name="default" %}
{% trans "Locked" %}
</button>
{% endif %}
{% else %}
{% if page_perms.can_lock %}
<button class="button button-nobg button-strokeonhover" data-locking-action="{{ form_action }}" aria-label="{% trans 'Apply editor lock' %}">
{% trans "Lock" as lock_text %}
{% icon name="lock-open" title=lock_text class_name="default" %}
{% trans "Unlocked" %}
</button>
{% endif %}
{% endif %}
</div>

Wyświetl plik

@ -0,0 +1,4 @@
{% load wagtailadmin_tags %}
<button class="button{% if classname %} {{ classname }}{% endif %}" data-locking-action="{{ url }}" aria-label="{{ aria_label }}">
{% if icon_name %}{% icon name=icon_name %}{% endif %}{{ label }}
</button>

Wyświetl plik

@ -52,7 +52,7 @@
<nav aria-label="{% trans 'Actions' %}">
<ul>
<li class="actions">
<div class="dropdown dropup dropdown-button dropdown-button--white match-width {% if is_revision %}warning{% endif %}">
<div class="dropdown dropup dropdown-button match-width {% if is_revision %}warning{% endif %}">
{{ action_menu.render_html }}
</div>
</li>
@ -78,9 +78,6 @@
</li>
{% endif %}
<li class="meta">
{% include "wagtailadmin/pages/_lock_switch.html" %}
</li>
{% block extra_footer_actions %}
{% endblock %}
</ul>