fix httprequest for web_chat
bzr revid: al@openerp.com-20110407024748-g2gf4u854qsu4eny
This commit is contained in:
parent
e255b79f8a
commit
df73cbb7a8
|
@ -714,6 +714,7 @@ openerp.base.form.FieldOne2Many = openerp.base.form.Field.extend({
|
|||
this.value = value;
|
||||
this.log("o2m.set_value",value);
|
||||
this.viewmanager.dataset.ids = value;
|
||||
this.viewmanager.dataset.ids.count = value.length;
|
||||
this.viewmanager.views.list.controller.do_update();
|
||||
},
|
||||
get_value: function(value) {
|
||||
|
|
|
@ -292,7 +292,7 @@ class JsonRequest(object):
|
|||
:returns: a string-encoded JSON-RPC2 reply
|
||||
:rtype: bytes
|
||||
'''
|
||||
# Read POST content of POST parameter named request
|
||||
# Read POST content or POST Form Data named "request"
|
||||
if requestf:
|
||||
request = simplejson.load(requestf, object_hook=nonliterals.non_literal_decoder)
|
||||
else:
|
||||
|
@ -348,31 +348,30 @@ class JsonRequest(object):
|
|||
def jsonrequest(f):
|
||||
@cherrypy.expose
|
||||
@functools.wraps(f)
|
||||
def json_handler(self):
|
||||
return JsonRequest().dispatch(self, f, requestf=cherrypy.request.body)
|
||||
def json_handler(controller):
|
||||
return JsonRequest().dispatch(controller, f, requestf=cherrypy.request.body)
|
||||
|
||||
return json_handler
|
||||
|
||||
class HttpRequest(object):
|
||||
""" Regular GET/POST request
|
||||
"""
|
||||
|
||||
def __init__(self):
|
||||
# result may be filled, it's content will be updated by the return
|
||||
# value of the dispatched function if it's a dict
|
||||
def dispatch(self, controller, f, request, **kw):
|
||||
self.request = request
|
||||
self.httpsession_id = "cookieid"
|
||||
self.httpsession = cherrypy.session
|
||||
self.result = ""
|
||||
|
||||
def dispatch(self, controller, f, request):
|
||||
print "GET/POST --> %s.%s %s" % (controller.__class__.__name__, f.__name__, request)
|
||||
r = f(controller, self, request)
|
||||
print "GET/POST --> %s.%s %s %r" % (controller.__class__.__name__, f.__name__, request, kw)
|
||||
r = f(controller, self, **kw)
|
||||
return r
|
||||
|
||||
def httprequest(f):
|
||||
# check cleaner wrapping:
|
||||
# functools.wraps(f)(lambda x: JsonRequest().dispatch(x, f))
|
||||
l = lambda self, request: HttpRequest().dispatch(self, f, request)
|
||||
l.exposed = 1
|
||||
return l
|
||||
def http_handler(self,*l, **kw):
|
||||
HttpRequest().dispatch(self, f, cherrypy.request, **kw)
|
||||
http_handler.exposed = 1
|
||||
return http_handler
|
||||
|
||||
#-----------------------------------------------------------
|
||||
# Cherrypy stuff
|
||||
|
|
Loading…
Reference in New Issue