Christophe (OpenERP) has proposed merging
lp:~openerp-dev/openerp-web/trunk-fixmodloading-chs 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-fixmodloading-chs/+merge/78222
--
https://code.launchpad.net/~openerp-dev/openerp-web/trunk-fixmodloading-chs/+merge/78222
Your team OpenERP R&D Team is subscribed to branch
lp:~openerp-dev/openerp-web/trunk-fixmodloading-chs.
=== modified file 'addons/web/controllers/main.py'
--- addons/web/controllers/main.py 2011-09-30 20:10:18 +0000
+++ addons/web/controllers/main.py 2011-10-05 09:57:24 +0000
@@ -358,12 +358,18 @@
@openerpweb.jsonrequest
def modules(self, req):
- # TODO query server for installed web modules
- mods = []
- for name, manifest in openerpweb.addons_manifest.items():
- # TODO replace by ir.module.module installed web
- if name not in req.config.server_wide_modules and manifest.get('active', True):
- mods.append(name)
+ candidates = [mod for mod in openerpweb.addons_manifest.keys() if mod not in req.config.server_wide_modules]
+
+ if req.config.backend == 'local':
+ # if local backend, the modules are shared with the server
+ Modules = req.session.model('ir.module.module')
+ ids = Modules.search(
+ ['&', ('state', '=', 'installed'), ('name', 'in', candidates)]
+ )
+ mods = map(operator.itemgetter('name'), Modules.read(ids, ['name']))
+
+ else:
+ mods = [name for name in candidates if openerpweb.addons_manifest[name].get('active', True)]
return mods
@openerpweb.jsonrequest
_______________________________________________
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