def onchange_occupation_id(self, cr, uid, ids, occupation_id):
"""Define if a partner is a student based on his/her occupation type"""
v = {}
- partners = self.browse(cr, uid, ids)
occupations = self.pool.get('bikecoop.partner.theme')
occupation = occupations.browse(cr, uid, occupation_id)
if occupation.type == 'studies':
v['is_student'] = True
else:
v['is_student'] = False
- v['is_scholarship'] = False
return {'value': v}
string='Student?',
type='boolean',
store=True),
- 'is_scholarship': fields.boolean('Scholarship',
- help='Is this student a scholarship?'),
'want_to_be_volunteer': fields.boolean(
'Do you want to receive some informations about volunteer \
activities?',
help='… in company and its activities: bikecoop, events, …'),
}
- def _check_occupation_is_not_studies(self, cr, uid, ids, context=None):
- """Check if partners are students. If not, they can't be
- scholarships."""
- partners = self.browse(cr, uid, ids, context=context)
- for partner in partners:
- if partner.occupation_id.type != 'studies':
- if partner.is_scholarship:
- return False
- return True
-
- _constraints = [
- (_check_occupation_is_not_studies, 'Error: This partner can\'t be a\
- scholarship because s·he isn\'t a student.', ['is_scholarship']),
- ]
-
class Theme(orm.Model):
_inherit = 'bikecoop.partner.theme'