Setup of page listing hook
Signed-off-by: Jasper Berghoef <jasper.berghoef@gmail.com>
This commit is contained in:
committed by
Boris Besemer
parent
a8d0edf0b6
commit
94bbe40351
@ -4,8 +4,12 @@ import logging
|
|||||||
|
|
||||||
from django.shortcuts import reverse
|
from django.shortcuts import reverse
|
||||||
from django.conf.urls import include, url
|
from django.conf.urls import include, url
|
||||||
|
from django.core.urlresolvers import reverse
|
||||||
|
from django.utils.translation import ugettext_lazy as _
|
||||||
from wagtail.contrib.modeladmin.options import ModelAdmin, modeladmin_register
|
from wagtail.contrib.modeladmin.options import ModelAdmin, modeladmin_register
|
||||||
from wagtail.contrib.modeladmin.views import IndexView
|
from wagtail.contrib.modeladmin.views import IndexView
|
||||||
|
from wagtail.wagtailadmin.widgets import (
|
||||||
|
Button, ButtonWithDropdownFromHook, PageListingButton)
|
||||||
from wagtail.wagtailcore import hooks
|
from wagtail.wagtailcore import hooks
|
||||||
|
|
||||||
from personalisation import admin_urls
|
from personalisation import admin_urls
|
||||||
@ -68,6 +72,7 @@ def set_visit_count(page, request, serve_args, serve_kwargs):
|
|||||||
# No counters exist. Create a new counter with count value 1.
|
# No counters exist. Create a new counter with count value 1.
|
||||||
create_new_counter(page, request)
|
create_new_counter(page, request)
|
||||||
|
|
||||||
|
|
||||||
@hooks.register('before_serve_page')
|
@hooks.register('before_serve_page')
|
||||||
def segment_user(page, request, serve_args, serve_kwargs):
|
def segment_user(page, request, serve_args, serve_kwargs):
|
||||||
request.session['segments'] = []
|
request.session['segments'] = []
|
||||||
@ -172,3 +177,22 @@ def _check_for_variations(segments, page):
|
|||||||
return variation
|
return variation
|
||||||
|
|
||||||
return None
|
return None
|
||||||
|
|
||||||
|
|
||||||
|
@hooks.register('register_page_listing_buttons')
|
||||||
|
def page_listing_variant_buttons(page, page_perms, is_parent=False):
|
||||||
|
yield ButtonWithDropdownFromHook(
|
||||||
|
_('Variants'),
|
||||||
|
hook_name='register_page_listing_variant_buttons',
|
||||||
|
page=page,
|
||||||
|
page_perms=page_perms,
|
||||||
|
is_parent=is_parent,
|
||||||
|
attrs={'target': '_blank', 'title': _('Create a new variant')}, priority=100)
|
||||||
|
|
||||||
|
|
||||||
|
@hooks.register('register_page_listing_variant_buttons')
|
||||||
|
def page_listing_more_buttons(page, page_perms, is_parent=False):
|
||||||
|
segments = Segment.objects.all()
|
||||||
|
for segment in segments:
|
||||||
|
yield Button(segment.name, reverse('wagtailadmin_pages:copy', args=[page.id]),
|
||||||
|
attrs={"title": _('Create this variant')})
|
||||||
|
Reference in New Issue
Block a user