summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSiddarth Gajjar <sga@odoo.com>2020-05-11 11:13:52 +0000
committerThibault Delavallée <tde@odoo.com>2020-05-20 08:26:24 +0000
commita1d27a153c456842381bef92336e23fd1b919d4b (patch)
tree69ed70c70a2ff2bf6d629bd7825a87bcb6b08aeb
parent56f07287881095275eb1acff6220c4e783e45778 (diff)
[REF] {website_}mass_mailing: display social links in mass mailing templates
PURPOSE Using Email Marketing or Marketing Automation without website installed will not populate the links for your social media accounts. SPECIFICATIONS Move social_links template directly into mass_mailing and use company information available through social_media module as default values, then overridden by website information. TaskID 2036094 PR #51025 Enterprise PR odoo/enterprise#10497 Related: odoo/upgrade#1212 Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
-rw-r--r--addons/mass_mailing/__manifest__.py2
-rw-r--r--addons/mass_mailing/models/__init__.py1
-rw-r--r--addons/mass_mailing/models/res_company.py17
-rw-r--r--addons/mass_mailing/views/snippets_themes.xml36
-rw-r--r--addons/website_mass_mailing/models/__init__.py1
-rw-r--r--addons/website_mass_mailing/models/res_company.py19
-rw-r--r--addons/website_mass_mailing/views/snippets_templates.xml41
7 files changed, 77 insertions, 40 deletions
diff --git a/addons/mass_mailing/__manifest__.py b/addons/mass_mailing/__manifest__.py
index 1bd54580278..73ed0cc919d 100644
--- a/addons/mass_mailing/__manifest__.py
+++ b/addons/mass_mailing/__manifest__.py
@@ -5,7 +5,7 @@
'name': 'Email Marketing',
'summary': 'Design, send and track emails',
'description': "",
- 'version': '2.1',
+ 'version': '2.2',
'sequence': 110,
'website': 'https://www.odoo.com/page/mailing',
'category': 'Marketing/Email Marketing',
diff --git a/addons/mass_mailing/models/__init__.py b/addons/mass_mailing/models/__init__.py
index 035ce2d73cc..9d9a63bd96f 100644
--- a/addons/mass_mailing/models/__init__.py
+++ b/addons/mass_mailing/models/__init__.py
@@ -12,3 +12,4 @@ from . import mail_thread
from . import res_config_settings
from . import res_users
from . import utm
+from . import res_company
diff --git a/addons/mass_mailing/models/res_company.py b/addons/mass_mailing/models/res_company.py
new file mode 100644
index 00000000000..39865fe4388
--- /dev/null
+++ b/addons/mass_mailing/models/res_company.py
@@ -0,0 +1,17 @@
+# -*- coding: utf-8 -*-
+# Part of Odoo. See LICENSE file for full copyright and licensing details.
+
+from odoo import models
+
+
+class ResCompany(models.Model):
+ _inherit = "res.company"
+
+ def _get_social_media_links(self):
+ self.ensure_one()
+ return {
+ 'social_facebook': self.social_facebook,
+ 'social_linkedin': self.social_linkedin,
+ 'social_twitter': self.social_twitter,
+ 'social_instagram': self.social_instagram
+ }
diff --git a/addons/mass_mailing/views/snippets_themes.xml b/addons/mass_mailing/views/snippets_themes.xml
index 1fc5460a49f..63257b088e8 100644
--- a/addons/mass_mailing/views/snippets_themes.xml
+++ b/addons/mass_mailing/views/snippets_themes.xml
@@ -90,6 +90,11 @@
</a>
&amp;nbsp;
</td>
+ <td width="30%" class="text-right o_mail_no_resize">
+ <div class="o_mail_header_social">
+ <t t-call="mass_mailing.social_links"/>
+ </div>
+ </td>
</tr>
</table>
</div>
@@ -110,6 +115,11 @@
</h3>
&amp;nbsp;
</td>
+ <td width="30%" class="text-right o_mail_no_resize">
+ <div class="o_mail_header_social">
+ <t t-call="mass_mailing.social_links"/>
+ </div>
+ </td>
</tr>
</table>
</div>
@@ -730,6 +740,11 @@
<table align="center" cellspacing="0" cellpadding="0" class="o_mail_table_styles o_mail_full_width_padding">
<tbody>
<tr>
+ <td class="o_mail_footer_social">
+ <t t-call="mass_mailing.social_links"/>
+ </td>
+ </tr>
+ <tr>
<td class="o_mail_footer_links">
<a role="button" href="/unsubscribe_from_list" class="btn btn-link">Unsubscribe</a>
</td>
@@ -762,6 +777,9 @@
<p class="o_mail_footer_copy"><span class="fa fa-copyright" role="img" aria-label="Copyright" title="Copyright"/> 2016 All Rights Reserved</p>
</div>
</td>
+ <td class="o_mail_footer_social">
+ <t t-call="mass_mailing.social_links"/>
+ </td>
</tr>
</tbody>
</table>
@@ -769,6 +787,24 @@
</div>
</template>
+<template id="social_links">
+
+ <t t-set="social_links" t-value="company_id._get_social_media_links()"/>
+
+ <a t-if="social_links.get('social_facebook')" t-att-href="social_links.get('social_facebook')" aria-label="Facebook" title="Facebook">
+ <span class="fa fa-facebook"></span>
+ </a>
+ <a t-if="social_links.get('social_linkedin')" t-att-href="social_links.get('social_linkedin')" style="margin-left:10px" aria-label="LinkedIn" title="LinkedIn">
+ <span class="fa fa-linkedin"></span>
+ </a>
+ <a t-if="social_links.get('social_twitter')" t-att-href="social_links.get('social_twitter')" style="margin-left:10px" aria-label="Twitter" title="Twitter">
+ <span class="fa fa-twitter"></span>
+ </a>
+ <a t-if="social_links.get('social_instagram')" t-att-href="social_links.get('social_instagram')" style="margin-left:10px" aria-label="Instagram" title="Instagram">
+ <span class="fa fa-instagram"></span>
+ </a>
+</template>
+
<!-- Snippet themes Options -->
<template id="snippet_options">
<t t-call="web_editor.snippet_options"/>
diff --git a/addons/website_mass_mailing/models/__init__.py b/addons/website_mass_mailing/models/__init__.py
index e8ef8b35d78..eecc2740faa 100644
--- a/addons/website_mass_mailing/models/__init__.py
+++ b/addons/website_mass_mailing/models/__init__.py
@@ -3,3 +3,4 @@
from . import mailing_list
from . import website_mass_mailing
+from . import res_company
diff --git a/addons/website_mass_mailing/models/res_company.py b/addons/website_mass_mailing/models/res_company.py
new file mode 100644
index 00000000000..892eea99c48
--- /dev/null
+++ b/addons/website_mass_mailing/models/res_company.py
@@ -0,0 +1,19 @@
+# -*- coding: utf-8 -*-
+# Part of Odoo. See LICENSE file for full copyright and licensing details.
+
+from odoo import models
+
+
+class ResCompany(models.Model):
+ _inherit = "res.company"
+
+ def _get_social_media_links(self):
+ social_media_links = super()._get_social_media_links()
+ website_id = self.env['website'].get_current_website()
+ social_media_links.update({
+ 'social_facebook': website_id.social_facebook or social_media_links.get('social_facebook'),
+ 'social_linkedin': website_id.social_linkedin or social_media_links.get('social_linkedin'),
+ 'social_twitter': website_id.social_twitter or social_media_links.get('social_twitter'),
+ 'social_instagram': website_id.social_instagram or social_media_links.get('social_instagram')
+ })
+ return social_media_links
diff --git a/addons/website_mass_mailing/views/snippets_templates.xml b/addons/website_mass_mailing/views/snippets_templates.xml
index 4c055fb8224..da0c52465bf 100644
--- a/addons/website_mass_mailing/views/snippets_templates.xml
+++ b/addons/website_mass_mailing/views/snippets_templates.xml
@@ -75,37 +75,12 @@
</template>
<!-- Extend default mass_mailing snippets with website feature -->
-<template id="social_links">
- <t t-if="not website">
- <t t-set="website" t-value="request.env['website'].search([], limit=1)"/>
- </t>
- <t t-if="website.social_facebook">
- <a t-att-href="website.social_facebook" aria-label="Facebook" title="Facebook">
- <span class="fa fa-facebook"></span>
- </a>
- </t>
- <t t-if="website.social_linkedin">
- <a t-att-href="website.social_linkedin" style="margin-left:10px" aria-label="LinkedIn" title="LinkedIn">
- <span class="fa fa-linkedin"></span>
- </a>
- </t>
- <t t-if="website.social_twitter">
- <a t-att-href="website.social_twitter" style="margin-left:10px" aria-label="Twitter" title="Twitter">
- <span class="fa fa-twitter"></span>
- </a>
- </t>
- <t t-if="website.social_instagram">
- <a t-att-href="website.social_instagram" style="margin-left:10px" aria-label="Instagram" title="Instagram">
- <span class="fa fa-instagram"></span>
- </a>
- </t>
-</template>
<template id="s_mail_block_header_social" inherit_id="mass_mailing.s_mail_block_header_social">
<xpath expr="//td[hasclass('o_mail_logo_container')]" position="after">
<td width="30%" class="text-right o_mail_no_resize">
<div class="o_mail_header_social">
- <t t-call="website_mass_mailing.social_links"/>
+ <t t-call="mass_mailing.social_links"/>
</div>
</td>
</xpath>
@@ -115,7 +90,7 @@
<xpath expr="//table//td" position="after">
<td width="30%" class="text-right o_mail_no_resize">
<div class="o_mail_header_social">
- <t t-call="website_mass_mailing.social_links"/>
+ <t t-call="mass_mailing.social_links"/>
</div>
</td>
</xpath>
@@ -125,24 +100,12 @@
<xpath expr="//td[hasclass('o_mail_footer_links')]" position="inside">
<t> | <a role="button" href="/contactus" class="btn btn-link">Contact</a></t>
</xpath>
- <xpath expr="//tr" position="before">
- <tr>
- <td class="o_mail_footer_social">
- <t t-call="website_mass_mailing.social_links"/>
- </td>
- </tr>
- </xpath>
</template>
<template id="s_mail_block_footer_social_left" inherit_id="mass_mailing.s_mail_block_footer_social_left">
<xpath expr="//div[hasclass('o_mail_footer_links')]" position="inside">
<t> | <a role="button" href="/contactus" class="btn btn-link">Contact</a></t>
</xpath>
- <xpath expr="//td" position="after">
- <td class="o_mail_footer_social">
- <t t-call="website_mass_mailing.social_links"/>
- </td>
- </xpath>
</template>
</odoo>