summaryrefslogtreecommitdiff
path: root/django/middleware
diff options
context:
space:
mode:
Diffstat (limited to 'django/middleware')
-rw-r--r--django/middleware/common.py3
-rw-r--r--django/middleware/doc.py9
2 files changed, 7 insertions, 5 deletions
diff --git a/django/middleware/common.py b/django/middleware/common.py
index d63b71fed7..4f060b8590 100644
--- a/django/middleware/common.py
+++ b/django/middleware/common.py
@@ -64,8 +64,9 @@ class CommonMiddleware(object):
is_internal = referer and (domain in referer)
path = request.get_full_path()
if referer and not _is_ignorable_404(path) and (is_internal or '?' not in referer):
+ ua = request.META.get('HTTP_USER_AGENT','<none>')
mail_managers("Broken %slink on %s" % ((is_internal and 'INTERNAL ' or ''), domain),
- "Referrer: %s\nRequested URL: %s\n" % (referer, request.get_full_path()))
+ "Referrer: %s\nRequested URL: %s\nUser Agent: %s\n" % (referer, request.get_full_path(), ua))
return response
# Use ETags, if requested.
diff --git a/django/middleware/doc.py b/django/middleware/doc.py
index 6600e588cd..48c155c392 100644
--- a/django/middleware/doc.py
+++ b/django/middleware/doc.py
@@ -7,11 +7,12 @@ class XViewMiddleware(object):
"""
def process_view(self, request, view_func, view_args, view_kwargs):
"""
- If the request method is HEAD and the IP is internal, quickly return
- with an x-header indicating the view function. This is used by the
- documentation module to lookup the view function for an arbitrary page.
+ If the request method is HEAD and either the IP is internal or the
+ user is a logged-in staff member, quickly return with an x-header
+ indicating the view function. This is used by the documentation module
+ to lookup the view function for an arbitrary page.
"""
- if request.method == 'HEAD' and request.META.get('REMOTE_ADDR') in settings.INTERNAL_IPS:
+ if request.method == 'HEAD' and (request.META.get('REMOTE_ADDR') in settings.INTERNAL_IPS or (request.user.is_authenticated() and request.user.is_staff)):
response = http.HttpResponse()
response['X-View'] = "%s.%s" % (view_func.__module__, view_func.__name__)
return response