def page_listing_more_buttons(page, page_perms, is_parent=False): if page_perms.can_move(): yield Button(_('Move'), reverse('wagtailadmin_pages:move', args=[page.id]), attrs={"title": _('Move this page')}, priority=10) if not page.is_root(): yield Button(_('Copy'), reverse('wagtailadmin_pages:copy', args=[page.id]), attrs={'title': _('Copy this page')}, priority=20) if page_perms.can_delete(): yield Button(_('Delete'), reverse('wagtailadmin_pages:delete', args=[page.id]), attrs={'title': _('Delete this page')}, priority=30) if page_perms.can_unpublish(): yield Button(_('Unpublish'), reverse('wagtailadmin_pages:unpublish', args=[page.id]), attrs={'title': _('Unpublish this page')}, priority=40) yield Button(_('Revisions'), reverse('wagtailadmin_pages:revisions_index', args=[page.id]), attrs={'title': _("View this page's revision history")}, priority=50)
def page_listing_more_buttons(page, page_perms, is_parent=False): """Adds a 'more' button to personalisable pages allowing users to quickly create a new variant for the selected segment. """ if not isinstance(page, models.PersonalisablePageMixin): return metadata = page.personalisation_metadata for vm in metadata.variants_metadata: yield Button('%s variant' % (vm.segment.name), reverse('wagtailadmin_pages:edit', args=[vm.variant_id]), attrs={"title": _('Edit this variant')}, classes=("icon", "icon-fa-pencil"), priority=0) for segment in metadata.get_unused_segments(): yield Button('%s variant' % (segment.name), reverse('segment:copy_page', args=[page.pk, segment.pk]), attrs={"title": _('Create this variant')}, classes=("icon", "icon-fa-plus"), priority=100) yield Button(_('Create a new segment'), reverse('wagtail_personalisation_segment_modeladmin_create'), attrs={"title": _('Create a new segment')}, classes=("icon", "icon-fa-snowflake-o"), priority=200)
def page_listing_more_buttons(page, page_perms, is_parent=False): if page_perms.can_move(): yield Button(_('Move'), reverse('wagtailadmin_pages:move', args=[page.id]), priority=10) if not page.is_root(): yield Button(_('Copy'), reverse('wagtailadmin_pages:copy', args=[page.id]), priority=20) if page_perms.can_delete(): yield Button(_('Delete'), reverse('wagtailadmin_pages:delete', args=[page.id]), priority=30) if page_perms.can_unpublish(): yield Button(_('Unpublish'), reverse('wagtailadmin_pages:unpublish', args=[page.id]), priority=40)
def page_listing_buttons(page, page_perms, is_parent=False): if page_perms.can_edit(): yield PageListingButton(_('Edit'), reverse('wagtailadmin_pages:edit', args=[page.id]), attrs={'title': _('Edit this page')}, priority=10) if page.has_unpublished_changes: yield PageListingButton(_('Draft'), reverse('wagtailadmin_pages:view_draft', args=[page.id]), attrs={ 'title': _('Preview draft'), 'target': '_blank' }, priority=20) if page.live and page.url: yield PageListingButton(_('Live'), page.url, attrs={ 'target': "_blank", 'title': _('View live') }, priority=30) if page_perms.can_add_subpage(): if is_parent: yield Button(_('Add child page'), reverse('wagtailadmin_pages:add_subpage', args=[page.id]), attrs={ 'title': _("Add a child page to '{0}' ".format(page.title)) }, classes={ 'button', 'button-small', 'bicolor', 'icon', 'white', 'icon-plus' }, priority=40) else: yield PageListingButton(_('Add child page'), reverse('wagtailadmin_pages:add_subpage', args=[page.id]), attrs={ 'title': _("Add a child page to '{0}' ".format( page.title)) }, priority=40) yield ButtonWithDropdownFromHook( _('More'), hook_name='register_page_listing_more_buttons', page=page, page_perms=page_perms, is_parent=is_parent, attrs={ 'target': '_blank', 'title': _('View more options') }, priority=50)
def page_listing_more_buttons(page, page_perms, is_parent=False): if page_perms.can_move(): yield Button(_('Move'), reverse('wagtailadmin_pages:move', args=[page.id]), attrs={ "title": _("Move page '{title}'").format( title=page.get_admin_display_title()) }, priority=10) if not page.is_root(): yield Button(_('Copy'), reverse('wagtailadmin_pages:copy', args=[page.id]), attrs={ 'title': _("Copy page '{title}'").format( title=page.get_admin_display_title()) }, priority=20) if page_perms.can_delete(): yield Button(_('Delete'), reverse('wagtailadmin_pages:delete', args=[page.id]), attrs={ 'title': _("Delete page '{title}'").format( title=page.get_admin_display_title()) }, priority=30) if page_perms.can_unpublish(): yield Button(_('Unpublish'), reverse('wagtailadmin_pages:unpublish', args=[page.id]), attrs={ 'title': _("Unpublish page '{title}'").format( title=page.get_admin_display_title()) }, priority=40) if not page.is_root(): yield Button(_('Revisions'), reverse('wagtailadmin_pages:revisions_index', args=[page.id]), attrs={ 'title': _("View revision history for '{title}'").format( title=page.get_admin_display_title()) }, priority=50)
def page_listing_more_buttons(page, page_perms, is_parent=False): """Adds a 'more' button to personalisable pages allowing users to quickly create a new variant for the selected segment. """ for segment in page.get_unused_segments(): yield Button(segment.name, reverse('segment:copy_page', args=[page.pk, segment.pk]), attrs={"title": _('Create this variant')})
def page_listing_more_buttons(page, page_perms, is_parent=False): """Adds a 'more' button to personalisable pages allowing users to quickly create a new variant for the selected segment. """ segments = Segment.objects.all() available_segments = [ item for item in segments if not PersonalisablePage.objects.filter(segment=item, pk=page.pk) ] for segment in available_segments: yield Button(segment.name, reverse('segment:copy_page', args=[page.id, segment.id]), attrs={"title": _('Create this variant')})