diff --git a/addons/email_template/email_template_view.xml b/addons/email_template/email_template_view.xml
index 4f7828cb531..4e5b7d0b21a 100644
--- a/addons/email_template/email_template_view.xml
+++ b/addons/email_template/email_template_view.xml
@@ -78,6 +78,35 @@
+
+ email.template.form.minimal
+ email.template
+ 32
+
+
+
+
+
email.template.tree
email.template
diff --git a/addons/mass_mailing/models/email_template.py b/addons/mass_mailing/models/email_template.py
index 9fb2c22e0b1..651ac2da6ae 100644
--- a/addons/mass_mailing/models/email_template.py
+++ b/addons/mass_mailing/models/email_template.py
@@ -14,8 +14,10 @@ class EmailTemplate(osv.Model):
}
def action_new_mailing(self, cr, uid, ids, context=None):
+ template = self.browse(cr, uid, ids[0], context=context)
ctx = dict(context)
ctx.update({
+ 'default_mailing_model': template.model,
'default_template_id': ids[0],
})
return {
@@ -25,7 +27,5 @@ class EmailTemplate(osv.Model):
'view_mode': 'form',
'res_model': 'mail.mass_mailing',
'views': [(False, 'form')],
- 'view_id': False,
- # 'target': 'new',
'context': ctx,
}
diff --git a/addons/mass_mailing/models/mass_mailing.py b/addons/mass_mailing/models/mass_mailing.py
index e8a1ab9a5ed..0c6f68e3eb8 100644
--- a/addons/mass_mailing/models/mass_mailing.py
+++ b/addons/mass_mailing/models/mass_mailing.py
@@ -25,6 +25,7 @@ import urllib
import urlparse
from openerp import tools
+from openerp.exceptions import Warning
from openerp.tools.safe_eval import safe_eval as eval
from openerp.tools.translate import _
from openerp.osv import osv, fields
@@ -442,7 +443,7 @@ class MassMailing(osv.Model):
),
'template_id': fields.many2one(
'email.template', 'Email Template',
- domain=[('use_in_mass_mailing', '=', True)],
+ domain="[('use_in_mass_mailing', '=', True), ('model', '=', mailing_model)]",
required=True,
),
'body_html': fields.related(
@@ -625,6 +626,24 @@ class MassMailing(osv.Model):
'context': context,
}
+ def action_template_copy(self, cr, uid, ids, context=None):
+ mailing = self.browse(cr, uid, ids[0], context=context)
+ if not mailing.template_id:
+ return False
+ new_tpl_id = self.pool['email.template'].copy(cr, uid, mailing.template_id.id, context=context)
+ self.write(cr, uid, [mailing.id], {'template_id': new_tpl_id}, context=context)
+ view_id = self.pool['ir.model.data'].xmlid_to_res_id(cr, uid, 'email_template.email_template_form_minimal')
+ return {
+ 'type': 'ir.actions.act_window',
+ 'view_type': 'form',
+ 'view_mode': 'form',
+ 'res_model': 'email.template',
+ 'res_id': new_tpl_id,
+ 'view_id': view_id,
+ 'target': 'new',
+ 'context': context,
+ }
+
#------------------------------------------------------
# Email Sending
#------------------------------------------------------
@@ -700,6 +719,8 @@ class MassMailing(osv.Model):
for mailing in self.browse(cr, uid, ids, context=context):
# res_ids = self._set_up_test_mailing(cr, uid, mailing.mailing_model, context=context)
res_ids = [c.id for c in mailing.email_to]
+ if not res_ids:
+ raise Warning('Please specifiy test email adresses.')
all_mail_values = self.pool['mail.compose.message'].generate_email_for_composer_batch(
cr, uid, mailing.template_id.id, res_ids,
context=context,
diff --git a/addons/mass_mailing/static/src/css/email_template.css b/addons/mass_mailing/static/src/css/email_template.css
index 62766ac15b4..823a8d9efc6 100644
--- a/addons/mass_mailing/static/src/css/email_template.css
+++ b/addons/mass_mailing/static/src/css/email_template.css
@@ -3,17 +3,28 @@
min-height: 270px !important;
}
-
-.html_preview {
+.form_html_preview {
width: 600px;
- height: 400px;
+ max-height: 1000px;
+ -webkit-transform: scale(.50);
+ -ms-transform: scale(.50);
+ transform: scale(.50);
+ -webkit-transform-origin: 0 0;
+ -ms-transform-origin: 0 0;
+ transform-origin: 0 0;
+ margin: 0 0px -300px 0;
+ overflow: visible !important;
+}
+
+.kanban_html_preview {
+ width: 600px;
+ height: 600px;
-webkit-transform: scale(.50);
-ms-transform: scale(.50);
transform: scale(.50);
-webkit-transform-origin: 0 0;
-ms-transform-origin: 0 0;
transform-origin: 0 0;
- border: 2px solid gray;
margin: 0 0px -300px 0;
overflow: hidden !important;
}
diff --git a/addons/mass_mailing/views/email_template.xml b/addons/mass_mailing/views/email_template.xml
index 0278223290c..b97ca759f09 100644
--- a/addons/mass_mailing/views/email_template.xml
+++ b/addons/mass_mailing/views/email_template.xml
@@ -3,7 +3,7 @@
-
+
email.template.form.mass.mailing
email.template
@@ -14,6 +14,17 @@
+
+ email.template.form.minimal.mass.mailing
+ email.template
+
+
+
+
+
+
+
+
email.template.search.mass.mailing
email.template
@@ -54,7 +65,7 @@
-
@@ -71,6 +82,7 @@
email.template
form
kanban,tree,form
+
{'search_default_use_in_mass_mailing': 1}
diff --git a/addons/mass_mailing/views/mass_mailing.xml b/addons/mass_mailing/views/mass_mailing.xml
index dead08ac063..cb322e5cf8e 100644
--- a/addons/mass_mailing/views/mass_mailing.xml
+++ b/addons/mass_mailing/views/mass_mailing.xml
@@ -243,9 +243,18 @@