kopia lustrzana https://github.com/wagtail/wagtail
Move the lock switch to the page actions
rodzic
24cbaeefd4
commit
3630170d54
|
@ -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),
|
||||
|
|
|
@ -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>
|
|
@ -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>
|
|
@ -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>
|
||||
|
|
Ładowanie…
Reference in New Issue