From 4a6b340026a979d2eea534a57561508eb401472f Mon Sep 17 00:00:00 2001 From: x620 Date: Tue, 26 Apr 2016 18:12:20 +0500 Subject: [PATCH] [FIX] fixes Recipients field --- mail_base/README.rst | 3 ++- mail_base/__init__.py | 2 ++ mail_base/models.py | 18 ++++++++++++++++++ mail_base/static/src/js/base.js | 2 ++ 4 files changed, 24 insertions(+), 1 deletion(-) create mode 100644 mail_base/models.py diff --git a/mail_base/README.rst b/mail_base/README.rst index 9e89d30..5ee7ab2 100644 --- a/mail_base/README.rst +++ b/mail_base/README.rst @@ -2,8 +2,9 @@ Mail Base ========= * makes built-in mail js features extendable. -* handle ``search_default_*`` parameters in context. +* handles ``search_default_*`` parameters in context. * fixes toggling left bar +* fixes Recipients field. Out-of-box this field could be empty. Usage ----- diff --git a/mail_base/__init__.py b/mail_base/__init__.py index 40a96af..c7b5ac7 100644 --- a/mail_base/__init__.py +++ b/mail_base/__init__.py @@ -1 +1,3 @@ # -*- coding: utf-8 -*- + +import models diff --git a/mail_base/models.py b/mail_base/models.py new file mode 100644 index 0000000..ade9a35 --- /dev/null +++ b/mail_base/models.py @@ -0,0 +1,18 @@ +# -*- coding: utf-8 -*- + +from openerp import api, models + + +class MailMessage(models.Model): + _inherit = 'mail.message' + + @api.multi + def write(self, values): + if values.get('needaction_partner_ids'): + if not values.get('partner_ids'): + values['partner_ids'] = [] + for triplet in values.get('needaction_partner_ids'): + if triplet[0] == 6: + for id in triplet[2]: + values['partner_ids'].append((4, id, False)) + return super(MailMessage, self).write(values) diff --git a/mail_base/static/src/js/base.js b/mail_base/static/src/js/base.js index 5a43826..d392668 100644 --- a/mail_base/static/src/js/base.js +++ b/mail_base/static/src/js/base.js @@ -269,6 +269,8 @@ var MailTools = core.Class.extend({ var msg = { id: data.id, author_id: data.author_id, + needaction_partner_ids: data.needaction_partner_ids, + partner_ids: data.partner_ids, body_short: data.body_short || "", body: data.body || "", date: moment(time.str_to_datetime(data.date)),