From 6cce7e6dba8ec413358b74d46438ed3e44aa45f7 Mon Sep 17 00:00:00 2001 From: Fabien Meghazi Date: Tue, 18 Feb 2014 17:18:06 +0100 Subject: [PATCH] [REM] Removed LazyResponse from webclient, use request.render() instead bzr revid: fme@openerp.com-20140218161806-j7qn4dutjtlfqjc1 --- addons/web/controllers/main.py | 28 ++++++++++++---------------- 1 file changed, 12 insertions(+), 16 deletions(-) diff --git a/addons/web/controllers/main.py b/addons/web/controllers/main.py index e463fec12e3..39a1df2b97f 100644 --- a/addons/web/controllers/main.py +++ b/addons/web/controllers/main.py @@ -33,7 +33,7 @@ import openerp.modules.registry from openerp.tools.translate import _ from openerp import http -from openerp.http import request, serialize_exception as _serialize_exception, LazyResponse +from openerp.http import request, serialize_exception as _serialize_exception _logger = logging.getLogger(__name__) @@ -591,12 +591,13 @@ html_template = """ """ -def render_bootstrap_template(db, template, values=None, debug=False, lazy=False, **kw): - if request and request.debug: +def render_bootstrap_template(template, values=None, debug=False, db=None, **kw): + if not db: + db = request.db + if request.debug: debug = True if values is None: values = {} - values.update(kw) values['debug'] = debug values['current_db'] = db try: @@ -612,15 +613,7 @@ def render_bootstrap_template(db, template, values=None, debug=False, lazy=False values['modules'] = module_boot(db=db) values['modules'] = simplejson.dumps(values['modules']) - def callback(template, values): - registry = openerp.modules.registry.RegistryManager.get(db) - with registry.cursor() as cr: - view_obj = registry["ir.ui.view"] - return view_obj.render(cr, openerp.SUPERUSER_ID, template, values) - if lazy: - return LazyResponse(callback, template=template, values=values) - else: - return callback(template, values) + return request.render(template, values, uid=openerp.SUPERUSER_ID, **kw) class Home(http.Controller): @@ -633,8 +626,11 @@ class Home(http.Controller): ensure_db() if request.session.uid: - html = render_bootstrap_template(request.session.db, "web.webclient_bootstrap") - return request.make_response(html, {'Cache-Control': 'no-cache', 'Content-Type': 'text/html; charset=utf-8'}) + headers = { + 'Cache-Control': 'no-cache', + 'Content-Type': 'text/html; charset=utf-8', + } + return render_bootstrap_template("web.webclient_bootstrap", headers=headers) else: return http.local_redirect('/web/login', query=request.params) @@ -651,7 +647,7 @@ class Home(http.Controller): if uid is not False: return http.redirect_with_hash(redirect) values['error'] = "Wrong login/password" - return render_bootstrap_template(request.session.db, 'web.login', values, lazy=True) + return render_bootstrap_template('web.login', values) @http.route('/login', type='http', auth="none") def login(self, db, login, key, redirect="/web", **kw):