mirror of
https://github.com/zulip/zulip.git
synced 2025-11-07 23:43:43 +00:00
Wrapping render_to_response never actually worked correctly. On the login page, mixpanel_token would be missing, but we wouldn't get an error because it is surrounded by double quotes, which meant that it was still valid Javascript. (imported from commit 820ee42fab8f679983e5a3a4309a2feaf690f20f)
31 lines
999 B
Python
31 lines
999 B
Python
from __future__ import absolute_import
|
|
|
|
from django.http import HttpResponse, HttpResponseNotAllowed
|
|
import simplejson
|
|
|
|
class HttpResponseUnauthorized(HttpResponse):
|
|
status_code = 401
|
|
|
|
def __init__(self, realm):
|
|
HttpResponse.__init__(self)
|
|
self["WWW-Authenticate"] = 'Basic realm="%s"' % realm
|
|
|
|
def json_method_not_allowed(methods):
|
|
resp = HttpResponseNotAllowed(methods)
|
|
resp.content = simplejson.dumps({"result": "error",
|
|
"msg": "Method Not Allowed",
|
|
"allowed_methods": methods})
|
|
return resp
|
|
|
|
def json_response(res_type="success", msg="", data={}, status=200):
|
|
content = {"result": res_type, "msg": msg}
|
|
content.update(data)
|
|
return HttpResponse(content=simplejson.dumps(content),
|
|
mimetype='application/json', status=status)
|
|
|
|
def json_success(data={}):
|
|
return json_response(data=data)
|
|
|
|
def json_error(msg, data={}, status=400):
|
|
return json_response(res_type="error", msg=msg, data=data, status=status)
|