From 5e1936c24b1b671310e0d3edf6c7cabb64a9cf29 Mon Sep 17 00:00:00 2001 From: Roberto Rosario Date: Thu, 18 Aug 2011 19:38:52 -0400 Subject: [PATCH] Moved the new button link widget to the navigation app and made it more generic --- apps/{project_setup => navigation}/widgets.py | 18 +++++++++--------- apps/project_setup/views.py | 5 +++-- apps/project_tools/views.py | 5 +++-- 3 files changed, 15 insertions(+), 13 deletions(-) rename apps/{project_setup => navigation}/widgets.py (63%) diff --git a/apps/project_setup/widgets.py b/apps/navigation/widgets.py similarity index 63% rename from apps/project_setup/widgets.py rename to apps/navigation/widgets.py index 2ea0e786f7..949fae4dd3 100644 --- a/apps/project_setup/widgets.py +++ b/apps/navigation/widgets.py @@ -8,22 +8,22 @@ from django.core.exceptions import PermissionDenied from permissions.api import check_permissions -def setup_button_widget(request, setup_link): - if 'permissions' in setup_link: +def button_navigation_widget(request, link): + if 'permissions' in link: try: - check_permissions(request.user, setup_link['permissions']) - return render_widget(setup_link) + check_permissions(request.user, link['permissions']) + return render_widget(link) except PermissionDenied: return u'' else: - return render_widget(setup_link) + return render_widget(link) -def render_widget(setup_link): +def render_widget(link): return mark_safe(u'' % { - 'url': reverse(setup_link['view']) if 'view' in setup_link else setup_link['url'], - 'icon': setup_link.get('icon', 'link_button.png'), + 'url': reverse(link['view']) if 'view' in link else link['url'], + 'icon': link.get('icon', 'link_button.png'), 'static_url': settings.STATIC_URL, - 'string': capfirst(setup_link['text']), + 'string': capfirst(link['text']), 'image_alt': _(u'icon'), }) diff --git a/apps/project_setup/views.py b/apps/project_setup/views.py index 757b78326f..82f45ac40a 100644 --- a/apps/project_setup/views.py +++ b/apps/project_setup/views.py @@ -2,13 +2,14 @@ from django.shortcuts import render_to_response, get_object_or_404 from django.template import RequestContext from django.utils.translation import ugettext_lazy as _ +from navigation.widgets import button_navigation_widget + from project_setup.api import setup_items -from project_setup.widgets import setup_button_widget def setup_list(request): context = { - 'object_list': [setup_button_widget(request, item) for item in setup_items], + 'object_list': [button_navigation_widget(request, item) for item in setup_items], 'title': _(u'setup items'), } diff --git a/apps/project_tools/views.py b/apps/project_tools/views.py index 19b01da3f6..8bba4fc024 100644 --- a/apps/project_tools/views.py +++ b/apps/project_tools/views.py @@ -2,13 +2,14 @@ from django.shortcuts import render_to_response, get_object_or_404 from django.template import RequestContext from django.utils.translation import ugettext_lazy as _ +from navigation.widgets import button_navigation_widget + from project_tools.api import tool_items -from project_setup.widgets import setup_button_widget def tools_list(request): context = { - 'object_list': [setup_button_widget(request, item) for item in tool_items], + 'object_list': [button_navigation_widget(request, item) for item in tool_items], 'title': _(u'tools'), }