discoverer.py 600 B

1234567891011121314151617
  1. from importlib import import_module
  2. from django.apps import apps
  3. from .hierarchy import site
  4. from .urlpatterns import urlpatterns
  5. def discover_misago_admin():
  6. for app in apps.get_app_configs():
  7. module = import_module(app.name)
  8. if hasattr(module, 'admin'):
  9. admin_module = import_module('%s.admin' % app.name)
  10. if hasattr(admin_module, 'MisagoAdminExtension'):
  11. extension = getattr(admin_module, 'MisagoAdminExtension')()
  12. extension.register_navigation_nodes(site)
  13. extension.register_urlpatterns(urlpatterns)