Merge PR #452 into 12.0

Signed-off-by pedrobaeza
pull/460/head
OCA-git-bot 2019-10-31 00:02:41 +00:00
commit 50ced3a167
19 changed files with 881 additions and 0 deletions

View File

@ -0,0 +1,122 @@
===============================
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/12.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-12-0/social-12-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/12.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 > Mailing Lists > 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:%2012.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
* Ernesto Tejeda
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/12.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.

View File

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

View File

@ -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': '12.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,
}

View File

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

View File

@ -0,0 +1,36 @@
# 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_obj = request.env["mail.mass_mailing.contact"].with_context(
default_list_ids=[list_id])
contact = contact_obj.sudo().search([
('email', '=', request.session['mass_mailing_email']),
('opt_out', '=', False), # Needed until odoo/odoo#39604 is fixed
('is_blacklisted', '=', False),
], limit=1)
# Needed until odoo/odoo#39604 is fixed
if not contact:
return result
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

View File

@ -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>

View File

@ -0,0 +1,55 @@
# 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"
"Last-Translator: Jairo Llopis <yajo.sk8@gmail.com>\n"
"Language-Team: \n"
"Language: es_ES\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"
#. module: mass_mailing_newsletter_welcome_mail
#: model:mail.template,body_html:mass_mailing_newsletter_welcome_mail.mail_template_welcome
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:ir.model.fields,help:mass_mailing_newsletter_welcome_mail.field_mail_mass_mailing_list_welcome_mail_template_id
msgid "Mail template to be sent when a contact is subscribed from the website."
msgstr ""
#. module: mass_mailing_newsletter_welcome_mail
#: model:ir.model,name:mass_mailing_newsletter_welcome_mail.model_mail_mass_mailing_list
msgid "Mailing List"
msgstr ""
#. module: mass_mailing_newsletter_welcome_mail
#: model:ir.model.fields,field_description:mass_mailing_newsletter_welcome_mail.field_mail_mass_mailing_list_welcome_mail_template_id
msgid "Welcome mail template"
msgstr ""
#. module: mass_mailing_newsletter_welcome_mail
#: model:mail.template,subject:mass_mailing_newsletter_welcome_mail.mail_template_welcome
msgid "Welcome to the mailing list ${ctx.get(\"list_name\")}"
msgstr "Bienvenido/a a la lista de correo ${ctx.get(\"list_name\")}"

View File

@ -0,0 +1,45 @@
# 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"
"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.mail_template_welcome
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:ir.model.fields,help:mass_mailing_newsletter_welcome_mail.field_mail_mass_mailing_list_welcome_mail_template_id
msgid "Mail template to be sent when a contact is subscribed from the website."
msgstr ""
#. module: mass_mailing_newsletter_welcome_mail
#: model:ir.model,name:mass_mailing_newsletter_welcome_mail.model_mail_mass_mailing_list
msgid "Mailing List"
msgstr ""
#. module: mass_mailing_newsletter_welcome_mail
#: model:ir.model.fields,field_description:mass_mailing_newsletter_welcome_mail.field_mail_mass_mailing_list_welcome_mail_template_id
msgid "Welcome mail template"
msgstr ""
#. module: mass_mailing_newsletter_welcome_mail
#: model:mail.template,subject:mass_mailing_newsletter_welcome_mail.mail_template_welcome
msgid "Welcome to the mailing list ${ctx.get(\"list_name\")}"
msgstr ""

View File

@ -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 ""

View File

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

View File

@ -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."
)

View File

@ -0,0 +1,22 @@
To configure this module, you need to:
#. Go to *Email Marketing > Mailing Lists > 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.

View File

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

View File

@ -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.

View File

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

View File

@ -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!

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.2 KiB

View File

@ -0,0 +1,471 @@
<?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.15.1: 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/12.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-12-0/social-12-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/12.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; Mailing Lists &gt; Mailing Lists</em>.</li>
<li>Edit or create one.</li>
<li>Set a <em>Welcome mail template</em> to enable this modules 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:%2012.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>
<li>Ernesto Tejeda</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/12.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>

View File

@ -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>