~openerp/openobject-addons/5.0-backports2

« back to all changes in this revision

Viewing changes to marketing_campaign/marketing_campaign.py

  • Committer: Christophe Simonis
  • Date: 2010-08-06 09:58:59 UTC
  • Revision ID: chs@openerp.com-20100806095859-y2e6k9flbl8v0cc2
[BACKPORT] 4423 chs@openerp.com-20100806094202-4hmm49v8sa6d4rsx

Show diffs side-by-side

added added

removed removed

Lines of Context:
158
158
        return True
159
159
 
160
160
 
161
 
    def signal(self, cr, uid, model, res_id, signal, context=None):
 
161
    def signal(self, cr, uid, model, res_id, signal, run_existing=True, context=None):
162
162
        record = self.pool.get(model).browse(cr, uid, res_id, context)
163
 
        return self._signal(cr, uid, record, signal, context)
 
163
        return self._signal(cr, uid, record, signal, run_existing, context)
164
164
 
165
 
    def _signal(self, cr, uid, record, signal, context=None):
 
165
    def _signal(self, cr, uid, record, signal, run_existing=True, context=None):
166
166
        if not signal:
167
167
            raise ValueError('signal cannot be False')
168
168
 
181
181
                wi_domain = [(k, '=', v) for k, v in data.items()]
182
182
 
183
183
                wi_ids = Workitems.search(cr, uid, wi_domain, context=context)
184
 
                if not wi_ids:
 
184
                if wi_ids:
 
185
                    if not run_existing:
 
186
                        continue
 
187
                else:
185
188
                    partner = self._get_partner_for(campaign, record)
186
189
                    if partner:
187
190
                        data['partner_id'] = partner.id