[MERGE] forward port of branch 7.0 up to 4bfcbb2
authorChristophe Simonis <chs@odoo.com>
Wed, 25 Jun 2014 09:35:11 +0000 (11:35 +0200)
committerChristophe Simonis <chs@odoo.com>
Wed, 25 Jun 2014 09:35:11 +0000 (11:35 +0200)
1  2 
addons/crm_claim/crm_claim.py
openerp/osv/expression.py
openerp/osv/fields.py

@@@ -146,24 -158,34 +146,31 @@@ class crm_claim(osv.osv)
              return stage_ids[0]
          return False
  
 -    def case_refuse(self, cr, uid, ids, context=None):
 -        """ Mark the case as refused: state=done and case_refused=True """
 -        for lead in self.browse(cr, uid, ids):
 -            stage_id = self.stage_find(cr, uid, [lead], lead.section_id.id or False, ['&', ('state', '=', 'done'), ('case_refused', '=', True)], context=context)
 -            if stage_id:
 -                self.case_set(cr, uid, [lead.id], values_to_update={}, new_stage_id=stage_id, context=context)
 -        return True
 -
 -    def onchange_partner_id(self, cr, uid, ids, part, email=False):
 +    def onchange_partner_id(self, cr, uid, ids, partner_id, email=False, context=None):
          """This function returns value of partner address based on partner
 -           :param part: Partner's id
             :param email: ignored
          """
 -        if not part:
 -            return {'value': {'email_from': False,
 -                              'partner_phone': False
 -                            }
 -                   }
 -        address = self.pool.get('res.partner').browse(cr, uid, part)
 +        if not partner_id:
 +            return {'value': {'email_from': False, 'partner_phone': False}}
 +        address = self.pool.get('res.partner').browse(cr, uid, partner_id, context=context)
          return {'value': {'email_from': address.email, 'partner_phone': address.phone}}
  
 +    def create(self, cr, uid, vals, context=None):
 +        if context is None:
 +            context = {}
 +        if vals.get('section_id') and not context.get('default_section_id'):
 +            context['default_section_id'] = vals.get('section_id')
 +
 +        # context: no_log, because subtype already handle this
 +        return super(crm_claim, self).create(cr, uid, vals, context=context)
 +
+     def copy(self, cr, uid, id, default=None, context=None):
+         claim = self.browse(cr, uid, id, context=context)
+         default = dict(default or {},
+             stage_id = self._get_default_stage_id(cr, uid, context=context),
+             name = _('%s (copy)') % claim.name)
+         return super(crm_claim, self).copy(cr, uid, id, default, context=context)
      # -------------------------------------------------------
      # Mail gateway
      # -------------------------------------------------------
Simple merge
Simple merge