+
+ def copy(self, cr, uid, id, default, context=None):
+ container = self.browse(cr, uid, id, context=context)
+ new_name = "Copy of %s" % container.name
+ # =like is the original LIKE operator from SQL
+ others_count = self.search(cr, uid, [('name', '=like', new_name+'%')],
+ count=True, context=context)
+ if others_count > 0:
+ new_name = "%s (%s)" % (new_name, others_count+1)
+ default['name'] = new_name
+ return osv.Model.copy(self, cr, uid, id, default, context=context)
+
+