diff --git a/example/urls.py b/example/urls.py index 037b21c..5be6765 100644 --- a/example/urls.py +++ b/example/urls.py @@ -2,8 +2,10 @@ from django.conf.urls.defaults import patterns, include, handler500 from django.conf import settings from django.contrib import admin +import authority admin.autodiscover() +authority.autodiscover() handler500 # Pyflakes diff --git a/src/authority/__init__.py b/src/authority/__init__.py index 824442b..54896bb 100644 --- a/src/authority/__init__.py +++ b/src/authority/__init__.py @@ -1,7 +1,4 @@ -from inspect import isfunction, getmembers -from django.utils.importlib import import_module -from django.core.exceptions import ImproperlyConfigured - +import sys LOADING = False def autodiscover(): @@ -18,14 +15,15 @@ def autodiscover(): from django.conf import settings for app in settings.INSTALLED_APPS: - print "checking %s" % app try: - app_path = import_module(app).__path__ + __import__(app) + app_path = sys.modules[app].__path__ except AttributeError: continue try: imp.find_module('permissions', app_path) except ImportError: continue - import_module("%s.permissions" % app) + __import__("%s.permissions" % app) + app_path = sys.modules["%s.permissions" % app] LOADING = False diff --git a/src/authority/templatetags/permissions.py b/src/authority/templatetags/permissions.py index 26216c1..64aeaca 100644 --- a/src/authority/templatetags/permissions.py +++ b/src/authority/templatetags/permissions.py @@ -1,13 +1,11 @@ from django import template -from django.db.models import get_app -from django.core.exceptions import ImproperlyConfigured from django.core.urlresolvers import reverse -from django.template import Library, Node, Variable +from django.core.exceptions import ImproperlyConfigured from django.contrib.auth.models import User, AnonymousUser from authority import permissions -from authority.views import add_url_for_obj from authority.models import Permission +from authority.views import add_url_for_obj from authority.forms import UserPermissionForm register = template.Library() @@ -131,9 +129,8 @@ def permission_form(context, obj, perm=None): } return {'form': None} -class PermissionForObjectNode(Node): +class PermissionForObjectNode(template.Node): def __init__(self, obj, user, var_name): - print obj, user, var_name self.obj = obj self.user = user self.var_name = var_name @@ -145,7 +142,7 @@ class PermissionForObjectNode(Node): if var[0] in ('"', "'") and var[-1] == var[0]: return var[1:-1] else: - return Variable(var).resolve(context) + return template.Variable(var).resolve(context) def render(self, context): obj = self.resolve(self.obj, context)