diff --git a/rhodecode/apps/admin/__init__.py b/rhodecode/apps/admin/__init__.py --- a/rhodecode/apps/admin/__init__.py +++ b/rhodecode/apps/admin/__init__.py @@ -19,7 +19,6 @@ # and proprietary license terms, please see https://rhodecode.com/licenses/ -from rhodecode.apps.admin.navigation import NavigationRegistry from rhodecode.apps._base import ADMIN_PREFIX from rhodecode.lib.utils2 import str2bool @@ -310,12 +309,10 @@ def admin_routes(config): def includeme(config): - settings = config.get_settings() + from rhodecode.apps.admin.navigation import includeme as nav_includeme # Create admin navigation registry and add it to the pyramid registry. - labs_active = str2bool(settings.get('labs_settings_active', False)) - navigation_registry = NavigationRegistry(labs_active=labs_active) - config.registry.registerUtility(navigation_registry) + nav_includeme(config) # main admin routes config.add_route(name='admin_home', pattern=ADMIN_PREFIX) diff --git a/rhodecode/apps/admin/navigation.py b/rhodecode/apps/admin/navigation.py --- a/rhodecode/apps/admin/navigation.py +++ b/rhodecode/apps/admin/navigation.py @@ -26,6 +26,7 @@ from zope.interface import implementer from rhodecode.apps.admin.interfaces import IAdminNavigationRegistry from rhodecode.lib.utils import get_registry +from rhodecode.lib.utils2 import str2bool from rhodecode.translation import _ @@ -137,3 +138,11 @@ def navigation_list(request): Helper that returns the admin navigation as list of NavListEntry objects. """ return navigation_registry(request).get_navlist(request) + + +def includeme(config): + # Create admin navigation registry and add it to the pyramid registry. + settings = config.get_settings() + labs_active = str2bool(settings.get('labs_settings_active', False)) + navigation_registry = NavigationRegistry(labs_active=labs_active) + config.registry.registerUtility(navigation_registry) \ No newline at end of file