diff --git a/apps/permissions/middleware/permissiondeniedmiddleware.py b/apps/permissions/middleware/permissiondeniedmiddleware.py index 508db6b882..e4e0cac081 100644 --- a/apps/permissions/middleware/permissiondeniedmiddleware.py +++ b/apps/permissions/middleware/permissiondeniedmiddleware.py @@ -8,36 +8,33 @@ from django.utils.importlib import import_module class PermissionDeniedMiddleware(object): def process_exception(self, request, exception): if isinstance(exception, PermissionDenied): - if settings.DEBUG: - raise PermissionDenied - else: + try: + # Handle import error but allow any type error from view + callback = getattr(import_module(settings.ROOT_URLCONF),'handler403') + return callback(request,exception) + except (ImportError,AttributeError): + # Try to get a 403 template try: - # Handle import error but allow any type error from view - callback = getattr(import_module(settings.ROOT_URLCONF),'handler403') - return callback(request,exception) - except (ImportError,AttributeError): - # Try to get a 403 template - try: - # First look for a user-defined template named "403.html" - t = loader.get_template('403.html') - except TemplateDoesNotExist: - # If a template doesn't exist in the projct, use the following hardcoded template - t = Template("""{% load i18n %} - - -
-