Added function to return a translatable label for a permission object

This commit is contained in:
Roberto Rosario
2011-10-24 20:35:32 -04:00
parent acd23eebab
commit f0f924a1d4

View File

@@ -22,6 +22,8 @@ namespace_titles = {
'permissions': _(u'Permissions')
}
permission_titles = {}
def set_namespace_title(namespace, title):
namespace_titles.setdefault(namespace, title)
@@ -34,6 +36,7 @@ def register_permission(permission):
namespace=permission['namespace'], name=permission['name'])
permission_obj.label = unicode(permission['label'])
permission_obj.save()
permission_titles['%s.%s' % (permission['namespace'], permission['name'])] = permission['label']
except DatabaseError:
transaction.rollback()
# Special case for ./manage.py syncdb
@@ -54,6 +57,11 @@ def check_permissions(requester, permission_list):
raise PermissionDenied(ugettext(u'Insufficient permissions.'))
def get_permission_label(permission):
return unicode(permission_titles.get('%s.%s' % (permission.namespace, permission.name), permission.label))
register_permission(PERMISSION_ROLE_VIEW)
register_permission(PERMISSION_ROLE_EDIT)
register_permission(PERMISSION_ROLE_CREATE)