[IMP] change placeholder inclusion logic
[odoo/odoo.git] / addons / web / controllers / main.py
index 48e1889..cfe25bb 100644 (file)
@@ -522,8 +522,19 @@ html_template = """<!DOCTYPE html>
     </head>
     <body>
         <!--[if lte IE 8]>
-        <script src="http://ajax.googleapis.com/ajax/libs/chrome-frame/1/CFInstall.min.js"></script>
-        <script>CFInstall.check({mode: "overlay"});</script>
+            <script src="http://ajax.googleapis.com/ajax/libs/chrome-frame/1/CFInstall.min.js"></script>
+            <script>CFInstall.check({mode: "overlay"});</script>
+        <![endif]-->
+        
+         <!--[if lte IE 9]>
+            <script src="/web/static/lib/jquery.placeholder/jquery.placeholder.min.js"></script>
+            <script>
+                document.addEventListener("DOMNodeInserted",function(event){
+                    if ( $(event.target).is("input") || $(event.target).is("textarea") ) {
+                    $(event.target).placeholder();
+                    }
+                });    
+            </script>
         <![endif]-->
     </body>
 </html>
@@ -668,7 +679,7 @@ class WebClient(openerpweb.Controller):
         messages = ir_translation.search_read([('module','in',mods),('lang','=',lang),
                                                ('comments','like','openerp-web'),('value','!=',False),
                                                ('value','!=','')],
-                                              ['module','src','value','lang'], order='module') 
+                                              ['module','src','value','lang'], order='module')
         for mod, msg_group in itertools.groupby(messages, key=operator.itemgetter('module')):
             translations_per_module.setdefault(mod,{'messages':[]})
             translations_per_module[mod]['messages'].extend({'id': m['src'],
@@ -679,9 +690,7 @@ class WebClient(openerpweb.Controller):
 
     @openerpweb.jsonrequest
     def version_info(self, req):
-        return {
-            "version": openerp.release.version
-        }
+        return openerp.service.web_services.RPC_VERSION_1
 
 class Proxy(openerpweb.Controller):
     _cp_path = '/web/proxy'
@@ -799,9 +808,9 @@ class Session(openerpweb.Controller):
         return {
             "session_id": req.session_id,
             "uid": req.session._uid,
-            "context": req.session.get_context() if req.session._uid else {},
+            "user_context": req.session.get_context() if req.session._uid else {},
             "db": req.session._db,
-            "login": req.session._login,
+            "username": req.session._login,
         }
 
     @openerpweb.jsonrequest
@@ -1074,7 +1083,7 @@ class DataSet(openerpweb.Controller):
     @openerpweb.jsonrequest
     def call(self, req, model, method, args, domain_id=None, context_id=None):
         return self._call_kw(req, model, method, args, {})
-    
+
     @openerpweb.jsonrequest
     def call_kw(self, req, model, method, args, kwargs):
         return self._call_kw(req, model, method, args, kwargs)
@@ -1188,7 +1197,7 @@ class Binary(openerpweb.Controller):
                     if width > 500: width = 500
                     if height > 500: height = 500
                     image_base64 = openerp.tools.image_resize_image(base64_source=image_base64, size=(width, height), encoding='base64', filetype='PNG')
-            
+
             image_data = base64.b64decode(image_base64)
 
         except (TypeError, xmlrpclib.Fault):
@@ -1331,8 +1340,10 @@ class Binary(openerpweb.Controller):
             registry = openerp.modules.registry.RegistryManager.get(dbname)
             with registry.cursor() as cr:
                 user = registry.get('res.users').browse(cr, uid, uid)
-                image_data = user.company_id.logo_web.decode('base64')
-
+                if user.company_id.logo_web:
+                    image_data = user.company_id.logo_web.decode('base64')
+                else:
+                    image_data = self.placeholder(req, 'nologo.png')
         headers = [
             ('Content-Type', 'image/png'),
             ('Content-Length', len(image_data)),
@@ -1468,7 +1479,7 @@ class Export(View):
         fields = self.fields_get(req, model)
         if ".id" in export_fields:
             fields['.id'] = fields.pop('id', {'string': 'ID'})
-            
+
         # To make fields retrieval more efficient, fetch all sub-fields of a
         # given field at the same time. Because the order in the export list is
         # arbitrary, this requires ordering all sub-fields of a given field