From b9beb3076e7d838960abf20dcf904586a533e6c5 Mon Sep 17 00:00:00 2001 From: "RGA (OpenERP)" Date: Mon, 20 Sep 2010 14:40:37 +0530 Subject: [PATCH] [IMP]when create new filter it should be modified if same name filter already exist otherwise create new one bzr revid: rga@tinyerp.com-20100920091037-tyheqqfx72b3cbm2 --- bin/addons/base/ir/ir_filters.py | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/bin/addons/base/ir/ir_filters.py b/bin/addons/base/ir/ir_filters.py index 2821d0c94b7..272d1c718c1 100644 --- a/bin/addons/base/ir/ir_filters.py +++ b/bin/addons/base/ir/ir_filters.py @@ -36,6 +36,20 @@ class ir_filters(osv.osv): act_ids = self.search(cr,uid,[('model_id','=',model),('user_id','=',uid)]) my_acts = self.read(cr, uid, act_ids, ['name', 'domain','context']) return my_acts + + def create_or_replace(self, cr, uid, vals, context=None): + if context is None: + context = {} + is_filter_exist = False + for filter in self.get_filters(cr, uid, vals['model_id']): + if filter['name'].lower() == vals['name'].lower(): + is_filter_exist = filter['id'] + break + if is_filter_exist: + return super(ir_filters, self).write(cr, uid, is_filter_exist, vals, context) + else: + return super(ir_filters, self).create(cr, uid, vals, context) + _columns = { 'name': fields.char('Action Name', size=64, translate=True, required=True),