summaryrefslogtreecommitdiff
path: root/bin/addons/base/module/module.py
diff options
context:
space:
mode:
authorced <>2007-10-30 09:06:10 +0000
committerced <>2007-10-30 09:06:10 +0000
commitdf543d3f1de4af6c7717ddffc7b027b318f46a18 (patch)
tree5b6abc84c6f321262a05edcd389fafff235989ad /bin/addons/base/module/module.py
parent5e66ff1d13bed2c249bc803227de4b2299867e87 (diff)
Add published version on module
bzr revid: ced-a52a6ba6872c6f3ecf5dc9a1e7b17e5a747e8f30
Diffstat (limited to 'bin/addons/base/module/module.py')
-rw-r--r--bin/addons/base/module/module.py10
1 files changed, 10 insertions, 0 deletions
diff --git a/bin/addons/base/module/module.py b/bin/addons/base/module/module.py
index 074de1c63b9..23f7ba16df2 100644
--- a/bin/addons/base/module/module.py
+++ b/bin/addons/base/module/module.py
@@ -220,6 +220,7 @@ class module(osv.osv):
'installed_version': fields.function(_get_installed_version, method=True,
string='Installed version', type='char'),
'latest_version': fields.char('Latest version', size=64, readonly=True),
+ 'published_version': fields.char('Published Version', size=64, readonly=True),
'url': fields.char('URL', size=128),
'dependencies_id': fields.one2many('ir.module.module.dependency',
'module_id', 'Dependencies', readonly=True),
@@ -434,6 +435,7 @@ class module(osv.osv):
self.create(cr, uid, {
'name': name,
'latest_version': version,
+ 'published_version': version,
'url': url,
'state': 'uninstalled',
})
@@ -449,6 +451,14 @@ class module(osv.osv):
self.write(cr, uid, id,
{'latest_version': version, 'url': url})
res[0] += 1
+ published_version = self.read(cr, uid, id, ['published_version'])\
+ ['published_version']
+ if published_version == 'x' or not published_version:
+ published_version = '0'
+ c = vercmp(version, published_version)
+ if c > 0:
+ self.write(cr, uid, id,
+ {'published_version': version})
return res
def download(self, cr, uid, ids, download=True, context=None):