summaryrefslogtreecommitdiff
path: root/addons/web/controllers
diff options
context:
space:
mode:
Diffstat (limited to 'addons/web/controllers')
-rw-r--r--addons/web/controllers/main.py17
1 files changed, 16 insertions, 1 deletions
diff --git a/addons/web/controllers/main.py b/addons/web/controllers/main.py
index 09b5299a555..fc9ae1dec16 100644
--- a/addons/web/controllers/main.py
+++ b/addons/web/controllers/main.py
@@ -10,6 +10,7 @@ import os
import re
import simplejson
import time
+import urllib2
import xmlrpclib
import zlib
from xml.etree import ElementTree
@@ -242,6 +243,21 @@ class WebClient(openerpweb.Controller):
"version": web.common.release.version
}
+class Proxy(openerpweb.Controller):
+ _cp_path = '/web/proxy'
+
+ @openerpweb.jsonrequest
+ def load(self, req, path):
+ #req.config.socket_port
+ #if not re.match('^/[^/]+/static/.*', path):
+ # return werkzeug.exceptions.BadRequest()
+
+ env = req.httprequest.environ
+ port = env['SERVER_PORT']
+
+ o = urllib2.urlopen('http://127.0.0.1:%s%s' % (port, path))
+ return o.read()
+
class Database(openerpweb.Controller):
_cp_path = "/web/database"
@@ -359,7 +375,6 @@ class Session(openerpweb.Controller):
@openerpweb.jsonrequest
def get_session_info(self, req):
- req.session.assert_valid(force=True)
return {
"uid": req.session._uid,
"context": req.session.get_context() if req.session._uid else False,