Browse Source

Merge pull request #374 from Tecnativa/11.0-add-mass_mailing_welcome_mail

[11.0][ADD] mass_mailing_newsletter_welcome_mail
pull/348/merge
Pedro M. Baeza 5 years ago
committed by GitHub
parent
commit
9c7203335c
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
  1. 121
      mass_mailing_newsletter_welcome_mail/README.rst
  2. 2
      mass_mailing_newsletter_welcome_mail/__init__.py
  3. 21
      mass_mailing_newsletter_welcome_mail/__manifest__.py
  4. 1
      mass_mailing_newsletter_welcome_mail/controllers/__init__.py
  5. 31
      mass_mailing_newsletter_welcome_mail/controllers/main.py
  6. 21
      mass_mailing_newsletter_welcome_mail/data/mail_template.xml
  7. 40
      mass_mailing_newsletter_welcome_mail/i18n/es.po
  8. 31
      mass_mailing_newsletter_welcome_mail/i18n/mass_mailing_welcome_mail.pot
  9. 1
      mass_mailing_newsletter_welcome_mail/models/__init__.py
  10. 16
      mass_mailing_newsletter_welcome_mail/models/mail_mass_mailing_list.py
  11. 22
      mass_mailing_newsletter_welcome_mail/readme/CONFIGURE.rst
  12. 5
      mass_mailing_newsletter_welcome_mail/readme/CONTRIBUTORS.rst
  13. 3
      mass_mailing_newsletter_welcome_mail/readme/DESCRIPTION.rst
  14. 1
      mass_mailing_newsletter_welcome_mail/readme/ROADMAP.rst
  15. 7
      mass_mailing_newsletter_welcome_mail/readme/USAGE.rst
  16. BIN
      mass_mailing_newsletter_welcome_mail/static/description/icon.png
  17. 470
      mass_mailing_newsletter_welcome_mail/static/description/index.html
  18. 20
      mass_mailing_newsletter_welcome_mail/views/mail_mass_mailing_list.xml

121
mass_mailing_newsletter_welcome_mail/README.rst

@ -0,0 +1,121 @@
===============================
Welcome mail to new subscribers
===============================
.. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! This file is generated by oca-gen-addon-readme !!
!! changes will be overwritten. !!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
.. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png
:target: https://odoo-community.org/page/development-status
:alt: Beta
.. |badge2| image:: https://img.shields.io/badge/licence-AGPL--3-blue.png
:target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
:alt: License: AGPL-3
.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fsocial-lightgray.png?logo=github
:target: https://github.com/OCA/social/tree/11.0/mass_mailing_newsletter_welcome_mail
:alt: OCA/social
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
:target: https://translation.odoo-community.org/projects/social-11-0/social-11-0-mass_mailing_newsletter_welcome_mail
:alt: Translate me on Weblate
.. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png
:target: https://runbot.odoo-community.org/runbot/205/11.0
:alt: Try me on Runbot
|badge1| |badge2| |badge3| |badge4| |badge5|
This module was written to extend the functionality of the website popup
newsletter subscription form to support sending to new subscribers an
automatic welcome email and allow you to customize it.
**Table of contents**
.. contents::
:local:
Configuration
=============
To configure this module, you need to:
#. Go to *Email Marketing > Contacts > Mailing Lists*.
#. Edit or create one.
#. Set a *Welcome mail template* to enable this module's special behavior when
somebody subscribes to this mailing list. You can use one shipped with
this module, called *Welcome mail to newsletter subscribers*,
as a starting point.
#. You can also customize this template as you prefer.
To be used, you also must make sure a subscription snippet for this list exists
somewhere in your website:
#. Go to your website.
#. Navigate to a page where you want to include the subscription widget.
#. *Edit* the webpage.
#. Drag and drop any *Structure* or *Features* block you like.
#. Drag and drop the *Inner content > Newsletter* block inside it.
#. Choose the same mailing list you configured above.
Of course, outgoing mail must be properly configured in your instance, or
emails will never be sent.
Usage
=====
After you have followed the configuration instructions:
#. Enter as an anonymous user (you can use a browser private window for that).
#. Navigate to the page where the newsletter subscription snippet is found.
#. Enter your email.
#. Hit *Subscribe*.
#. Check your inbox, you have new mail!
Known issues / Roadmap
======================
* Add tests.
Bug Tracker
===========
Bugs are tracked on `GitHub Issues <https://github.com/OCA/social/issues>`_.
In case of trouble, please check there if your issue has already been reported.
If you spotted it first, help us smashing it by providing a detailed and welcomed
`feedback <https://github.com/OCA/social/issues/new?body=module:%20mass_mailing_newsletter_welcome_mail%0Aversion:%2011.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**>`_.
Do not contact contributors directly about support or help with technical issues.
Credits
=======
Authors
~~~~~~~
* Tecnativa
Contributors
~~~~~~~~~~~~
* `Tecnativa <https://www.tecnativa.com>`__:
* Cristina Martin R.
* Jairo Llopis
Maintainers
~~~~~~~~~~~
This module is maintained by the OCA.
.. image:: https://odoo-community.org/logo.png
:alt: Odoo Community Association
:target: https://odoo-community.org
OCA, or the Odoo Community Association, is a nonprofit organization whose
mission is to support the collaborative development of Odoo features and
promote its widespread use.
This module is part of the `OCA/social <https://github.com/OCA/social/tree/11.0/mass_mailing_newsletter_welcome_mail>`_ project on GitHub.
You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.

2
mass_mailing_newsletter_welcome_mail/__init__.py

@ -0,0 +1,2 @@
from . import controllers
from . import models

21
mass_mailing_newsletter_welcome_mail/__manifest__.py

@ -0,0 +1,21 @@
# Copyright 2019 Tecnativa - Cristina Martin R.
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
{
'name': "Welcome mail to new subscribers",
"summary": "Send an automated welcome mail to new newsletter subscribers",
'license': 'AGPL-3',
'author': 'Tecnativa, '
'Odoo Community Association (OCA)',
'category': 'Social',
'version': '11.0.1.0.0',
'website': 'https://github.com/OCA/social',
'depends': [
'website_mass_mailing',
],
'data': [
"data/mail_template.xml",
"views/mail_mass_mailing_list.xml",
],
'application': False,
'installable': True,
}

1
mass_mailing_newsletter_welcome_mail/controllers/__init__.py

@ -0,0 +1 @@
from . import main

31
mass_mailing_newsletter_welcome_mail/controllers/main.py

@ -0,0 +1,31 @@
# Copyright 2019 Tecnativa - Jairo Llopis
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
from odoo.http import request, route
from odoo.addons.website_mass_mailing.controllers import main
class MassMailController(main.MassMailController):
@route()
def subscribe(self, list_id, email, **post):
"""Send welcome email to subscribers."""
result = super().subscribe(list_id, email, **post)
list_ = request.env["mail.mass_mailing.list"] \
.sudo().browse(int(list_id))
template = list_.welcome_mail_template_id
if not template:
return result
# Welcome new subscribers
contact = request.env["mail.mass_mailing.contact"].sudo().search([
('list_ids', 'in', list_.ids),
('email', '=', email),
("opt_out", "=", False),
], limit=1)
template.with_context(list_name=list_.name).send_mail(
contact.id,
# Must send now to use context
force_send=True,
# If we cannot notify, the visitor shouldn't be bothered
raise_exception=False,
)
return result

21
mass_mailing_newsletter_welcome_mail/data/mail_template.xml

@ -0,0 +1,21 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright 2019 Tecnativa - Jairo Llopis
License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). -->
<data noupdate="1">
<record id="mail_template_welcome" model="mail.template">
<field name="name">Welcome mail to newsletter subscribers</field>
<field name="model_id" ref="mass_mailing.model_mail_mass_mailing_contact"/>
<field name="use_default_to" eval="True"/>
<field name="lang">${ctx.get("lang")}</field>
<field name="subject">Welcome to the mailing list ${ctx.get("list_name")}</field>
<field name="body_html" type="html">
<div>Dear <b>${object.name or object.email}</b>,
<br/>
<h3>Thanks for signing up for our newsletter!</h3>
<p>Regards,</p>
</div>
</field>
</record>
</data>

40
mass_mailing_newsletter_welcome_mail/i18n/es.po

@ -0,0 +1,40 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * mass_mailing_newsletter_welcome_mail
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 11.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2019-05-02 11:06+0000\n"
"PO-Revision-Date: 2019-05-02 12:08+0100\n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Poedit 2.2.1\n"
"Last-Translator: Jairo Llopis <yajo.sk8@gmail.com>\n"
"Language: es_ES\n"
#. module: mass_mailing_newsletter_welcome_mail
#: model:mail.template,body_html:mass_mailing_newsletter_welcome_mail.email_template
msgid ""
"<div>Dear <b>${object.name or object.email}</b>,\n"
" <br/>\n"
" <h3>Thanks for signing up for our newsletter!</h3>\n"
" <p>Regards,</p>\n"
" </div>\n"
" "
msgstr ""
"<div>Estimado/a <b>${object.name or object.email}</b>,\n"
" <br/>\n"
" <h3>¡Gracias por suscribirse a nuestro boletín!</h3>\n"
" <p>Saludos,</p>\n"
" </div>\n"
" "
#. module: mass_mailing_newsletter_welcome_mail
#: model:mail.template,subject:mass_mailing_newsletter_welcome_mail.email_template
msgid "Welcome to the mailing list ${ctx.get(\"list_name\")}"
msgstr "Bienvenido/a a la lista de correo ${ctx.get(\"list_name\")}"

31
mass_mailing_newsletter_welcome_mail/i18n/mass_mailing_welcome_mail.pot

@ -0,0 +1,31 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * mass_mailing_newsletter_welcome_mail
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 11.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2019-05-02 11:06+0000\n"
"PO-Revision-Date: 2019-05-02 11:06+0000\n"
"Last-Translator: <>\n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: \n"
#. module: mass_mailing_newsletter_welcome_mail
#: model:mail.template,body_html:mass_mailing_newsletter_welcome_mail.email_template
msgid "<div>Dear <b>${object.name or object.email}</b>,\n"
" <br/>\n"
" <h3>Thanks for signing up for our newsletter!</h3>\n"
" <p>Regards,</p>\n"
" </div>\n"
" "
msgstr ""
#. module: mass_mailing_newsletter_welcome_mail
#: model:mail.template,subject:mass_mailing_newsletter_welcome_mail.email_template
msgid "Welcome to the mailing list ${ctx.get(\"list_name\")}"
msgstr ""

1
mass_mailing_newsletter_welcome_mail/models/__init__.py

@ -0,0 +1 @@
from . import mail_mass_mailing_list

16
mass_mailing_newsletter_welcome_mail/models/mail_mass_mailing_list.py

@ -0,0 +1,16 @@
# Copyright 2019 Tecnativa - Jairo Llopis
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
from odoo import fields, models
class MailMassMailingList(models.Model):
_inherit = 'mail.mass_mailing.list'
welcome_mail_template_id = fields.Many2one(
string="Welcome mail template",
comodel_name='mail.template',
ondelete='set null',
help="Mail template to be sent when a contact is subscribed from "
"the website."
)

22
mass_mailing_newsletter_welcome_mail/readme/CONFIGURE.rst

@ -0,0 +1,22 @@
To configure this module, you need to:
#. Go to *Email Marketing > Contacts > Mailing Lists*.
#. Edit or create one.
#. Set a *Welcome mail template* to enable this module's special behavior when
somebody subscribes to this mailing list. You can use one shipped with
this module, called *Welcome mail to newsletter subscribers*,
as a starting point.
#. You can also customize this template as you prefer.
To be used, you also must make sure a subscription snippet for this list exists
somewhere in your website:
#. Go to your website.
#. Navigate to a page where you want to include the subscription widget.
#. *Edit* the webpage.
#. Drag and drop any *Structure* or *Features* block you like.
#. Drag and drop the *Inner content > Newsletter* block inside it.
#. Choose the same mailing list you configured above.
Of course, outgoing mail must be properly configured in your instance, or
emails will never be sent.

5
mass_mailing_newsletter_welcome_mail/readme/CONTRIBUTORS.rst

@ -0,0 +1,5 @@
* `Tecnativa <https://www.tecnativa.com>`__:
* Cristina Martin R.
* Jairo Llopis

3
mass_mailing_newsletter_welcome_mail/readme/DESCRIPTION.rst

@ -0,0 +1,3 @@
This module was written to extend the functionality of the website popup
newsletter subscription form to support sending to new subscribers an
automatic welcome email and allow you to customize it.

1
mass_mailing_newsletter_welcome_mail/readme/ROADMAP.rst

@ -0,0 +1 @@
* Add tests.

7
mass_mailing_newsletter_welcome_mail/readme/USAGE.rst

@ -0,0 +1,7 @@
After you have followed the configuration instructions:
#. Enter as an anonymous user (you can use a browser private window for that).
#. Navigate to the page where the newsletter subscription snippet is found.
#. Enter your email.
#. Hit *Subscribe*.
#. Check your inbox, you have new mail!

BIN
mass_mailing_newsletter_welcome_mail/static/description/icon.png

After

Width: 128  |  Height: 128  |  Size: 9.2 KiB

470
mass_mailing_newsletter_welcome_mail/static/description/index.html

@ -0,0 +1,470 @@
<?xml version="1.0" encoding="utf-8" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="generator" content="Docutils 0.14: http://docutils.sourceforge.net/" />
<title>Welcome mail to new subscribers</title>
<style type="text/css">
/*
:Author: David Goodger (goodger@python.org)
:Id: $Id: html4css1.css 7952 2016-07-26 18:15:59Z milde $
:Copyright: This stylesheet has been placed in the public domain.
Default cascading style sheet for the HTML output of Docutils.
See http://docutils.sf.net/docs/howto/html-stylesheets.html for how to
customize this style sheet.
*/
/* used to remove borders from tables and images */
.borderless, table.borderless td, table.borderless th {
border: 0 }
table.borderless td, table.borderless th {
/* Override padding for "table.docutils td" with "! important".
The right padding separates the table cells. */
padding: 0 0.5em 0 0 ! important }
.first {
/* Override more specific margin styles with "! important". */
margin-top: 0 ! important }
.last, .with-subtitle {
margin-bottom: 0 ! important }
.hidden {
display: none }
.subscript {
vertical-align: sub;
font-size: smaller }
.superscript {
vertical-align: super;
font-size: smaller }
a.toc-backref {
text-decoration: none ;
color: black }
blockquote.epigraph {
margin: 2em 5em ; }
dl.docutils dd {
margin-bottom: 0.5em }
object[type="image/svg+xml"], object[type="application/x-shockwave-flash"] {
overflow: hidden;
}
/* Uncomment (and remove this text!) to get bold-faced definition list terms
dl.docutils dt {
font-weight: bold }
*/
div.abstract {
margin: 2em 5em }
div.abstract p.topic-title {
font-weight: bold ;
text-align: center }
div.admonition, div.attention, div.caution, div.danger, div.error,
div.hint, div.important, div.note, div.tip, div.warning {
margin: 2em ;
border: medium outset ;
padding: 1em }
div.admonition p.admonition-title, div.hint p.admonition-title,
div.important p.admonition-title, div.note p.admonition-title,
div.tip p.admonition-title {
font-weight: bold ;
font-family: sans-serif }
div.attention p.admonition-title, div.caution p.admonition-title,
div.danger p.admonition-title, div.error p.admonition-title,
div.warning p.admonition-title, .code .error {
color: red ;
font-weight: bold ;
font-family: sans-serif }
/* Uncomment (and remove this text!) to get reduced vertical space in
compound paragraphs.
div.compound .compound-first, div.compound .compound-middle {
margin-bottom: 0.5em }
div.compound .compound-last, div.compound .compound-middle {
margin-top: 0.5em }
*/
div.dedication {
margin: 2em 5em ;
text-align: center ;
font-style: italic }
div.dedication p.topic-title {
font-weight: bold ;
font-style: normal }
div.figure {
margin-left: 2em ;
margin-right: 2em }
div.footer, div.header {
clear: both;
font-size: smaller }
div.line-block {
display: block ;
margin-top: 1em ;
margin-bottom: 1em }
div.line-block div.line-block {
margin-top: 0 ;
margin-bottom: 0 ;
margin-left: 1.5em }
div.sidebar {
margin: 0 0 0.5em 1em ;
border: medium outset ;
padding: 1em ;
background-color: #ffffee ;
width: 40% ;
float: right ;
clear: right }
div.sidebar p.rubric {
font-family: sans-serif ;
font-size: medium }
div.system-messages {
margin: 5em }
div.system-messages h1 {
color: red }
div.system-message {
border: medium outset ;
padding: 1em }
div.system-message p.system-message-title {
color: red ;
font-weight: bold }
div.topic {
margin: 2em }
h1.section-subtitle, h2.section-subtitle, h3.section-subtitle,
h4.section-subtitle, h5.section-subtitle, h6.section-subtitle {
margin-top: 0.4em }
h1.title {
text-align: center }
h2.subtitle {
text-align: center }
hr.docutils {
width: 75% }
img.align-left, .figure.align-left, object.align-left, table.align-left {
clear: left ;
float: left ;
margin-right: 1em }
img.align-right, .figure.align-right, object.align-right, table.align-right {
clear: right ;
float: right ;
margin-left: 1em }
img.align-center, .figure.align-center, object.align-center {
display: block;
margin-left: auto;
margin-right: auto;
}
table.align-center {
margin-left: auto;
margin-right: auto;
}
.align-left {
text-align: left }
.align-center {
clear: both ;
text-align: center }
.align-right {
text-align: right }
/* reset inner alignment in figures */
div.align-right {
text-align: inherit }
/* div.align-center * { */
/* text-align: left } */
.align-top {
vertical-align: top }
.align-middle {
vertical-align: middle }
.align-bottom {
vertical-align: bottom }
ol.simple, ul.simple {
margin-bottom: 1em }
ol.arabic {
list-style: decimal }
ol.loweralpha {
list-style: lower-alpha }
ol.upperalpha {
list-style: upper-alpha }
ol.lowerroman {
list-style: lower-roman }
ol.upperroman {
list-style: upper-roman }
p.attribution {
text-align: right ;
margin-left: 50% }
p.caption {
font-style: italic }
p.credits {
font-style: italic ;
font-size: smaller }
p.label {
white-space: nowrap }
p.rubric {
font-weight: bold ;
font-size: larger ;
color: maroon ;
text-align: center }
p.sidebar-title {
font-family: sans-serif ;
font-weight: bold ;
font-size: larger }
p.sidebar-subtitle {
font-family: sans-serif ;
font-weight: bold }
p.topic-title {
font-weight: bold }
pre.address {
margin-bottom: 0 ;
margin-top: 0 ;
font: inherit }
pre.literal-block, pre.doctest-block, pre.math, pre.code {
margin-left: 2em ;
margin-right: 2em }
pre.code .ln { color: grey; } /* line numbers */
pre.code, code { background-color: #eeeeee }
pre.code .comment, code .comment { color: #5C6576 }
pre.code .keyword, code .keyword { color: #3B0D06; font-weight: bold }
pre.code .literal.string, code .literal.string { color: #0C5404 }
pre.code .name.builtin, code .name.builtin { color: #352B84 }
pre.code .deleted, code .deleted { background-color: #DEB0A1}
pre.code .inserted, code .inserted { background-color: #A3D289}
span.classifier {
font-family: sans-serif ;
font-style: oblique }
span.classifier-delimiter {
font-family: sans-serif ;
font-weight: bold }
span.interpreted {
font-family: sans-serif }
span.option {
white-space: nowrap }
span.pre {
white-space: pre }
span.problematic {
color: red }
span.section-subtitle {
/* font-size relative to parent (h1..h6 element) */
font-size: 80% }
table.citation {
border-left: solid 1px gray;
margin-left: 1px }
table.docinfo {
margin: 2em 4em }
table.docutils {
margin-top: 0.5em ;
margin-bottom: 0.5em }
table.footnote {
border-left: solid 1px black;
margin-left: 1px }
table.docutils td, table.docutils th,
table.docinfo td, table.docinfo th {
padding-left: 0.5em ;
padding-right: 0.5em ;
vertical-align: top }
table.docutils th.field-name, table.docinfo th.docinfo-name {
font-weight: bold ;
text-align: left ;
white-space: nowrap ;
padding-left: 0 }
/* "booktabs" style (no vertical lines) */
table.docutils.booktabs {
border: 0px;
border-top: 2px solid;
border-bottom: 2px solid;
border-collapse: collapse;
}
table.docutils.booktabs * {
border: 0px;
}
table.docutils.booktabs th {
border-bottom: thin solid;
text-align: left;
}
h1 tt.docutils, h2 tt.docutils, h3 tt.docutils,
h4 tt.docutils, h5 tt.docutils, h6 tt.docutils {
font-size: 100% }
ul.auto-toc {
list-style-type: none }
</style>
</head>
<body>
<div class="document" id="welcome-mail-to-new-subscribers">
<h1 class="title">Welcome mail to new subscribers</h1>
<!-- !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! This file is generated by oca-gen-addon-readme !!
!! changes will be overwritten. !!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
<p><a class="reference external" href="https://odoo-community.org/page/development-status"><img alt="Beta" src="https://img.shields.io/badge/maturity-Beta-yellow.png" /></a> <a class="reference external" href="http://www.gnu.org/licenses/agpl-3.0-standalone.html"><img alt="License: AGPL-3" src="https://img.shields.io/badge/licence-AGPL--3-blue.png" /></a> <a class="reference external" href="https://github.com/OCA/social/tree/11.0/mass_mailing_newsletter_welcome_mail"><img alt="OCA/social" src="https://img.shields.io/badge/github-OCA%2Fsocial-lightgray.png?logo=github" /></a> <a class="reference external" href="https://translation.odoo-community.org/projects/social-11-0/social-11-0-mass_mailing_newsletter_welcome_mail"><img alt="Translate me on Weblate" src="https://img.shields.io/badge/weblate-Translate%20me-F47D42.png" /></a> <a class="reference external" href="https://runbot.odoo-community.org/runbot/205/11.0"><img alt="Try me on Runbot" src="https://img.shields.io/badge/runbot-Try%20me-875A7B.png" /></a></p>
<p>This module was written to extend the functionality of the website popup
newsletter subscription form to support sending to new subscribers an
automatic welcome email and allow you to customize it.</p>
<p><strong>Table of contents</strong></p>
<div class="contents local topic" id="contents">
<ul class="simple">
<li><a class="reference internal" href="#configuration" id="id1">Configuration</a></li>
<li><a class="reference internal" href="#usage" id="id2">Usage</a></li>
<li><a class="reference internal" href="#known-issues-roadmap" id="id3">Known issues / Roadmap</a></li>
<li><a class="reference internal" href="#bug-tracker" id="id4">Bug Tracker</a></li>
<li><a class="reference internal" href="#credits" id="id5">Credits</a><ul>
<li><a class="reference internal" href="#authors" id="id6">Authors</a></li>
<li><a class="reference internal" href="#contributors" id="id7">Contributors</a></li>
<li><a class="reference internal" href="#maintainers" id="id8">Maintainers</a></li>
</ul>
</li>
</ul>
</div>
<div class="section" id="configuration">
<h1><a class="toc-backref" href="#id1">Configuration</a></h1>
<p>To configure this module, you need to:</p>
<ol class="arabic simple">
<li>Go to <em>Email Marketing &gt; Contacts &gt; Mailing Lists</em>.</li>
<li>Edit or create one.</li>
<li>Set a <em>Welcome mail template</em> to enable this module’s special behavior when
somebody subscribes to this mailing list. You can use one shipped with
this module, called <em>Welcome mail to newsletter subscribers</em>,
as a starting point.</li>
<li>You can also customize this template as you prefer.</li>
</ol>
<p>To be used, you also must make sure a subscription snippet for this list exists
somewhere in your website:</p>
<ol class="arabic simple">
<li>Go to your website.</li>
<li>Navigate to a page where you want to include the subscription widget.</li>
<li><em>Edit</em> the webpage.</li>
<li>Drag and drop any <em>Structure</em> or <em>Features</em> block you like.</li>
<li>Drag and drop the <em>Inner content &gt; Newsletter</em> block inside it.</li>
<li>Choose the same mailing list you configured above.</li>
</ol>
<p>Of course, outgoing mail must be properly configured in your instance, or
emails will never be sent.</p>
</div>
<div class="section" id="usage">
<h1><a class="toc-backref" href="#id2">Usage</a></h1>
<p>After you have followed the configuration instructions:</p>
<ol class="arabic simple">
<li>Enter as an anonymous user (you can use a browser private window for that).</li>
<li>Navigate to the page where the newsletter subscription snippet is found.</li>
<li>Enter your email.</li>
<li>Hit <em>Subscribe</em>.</li>
<li>Check your inbox, you have new mail!</li>
</ol>
</div>
<div class="section" id="known-issues-roadmap">
<h1><a class="toc-backref" href="#id3">Known issues / Roadmap</a></h1>
<ul class="simple">
<li>Add tests.</li>
</ul>
</div>
<div class="section" id="bug-tracker">
<h1><a class="toc-backref" href="#id4">Bug Tracker</a></h1>
<p>Bugs are tracked on <a class="reference external" href="https://github.com/OCA/social/issues">GitHub Issues</a>.
In case of trouble, please check there if your issue has already been reported.
If you spotted it first, help us smashing it by providing a detailed and welcomed
<a class="reference external" href="https://github.com/OCA/social/issues/new?body=module:%20mass_mailing_newsletter_welcome_mail%0Aversion:%2011.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**">feedback</a>.</p>
<p>Do not contact contributors directly about support or help with technical issues.</p>
</div>
<div class="section" id="credits">
<h1><a class="toc-backref" href="#id5">Credits</a></h1>
<div class="section" id="authors">
<h2><a class="toc-backref" href="#id6">Authors</a></h2>
<ul class="simple">
<li>Tecnativa</li>
</ul>
</div>
<div class="section" id="contributors">
<h2><a class="toc-backref" href="#id7">Contributors</a></h2>
<ul class="simple">
<li><a class="reference external" href="https://www.tecnativa.com">Tecnativa</a>:<ul>
<li>Cristina Martin R.</li>
<li>Jairo Llopis</li>
</ul>
</li>
</ul>
</div>
<div class="section" id="maintainers">
<h2><a class="toc-backref" href="#id8">Maintainers</a></h2>
<p>This module is maintained by the OCA.</p>
<a class="reference external image-reference" href="https://odoo-community.org"><img alt="Odoo Community Association" src="https://odoo-community.org/logo.png" /></a>
<p>OCA, or the Odoo Community Association, is a nonprofit organization whose
mission is to support the collaborative development of Odoo features and
promote its widespread use.</p>
<p>This module is part of the <a class="reference external" href="https://github.com/OCA/social/tree/11.0/mass_mailing_newsletter_welcome_mail">OCA/social</a> project on GitHub.</p>
<p>You are welcome to contribute. To learn how please visit <a class="reference external" href="https://odoo-community.org/page/Contribute">https://odoo-community.org/page/Contribute</a>.</p>
</div>
</div>
</div>
</body>
</html>

20
mass_mailing_newsletter_welcome_mail/views/mail_mass_mailing_list.xml

@ -0,0 +1,20 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright 2019 Tecnativa - Jairo Llopis
License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). -->
<data>
<record id="list_form" model="ir.ui.view">
<field name="name">Add welcome mail template field</field>
<field name="model">mail.mass_mailing.list</field>
<field name="inherit_id" ref="mass_mailing.view_mail_mass_mailing_list_form" />
<field name="arch" type="xml">
<div class="oe_title" position="after">
<group>
<field name="welcome_mail_template_id"/>
</group>
</div>
</field>
</record>
</data>
Loading…
Cancel
Save