summaryrefslogtreecommitdiff
path: root/addons/project_scrum/wizard
diff options
context:
space:
mode:
authorMeera Trambadia (OpenERP) <mtr@tinyerp.com>2011-09-16 11:11:38 +0530
committerMeera Trambadia (OpenERP) <mtr@tinyerp.com>2011-09-16 11:11:38 +0530
commitd979aad3de95ae24aa1db52cf17c4eecf3d3ce6b (patch)
tree592698c8e0dab53fcd157dd456a800bd4a80b5bf /addons/project_scrum/wizard
parenteea80125f7d1c739260929fb1f38866ef21439e1 (diff)
parentd101d3fbaaffe2d0219ac6cfeef50338a2501664 (diff)
[MERGE] branch merged with lp:openobject-addons
bzr revid: mtr@tinyerp.com-20110916054138-93b3caomaij5dyp4
Diffstat (limited to 'addons/project_scrum/wizard')
-rw-r--r--addons/project_scrum/wizard/__init__.py2
-rw-r--r--addons/project_scrum/wizard/mail_compose_message.py65
-rw-r--r--addons/project_scrum/wizard/project_scrum_email.py10
3 files changed, 71 insertions, 6 deletions
diff --git a/addons/project_scrum/wizard/__init__.py b/addons/project_scrum/wizard/__init__.py
index 4b5b0919574..fcba1742d75 100644
--- a/addons/project_scrum/wizard/__init__.py
+++ b/addons/project_scrum/wizard/__init__.py
@@ -23,7 +23,7 @@ import project_scrum_backlog_create_task
import project_scrum_backlog_sprint
import project_scrum_backlog_merger
import project_scrum_postpone
-import project_scrum_email
+import mail_compose_message
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/project_scrum/wizard/mail_compose_message.py b/addons/project_scrum/wizard/mail_compose_message.py
new file mode 100644
index 00000000000..777ca03fa37
--- /dev/null
+++ b/addons/project_scrum/wizard/mail_compose_message.py
@@ -0,0 +1,65 @@
+# -*- coding: utf-8 -*-
+##############################################################################
+#
+# OpenERP, Open Source Management Solution
+# Copyright (C) 2010-Today OpenERP SA (<http://www.openerp.com>)
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>
+#
+##############################################################################
+
+from osv import osv
+from osv import fields
+from tools.translate import _
+
+class mail_compose_message(osv.osv_memory):
+ _inherit = 'mail.compose.message'
+
+ def get_value(self, cr, uid, model, resource_id, context=None):
+ '''
+ To get values of the resource_id for the model
+ @param model: Object
+ @param resource_id: id of a record for which values to be read
+
+ @return: Returns a dictionary
+ '''
+ if context is None:
+ context = {}
+ result = super(mail_compose_message, self).get_value(cr, uid, model, resource_id, context=context)
+ if model == 'project.scrum.meeting' and resource_id:
+ meeting_pool = self.pool.get('project.scrum.meeting')
+ user_pool = self.pool.get('res.users')
+ meeting = meeting_pool.browse(cr, uid, resource_id, context=context)
+
+ sprint = meeting.sprint_id
+ user_data = user_pool.browse(cr, uid, uid, context=context)
+ result.update({'email_from': user_data.address_id and user_data.address_id.email or False})
+
+ if sprint.scrum_master_id and sprint.scrum_master_id.user_email:
+ result.update({'email_to': sprint.scrum_master_id.user_email})
+ if sprint.product_owner_id and sprint.product_owner_id.user_email:
+ result.update({'email_to': result.get('email_to',False) and result.get('email_to') + ',' + sprint.product_owner_id.user_email or sprint.product_owner_id.user_email})
+
+ subject = _("Scrum Meeting : %s") %(meeting.date)
+ message = _("Hello , \nI am sending you Scrum Meeting : %s for the Sprint '%s' of Project '%s'") %(meeting.date, sprint.name, sprint.project_id.name)
+ result.update({
+ 'subject': subject,
+ 'body_text': message,
+ 'model': model,
+ 'res_id': resource_id
+ })
+ return result
+
+
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/project_scrum/wizard/project_scrum_email.py b/addons/project_scrum/wizard/project_scrum_email.py
index ae8ba092981..f1d5b6665f7 100644
--- a/addons/project_scrum/wizard/project_scrum_email.py
+++ b/addons/project_scrum/wizard/project_scrum_email.py
@@ -69,6 +69,7 @@ class project_scrum_email(osv.osv_memory):
if context is None:
context = {}
+ mail_message = self.pool.get('mail.message')
active_id = context.get('active_id', False)
scrum_meeting_pool = self.pool.get('project.scrum.meeting')
user_pool = self.pool.get('res.users')
@@ -82,7 +83,7 @@ class project_scrum_email(osv.osv_memory):
email_from = tools.config.get('email_from', False)
user = user_pool.browse(cr, uid, uid, context=context)
- user_email = email_from or user.address_id.email
+ user_email = email_from or user.user_email
body = "%s\n" %(data.message)
body += "\n%s\n" %_('Tasks since yesterday')
@@ -91,7 +92,7 @@ class project_scrum_email(osv.osv_memory):
body += "\n%s\n" %_("Task for Today")
body += "_______________________ \n"
body += "\n%s\n" %(meeting.question_today or _('None'))
- body += "\n%s\n" % _('Blocking points encountered:')
+ body += "\n%s\n" % _('Blocking points encountered:')
body += "_______________________ \n"
body += "\n%s\n" %(meeting.question_blocks or _('None'))
body += "\n%s\n%s" %(_('Thank you,'), user.name)
@@ -100,8 +101,7 @@ class project_scrum_email(osv.osv_memory):
if data.scrum_master_email == data.product_owner_email:
data.product_owner_email = False
if data.scrum_master_email:
- tools.email_send(user_email, [data.scrum_master_email], data.subject, body, reply_to=user_email)
+ mail_message.schedule_with_attach(cr, uid, user_email, [data.scrum_master_email], data.subject, body, reply_to=user_email, context=context)
if data.product_owner_email:
- tools.email_send(user_email, [data.product_owner_email], data.subject, body, reply_to=user_email)
+ mail_message.schedule_with_attach(cr, uid, user_email, [data.product_owner_email], data.subject, body, reply_to=user_email, context=context)
return {'type': 'ir.actions.act_window_close'}
-project_scrum_email()