summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristophe Simonis <christophe@tinyerp.com>2008-07-11 13:42:24 +0200
committerChristophe Simonis <christophe@tinyerp.com>2008-07-11 13:42:24 +0200
commitd2db22a75d82cad0ad9bf2ed2992c5b4e649166c (patch)
tree597b3287de2e29ba2843487bae2a58655acca92f
parent1c708c23b25861b95feda782afc8283fe8664d3e (diff)
manual merge from lp branch
bzr revid: christophe@tinyerp.com-20080711114224-ye5o80dj45dd1i04
-rw-r--r--bin/addons/base/ir/ir_ui_menu.py10
1 files changed, 10 insertions, 0 deletions
diff --git a/bin/addons/base/ir/ir_ui_menu.py b/bin/addons/base/ir/ir_ui_menu.py
index 4d993bcc0ff..13445bb8df9 100644
--- a/bin/addons/base/ir/ir_ui_menu.py
+++ b/bin/addons/base/ir/ir_ui_menu.py
@@ -29,6 +29,7 @@
from osv import fields, osv
from osv.orm import browse_null, browse_record
+import re
def one_in(setA, setB):
"""Check the presence of an element of setA in setB
@@ -121,6 +122,15 @@ class ir_ui_menu(osv.osv):
def copy(self, cr, uid, id, default=None, context=None):
ir_values_obj = self.pool.get('ir.values')
res = super(ir_ui_menu, self).copy(cr, uid, id, context=context)
+ datas=self.read(cr,uid,[res],['name'])[0]
+ rex=re.compile('\([0-9]+\)')
+ concat=rex.findall(datas['name'])
+ if concat:
+ next_num=eval(concat[0])+1
+ datas['name']=rex.sub(('(%d)'%next_num),datas['name'])
+ else:
+ datas['name']=datas['name']+'(1)'
+ self.write(cr,uid,[res],{'name':datas['name']})
ids = ir_values_obj.search(cr, uid, [
('model', '=', 'ir.ui.menu'),
('res_id', '=', id),