diff options
Diffstat (limited to 'addons/project_issue/project_issue.py')
| -rw-r--r-- | addons/project_issue/project_issue.py | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/addons/project_issue/project_issue.py b/addons/project_issue/project_issue.py index b0a9dbf0b25..1b323917860 100644 --- a/addons/project_issue/project_issue.py +++ b/addons/project_issue/project_issue.py @@ -33,7 +33,10 @@ class project_issue(osv.Model): """ Gives default stage_id """ if context is None: context = {} - return self.stage_find(cr, uid, [], context.get('default_project_id'), [('fold', '=', False)], context=context) + default_project_id = context.get('default_project_id') + if not default_project_id: + return False + return self.stage_find(cr, uid, [], default_project_id, [('fold', '=', False)], context=context) def _read_group_stage_ids(self, cr, uid, ids, domain, read_group_order=None, access_rights_uid=None, context=None): if context is None: @@ -117,11 +120,18 @@ class project_issue(osv.Model): return res def on_change_project(self, cr, uid, ids, project_id, context=None): + values = {} if project_id: project = self.pool.get('project.project').browse(cr, uid, project_id, context=context) if project and project.partner_id: - return {'value': {'partner_id': project.partner_id.id, 'email_from': project.partner_id.email}} - return {} + values['partner_id'] = project.partner_id.id + values['email_from'] = project.partner_id.email + values['stage_id'] = self.stage_find(cr, uid, [], project_id, [('fold', '=', False)], context=context) + else: + values['partner_id'] = False + values['email_from'] = False + values['stage_id'] = False + return {'value': values} _columns = { 'id': fields.integer('ID', readonly=True), |
