diff --git a/apps/main/api.py b/apps/main/api.py index 2f250eb470..8e3ae1f7a6 100644 --- a/apps/main/api.py +++ b/apps/main/api.py @@ -14,9 +14,10 @@ def register_diagnostic(namespace, title, link): diagnostics[namespace] = namespace_dict -def register_maintenance(link, title=None, namespace=None): +def register_maintenance_links(links, title=None, namespace=None): namespace_dict = tools.get(namespace, {'title': None, 'links': []}) namespace_dict['title'] = title - link['url'] = link.get('url', reverse_lazy(link['view'])) - namespace_dict['links'].append(link) + for link in links: + link['url'] = link.get('url', reverse_lazy(link['view'])) + namespace_dict['links'].append(link) tools[namespace] = namespace_dict diff --git a/apps/main/views.py b/apps/main/views.py index 6a8bd805d3..f4ff678e46 100644 --- a/apps/main/views.py +++ b/apps/main/views.py @@ -24,14 +24,14 @@ def home(request): def maintenance_menu(request): user_tools = {} for namespace, values in tools.items(): + user_tools[namespace] = { + 'title': values['title'] + } + user_tools[namespace].setdefault('links', []) for link in values['links']: try: permissions = link.get('permissions', []) check_permissions(request.user, permissions) - user_tools[namespace] = { - 'title': values['title'] - } - user_tools[namespace].setdefault('links', []) user_tools[namespace]['links'].append(link) except PermissionDenied: pass