diff --git a/django-openstack/django_openstack/signals.py b/django-openstack/django_openstack/signals.py index b2c7e0681..dc5b1189f 100644 --- a/django-openstack/django_openstack/signals.py +++ b/django-openstack/django_openstack/signals.py @@ -1,11 +1,11 @@ import django.dispatch from django.dispatch import receiver -dash_apps_ping = django.dispatch.Signal() -dash_apps_urls = django.dispatch.Signal() +dash_modules_ping = django.dispatch.Signal() +dash_modules_urls = django.dispatch.Signal() -def dash_apps_detect(): +def dash_modules_detect(): """ Sends a pinging signal to the app, all listening modules will reply with items for the sidebar. @@ -20,13 +20,13 @@ def dash_apps_detect(): 'text':'Google', 'active_text': 'google'}], 'type': syspanel}) """ - return dash_apps_ping.send(sender=dash_apps_ping) + return dash_modules_ping.send(sender=dash_modules_ping) def dash_app_setup_urls(): """ Adds urls from modules """ - return dash_apps_urls.send(sender=dash_apps_urls) + return dash_modules_urls.send(sender=dash_modules_urls) diff --git a/django-openstack/django_openstack/templatetags/templatetags/sidebar_modules.py b/django-openstack/django_openstack/templatetags/templatetags/sidebar_modules.py index 244a4f1f4..fcae5ea64 100644 --- a/django-openstack/django_openstack/templatetags/templatetags/sidebar_modules.py +++ b/django-openstack/django_openstack/templatetags/templatetags/sidebar_modules.py @@ -6,13 +6,20 @@ register = template.Library() @register.inclusion_tag('_sidebar_module.html') def dash_sidebar_modules(request): - if signals.dash_apps_detect()[0][1]['type'] == "dash": - return {'modules': [module[1] for module in signals.dash_apps_detect()], - 'request': request } - + signals_call = signals.dash_modules_detect() + if signals_call: + if signals_call[0][1]['type'] == "dash": + return {'modules': [module[1] for module in signals_call], + 'request': request } + else: + return {} + @register.inclusion_tag('_sidebar_module.html') def syspanel_sidebar_modules(request): - if signals.dash_apps_detect()[0][1]['type'] == "syspanel": - return {'modules': [module[1] for module in signals.dash_apps_detect()], - 'request': request } - + signals_call = signals.dash_modules_detect() + if signals_call: + if signals_call[0][1]['type'] == "syspanel": + return {'modules': [module[1] for module in signals_call], + 'request': request } + else: + return {} diff --git a/django-openstack/django_openstack/urls.py b/django-openstack/django_openstack/urls.py index 8031eb8bd..d06d176af 100644 --- a/django-openstack/django_openstack/urls.py +++ b/django-openstack/django_openstack/urls.py @@ -29,5 +29,5 @@ urlpatterns = patterns('', ) # import urls from modules -for module_urls in dash_apps_urls.send(sender=dash_apps_urls): +for module_urls in dash_modules_urls.send(sender=dash_modules_urls): urlpatterns += module_urls[1].urlpatterns