Harry (OpenERP) has proposed merging 
lp:~openerp-dev/openerp-web/trunk-merge-translation into lp:openerp-web.

Requested reviews:
  OpenERP R&D Web Team (openerp-dev-web)

For more details, see:
https://code.launchpad.net/~openerp-dev/openerp-web/trunk-merge-translation/+merge/116406
-- 
https://code.launchpad.net/~openerp-dev/openerp-web/trunk-merge-translation/+merge/116406
Your team OpenERP R&D Team is subscribed to branch 
lp:~openerp-dev/openerp-web/trunk-merge-translation.
=== modified file 'addons/web/controllers/main.py'
--- addons/web/controllers/main.py	2012-07-16 14:29:18 +0000
+++ addons/web/controllers/main.py	2012-07-24 06:40:24 +0000
@@ -352,25 +352,25 @@
         langs = lang.split(separator)
         langs = [separator.join(langs[:x]) for x in range(1, len(langs) + 1)]
 
-        transs = {}
+        proxy = req.session.proxy("translation")
+        messages = proxy.load(req.session._db, mods, langs, "web")
         for addon_name in mods:
-            transl = {"messages":[]}
-            transs[addon_name] = transl
-            addons_path = openerpweb.addons_manifest[addon_name]['addons_path']
-            for l in langs:
-                f_name = os.path.join(addons_path, addon_name, "i18n", l + ".po")
-                if not os.path.exists(f_name):
-                    continue
-                try:
-                    with open(f_name) as t_file:
-                        po = babel.messages.pofile.read_po(t_file)
-                except Exception:
-                    continue
-                for x in po:
-                    if x.id and x.string and "openerp-web" in x.auto_comments:
-                        transl["messages"].append({'id': x.id, 'string': x.string})
-        return {"modules": transs,
-                "lang_parameters": lang_obj}
+            if not messages[addon_name]['messages']:
+                addons_path = openerpweb.addons_manifest[addon_name]['addons_path']
+                for l in langs:
+                    f_name = os.path.join(addons_path, addon_name, "i18n", l + ".po")
+                    if not os.path.exists(f_name):
+                        continue
+                    try:
+                        with open(f_name) as t_file:
+                            po = babel.messages.pofile.read_po(t_file)
+                    except Exception:
+                        continue
+                    for x in po:
+                        if x.id and x.string and "openerp-web" in x.auto_comments:
+                            messages[addon_name]["messages"].append({'id': x.id, 'string': x.string})
+        return {"modules": messages,
+                "lang_parameters": lang_obj} 
 
     @openerpweb.jsonrequest
     def version_info(self, req):

_______________________________________________
Mailing list: https://launchpad.net/~openerp-dev-gtk
Post to     : [email protected]
Unsubscribe : https://launchpad.net/~openerp-dev-gtk
More help   : https://help.launchpad.net/ListHelp

Reply via email to