diff options
| author | chm@openerp.com <> | 2014-04-23 17:48:52 +0200 |
|---|---|---|
| committer | chm@openerp.com <> | 2014-04-23 17:48:52 +0200 |
| commit | ee7ff4bd07d8d84ed2ebb0e2e3f5eb437f158e5b (patch) | |
| tree | 25577845139d390f9bf27e0237d18842aeace02b /addons/mass_mailing/wizard/test_mailing.py | |
| parent | b1bc68d8eb374f30173e03e8048d1c3588a00d4b (diff) | |
| parent | 1657ffb8e7d95ef5f94e59121737abb068371b66 (diff) | |
[MERGE] from trunk
bzr revid: chm@openerp.com-20140423154852-gzegxqrzb2sj01zl
Diffstat (limited to 'addons/mass_mailing/wizard/test_mailing.py')
| -rw-r--r-- | addons/mass_mailing/wizard/test_mailing.py | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/addons/mass_mailing/wizard/test_mailing.py b/addons/mass_mailing/wizard/test_mailing.py new file mode 100644 index 00000000000..bd1124a8cdc --- /dev/null +++ b/addons/mass_mailing/wizard/test_mailing.py @@ -0,0 +1,40 @@ +# -*- coding: utf-8 -*- + +from openerp import tools +from openerp.osv import osv, fields + + +class TestMassMailing(osv.TransientModel): + _name = 'mail.mass_mailing.test' + _description = 'Sample Mail Wizard' + + _columns = { + 'email_to': fields.char('Recipients', required=True, + help='Comma-separated list of email addresses.'), + 'mass_mailing_id': fields.many2one('mail.mass_mailing', 'Mailing', required=True), + } + + _defaults = { + 'email_to': lambda self, cr, uid, ctx=None: self.pool['mail.message']._get_default_from(cr, uid, context=ctx), + } + + def send_mail_test(self, cr, uid, ids, context=None): + Mail = self.pool['mail.mail'] + for wizard in self.browse(cr, uid, ids, context=context): + mailing = wizard.mass_mailing_id + test_emails = tools.email_split(wizard.email_to) + mail_ids = [] + for test_mail in test_emails: + mail_values = { + 'email_from': mailing.email_from, + 'reply_to': mailing.reply_to, + 'email_to': test_mail, + 'subject': mailing.name, + 'body_html': mailing.body_html, + 'auto_delete': True, + 'mailing_id': wizard.mass_mailing_id.id, + } + mail_ids.append(Mail.create(cr, uid, mail_values, context=context)) + Mail.send(cr, uid, mail_ids, context=context) + self.pool['mail.mass_mailing'].write(cr, uid, [mailing.id], {'state': 'test'}, context=context) + return True |
