Mercurial > hg > agora-dellsystem
view middleware/http.py @ 158:d14822d10833
Fix line-wrapping and whitespace for snippets
This had been fixed before but I accidentally broke it when trying to
remove something else
author | dellsystem <ilostwaldo@gmail.com> |
---|---|
date | Mon, 15 Oct 2012 01:51:22 -0400 |
parents | 290dd9208cc4 |
children |
line wrap: on
line source
from django.template import RequestContext from django.conf import settings from django.core.exceptions import PermissionDenied from django.http import HttpResponseForbidden from django.template import loader class Http403(Exception): pass def render_to_403(*args, **kwargs): """ Returns a HttpResponseForbidden whose content is filled with the result of calling django.template.loader.render_to_string() with the passed arguments. """ if not isinstance(args,list): args = [] args.append('403.html') httpresponse_kwargs = {'mimetype': kwargs.pop('mimetype', None)} response = HttpResponseForbidden(loader.render_to_string(*args, **kwargs), **httpresponse_kwargs) return response class Http403Middleware(object): def process_exception(self,request,exception): if isinstance(exception,Http403): return render_to_403(context_instance=RequestContext(request))