Convert all remaining menu items to be globally-registered with an is_shown method

This commit is contained in:
Matt Westcott 2014-08-11 20:39:00 +01:00
parent 3c1c2805c7
commit ee71fff1b8
8 changed files with 57 additions and 48 deletions

View file

@ -15,8 +15,6 @@ def register_admin_urls():
]
@hooks.register('construct_main_menu')
def construct_main_menu(request, menu_items):
menu_items.append(
MenuItem(_('Styleguide'), urlresolvers.reverse('wagtailstyleguide'), classnames='icon icon-image', order=1000)
)
@hooks.register('register_admin_menu_item')
def register_styleguide_menu_item():
return MenuItem(_('Styleguide'), urlresolvers.reverse('wagtailstyleguide'), classnames='icon icon-image', order=1000)

View file

@ -17,12 +17,13 @@ def register_admin_urls():
]
@hooks.register('construct_main_menu')
def construct_main_menu(request, menu_items):
if request.user.has_perm('wagtaildocs.add_document'):
menu_items.append(
MenuItem(_('Documents'), urlresolvers.reverse('wagtaildocs_index'), classnames='icon icon-doc-full-inverse', order=400)
)
class DocumentsMenuItem(MenuItem):
def is_shown(self, request):
return request.user.has_perm('wagtaildocs.add_document')
@hooks.register('register_admin_menu_item')
def register_documents_menu_item():
return DocumentsMenuItem(_('Documents'), urlresolvers.reverse('wagtaildocs_index'), classnames='icon icon-doc-full-inverse', order=400)
@hooks.register('insert_editor_js')

View file

@ -15,13 +15,15 @@ def register_admin_urls():
url(r'^forms/', include(urls)),
]
@hooks.register('construct_main_menu')
def construct_main_menu(request, menu_items):
# show this only if the user has permission to retrieve submissions for at least one form
if get_forms_for_user(request.user).exists():
menu_items.append(
MenuItem(_('Forms'), urlresolvers.reverse('wagtailforms_index'), classnames='icon icon-form', order=700)
)
class FormsMenuItem(MenuItem):
def is_shown(self, request):
# show this only if the user has permission to retrieve submissions for at least one form
return get_forms_for_user(request.user).exists()
@hooks.register('register_admin_menu_item')
def register_forms_menu_item():
return FormsMenuItem(_('Forms'), urlresolvers.reverse('wagtailforms_index'), classnames='icon icon-form', order=700)
@hooks.register('insert_editor_js')
def editor_js():

View file

@ -59,10 +59,14 @@ def construct_main_menu(request, menu_items):
if not OLD_STYLE_URLCONF_CHECK_PASSED:
check_old_style_urlconf()
if request.user.has_perm('wagtailimages.add_image'):
menu_items.append(
MenuItem(_('Images'), urlresolvers.reverse('wagtailimages_index'), classnames='icon icon-image', order=300)
)
class ImagesMenuItem(MenuItem):
def is_shown(self, request):
return request.user.has_perm('wagtailimages.add_image')
@hooks.register('register_admin_menu_item')
def register_images_menu_item():
return ImagesMenuItem(_('Images'), urlresolvers.reverse('wagtailimages_index'), classnames='icon icon-image', order=300)
@hooks.register('insert_editor_js')

View file

@ -15,10 +15,11 @@ def register_admin_urls():
]
@hooks.register('construct_main_menu')
def construct_main_menu(request, menu_items):
# TEMPORARY: Only show if the user is a superuser
if request.user.is_superuser:
menu_items.append(
MenuItem(_('Redirects'), urlresolvers.reverse('wagtailredirects_index'), classnames='icon icon-redirect', order=800)
)
class RedirectsMenuItem(MenuItem):
def is_shown(self, request):
# TEMPORARY: Only show if the user is a superuser
return request.user.is_superuser
@hooks.register('register_admin_menu_item')
def register_redirects_menu_item():
return RedirectsMenuItem(_('Redirects'), urlresolvers.reverse('wagtailredirects_index'), classnames='icon icon-redirect', order=800)

View file

@ -15,10 +15,11 @@ def register_admin_urls():
]
@hooks.register('construct_main_menu')
def construct_main_menu(request, menu_items):
# TEMPORARY: Only show if the user is a superuser
if request.user.is_superuser:
menu_items.append(
MenuItem(_('Editors picks'), urlresolvers.reverse('wagtailsearch_editorspicks_index'), classnames='icon icon-pick', order=900)
)
class EditorsPicksMenuItem(MenuItem):
def is_shown(self, request):
# TEMPORARY: Only show if the user is a superuser
return request.user.is_superuser
@hooks.register('register_admin_menu_item')
def register_editors_picks_menu_item():
return EditorsPicksMenuItem(_('Editors picks'), urlresolvers.reverse('wagtailsearch_editorspicks_index'), classnames='icon icon-pick', order=900)

View file

@ -18,12 +18,13 @@ def register_admin_urls():
]
@hooks.register('construct_main_menu')
def construct_main_menu(request, menu_items):
if user_can_edit_snippets(request.user):
menu_items.append(
MenuItem(_('Snippets'), urlresolvers.reverse('wagtailsnippets_index'), classnames='icon icon-snippet', order=500)
)
class SnippetsMenuItem(MenuItem):
def is_shown(self, request):
return user_can_edit_snippets(request.user)
@hooks.register('register_admin_menu_item')
def register_snippets_menu_item():
return SnippetsMenuItem(_('Snippets'), urlresolvers.reverse('wagtailsnippets_index'), classnames='icon icon-snippet', order=500)
@hooks.register('insert_editor_js')

View file

@ -15,9 +15,10 @@ def register_admin_urls():
]
@hooks.register('construct_main_menu')
def construct_main_menu(request, menu_items):
if request.user.has_module_perms('auth'):
menu_items.append(
MenuItem(_('Users'), urlresolvers.reverse('wagtailusers_index'), classnames='icon icon-user', order=600)
)
class UsersMenuItem(MenuItem):
def is_shown(self, request):
return request.user.has_module_perms('auth')
@hooks.register('register_admin_menu_item')
def register_users_menu_item():
return UsersMenuItem(_('Users'), urlresolvers.reverse('wagtailusers_index'), classnames='icon icon-user', order=600)