summaryrefslogtreecommitdiff
path: root/addons/base/controllers/main.py
diff options
context:
space:
mode:
authorXavier Morel <xmo@openerp.com>2011-08-04 11:20:43 +0200
committerXavier Morel <xmo@openerp.com>2011-08-04 11:20:43 +0200
commit9bc6c66a2cfd8c4fa071a13aa8fbf5c301b77613 (patch)
treeea3ed2a0f595d9fa43f80882e9228718c2ea535a /addons/base/controllers/main.py
parentf048d3821b9c1b8cc97bfdc78ae0d57a12b11c5b (diff)
[IMP] don't recreate the home template from scratch every single time
bzr revid: xmo@openerp.com-20110804092043-rkc4zhj35za0wskz
Diffstat (limited to 'addons/base/controllers/main.py')
-rw-r--r--addons/base/controllers/main.py68
1 files changed, 37 insertions, 31 deletions
diff --git a/addons/base/controllers/main.py b/addons/base/controllers/main.py
index 6f63e5c7e24..178a804d0da 100644
--- a/addons/base/controllers/main.py
+++ b/addons/base/controllers/main.py
@@ -1,19 +1,23 @@
# -*- coding: utf-8 -*-
-import base64, glob, os, re
+import base64
+import csv
+import glob
+import operator
+import os
+import re
+import simplejson
+import textwrap
+import xmlrpclib
from xml.etree import ElementTree
from cStringIO import StringIO
-import operator
-import simplejson
+import cherrypy
import openerpweb
import openerpweb.ast
import openerpweb.nonliterals
-import cherrypy
-import xmlrpclib
-import csv
# Should move to openerpweb.Xml2Json
class Xml2Json:
@@ -86,6 +90,27 @@ def concat_files(file_list):
files_concat = "".join(files_content)
return files_concat
+home_template = textwrap.dedent("""<!DOCTYPE html>
+<html style="height: 100%%">
+ <head>
+ <meta http-equiv="content-type" content="text/html; charset=utf-8" />
+ <title>OpenERP</title>
+ %(javascript)s
+ <script type="text/javascript">
+ $(function() {
+ QWeb = new QWeb2.Engine();
+ openerp.init().base.webclient("oe");
+ });
+ </script>
+ <link rel="shortcut icon" href="/base/static/src/img/favicon.ico" type="image/x-icon"/>
+ %(css)s
+ <!--[if lte IE 7]>
+ <link rel="stylesheet" href="/base/static/src/css/base-ie7.css" type="text/css"/>
+ <![endif]-->
+ </head>
+ <body id="oe" class="openerp"></body>
+</html>
+""")
class WebClient(openerpweb.Controller):
_cp_path = "/base/webclient"
@@ -115,40 +140,21 @@ class WebClient(openerpweb.Controller):
@openerpweb.httprequest
def home(self, req, s_action=None):
- template ="""<!DOCTYPE html>
- <html style="height: 100%%">
- <head>
- <meta http-equiv="content-type" content="text/html; charset=utf-8" />
- <title>OpenERP</title>
- %s
- <script type="text/javascript">
- $(function() {
- QWeb = new QWeb2.Engine();
- openerp.init().base.webclient("oe");
- });
- </script>
- <link rel="shortcut icon" href="/base/static/src/img/favicon.ico" type="image/x-icon"/>
- %s
- <!--[if lte IE 7]>
- <link rel="stylesheet" href="/base/static/src/css/base-ie7.css" type="text/css"/>
- <![endif]-->
- </head>
- <body id="oe" class="openerp"></body>
- </html>
- """.replace('\n'+' '*8,'\n')
-
# script tags
jslist = ['/base/webclient/js']
if 1: # debug == 1
jslist = manifest_glob(['base'], 'js')
- js = "\n ".join(['<script type="text/javascript" src="%s"></script>'%i for i in jslist])
+ js = "\n ".join(['<script type="text/javascript" src="%s"></script>'%i for i in jslist])
# css tags
csslist = ['/base/webclient/css']
if 1: # debug == 1
csslist = manifest_glob(['base'], 'css')
- css = "\n ".join(['<link rel="stylesheet" href="%s">'%i for i in csslist])
- r = template % (js, css)
+ css = "\n ".join(['<link rel="stylesheet" href="%s">'%i for i in csslist])
+ r = home_template % {
+ 'javascript': js,
+ 'css': css
+ }
return r
class Database(openerpweb.Controller):