mirror of
https://github.com/Hopiu/wagtail.git
synced 2026-05-11 16:53:10 +00:00
Have wagtailforms register its urls / menu item via hooks, so that wagtailadmin doesn't fail if wagtailforms is absent from INSTALLED_APPS
This commit is contained in:
parent
71e45dee23
commit
5293a6942f
2 changed files with 24 additions and 6 deletions
|
|
@ -8,7 +8,6 @@ from wagtail.wagtailadmin.menu import MenuItem
|
|||
from wagtail.wagtailcore.models import get_navigation_menu_items, UserPagePermissionsProxy
|
||||
from wagtail.wagtailcore.util import camelcase_to_underscore
|
||||
|
||||
from wagtail.wagtailforms.models import get_form_types
|
||||
|
||||
register = template.Library()
|
||||
|
||||
|
|
@ -47,11 +46,6 @@ def main_nav(context):
|
|||
|
||||
request = context['request']
|
||||
|
||||
if get_form_types(): # show this only if forms actually exist
|
||||
menu_items.append(
|
||||
MenuItem(_('Forms'), urlresolvers.reverse('wagtailforms_index'), classnames='icon icon-grip', order=700)
|
||||
)
|
||||
|
||||
for fn in hooks.get_hooks('construct_main_menu'):
|
||||
fn(request, menu_items)
|
||||
|
||||
|
|
|
|||
24
wagtail/wagtailforms/wagtail_hooks.py
Normal file
24
wagtail/wagtailforms/wagtail_hooks.py
Normal file
|
|
@ -0,0 +1,24 @@
|
|||
from django.core import urlresolvers
|
||||
from django.conf.urls import include, url
|
||||
from django.utils.translation import ugettext_lazy as _
|
||||
|
||||
from wagtail.wagtailadmin import hooks
|
||||
from wagtail.wagtailadmin.menu import MenuItem
|
||||
|
||||
from wagtail.wagtailforms import urls
|
||||
from wagtail.wagtailforms.models import get_form_types
|
||||
|
||||
|
||||
def register_admin_urls():
|
||||
return [
|
||||
url(r'^forms/', include(urls)),
|
||||
]
|
||||
hooks.register('register_admin_urls', register_admin_urls)
|
||||
|
||||
def construct_main_menu(request, menu_items):
|
||||
if get_form_types(): # show this only if forms actually exist.
|
||||
# TODO: Limit this to only show the menu item if the user has permission to access at least one form page
|
||||
menu_items.append(
|
||||
MenuItem(_('Forms'), urlresolvers.reverse('wagtailforms_index'), classnames='icon icon-grip', order=700)
|
||||
)
|
||||
hooks.register('construct_main_menu', construct_main_menu)
|
||||
Loading…
Reference in a new issue