mail_tracking_mass_mailing (#78)

[ADD] mail_tracking_mass_mailing

==============================
Mail tracking for mass mailing
==============================

Links mail statistics objects with mail tracking objects.

Installation
============

This addon will be automatically installed when 'mail_tracking' and
'mass_mailing' are both installed

Usage
=====

From mail statistic object, you can see:
- Email tracking state
- Email related tracking object
- Email related tracking events

From mass mailing contact, you can see:
- Email score, in order to clean up your lists from bad score emails

As a bonus feature, you have a new checkbox 'Avoid resend' in mass mailing,
in order to not send twice the same email to the same recipient. This is very
useful when you want to resend the mass mailing after changing selection
recipients. Notice that recipient selection could be a domain over a model, so
result ids could change over the time. With this flag you can send
the same email several times but only once to each recipient.

OCA Transbot updated translations from Transifex
pull/1248/head
Antonio Espinosa 2016-08-16 09:07:35 +02:00 committed by David
parent 82950f1096
commit da1d864e5c
30 changed files with 2384 additions and 0 deletions

View File

@ -0,0 +1,77 @@
.. image:: https://img.shields.io/badge/licence-AGPL--3-blue.svg
:target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
:alt: License: AGPL-3
==============================
Mail tracking for mass mailing
==============================
Links mail statistics objects with mail tracking objects.
Installation
============
This addon will be automatically installed when 'mail_tracking' and
'mass_mailing' are both installed
Usage
=====
From mail statistic object, you can see:
- Email tracking state
- Email related tracking object
- Email related tracking events
From mass mailing contact, you can see:
- Email score, in order to clean up your lists from bad score emails
As a bonus feature, you have a new checkbox 'Avoid resend' in mass mailing,
in order to not send twice the same email to the same recipient. This is very
useful when you want to resend the mass mailing after changing selection
recipients. Notice that recipient selection could be a domain over a model, so
result ids could change over the time. With this flag you can send
the same email several times but only once to each recipient.
.. image:: https://odoo-community.org/website/image/ir.attachment/5784_f2813bd/datas
:alt: Try me on Runbot
:target: https://runbot.odoo-community.org/runbot/205/8.0
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.
Credits
=======
Images
------
* Odoo Community Association: `Icon <https://github.com/OCA/maintainer-tools/blob/master/template/module/static/description/icon.svg>`_.
Contributors
------------
* Pedro M. Baeza <pedro.baeza@tecnativa.com>
* Antonio Espinosa <antonio.espinosa@tecnativa.com>
Maintainer
----------
.. image:: https://odoo-community.org/logo.png
:alt: Odoo Community Association
:target: https://odoo-community.org
This module is maintained by the OCA.
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.
To contribute to this module, please visit https://odoo-community.org.

View File

@ -0,0 +1,6 @@
# -*- coding: utf-8 -*-
# © 2016 Antonio Espinosa - <antonio.espinosa@tecnativa.com>
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
from . import models
from .hooks import pre_init_hook

View File

@ -0,0 +1,28 @@
# -*- coding: utf-8 -*-
# © 2016 Antonio Espinosa - <antonio.espinosa@tecnativa.com>
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
{
"name": "Mail tracking for mass mailing",
"summary": "Improve mass mailing email tracking",
"version": "8.0.1.0.1",
"category": "Social Network",
"website": "http://www.tecnativa.com",
"author": "Tecnativa, "
"Odoo Community Association (OCA)",
"license": "AGPL-3",
"application": False,
"installable": True,
'auto_install': True,
"depends": [
"mass_mailing",
"mail_tracking",
],
"data": [
"views/mail_tracking_email_view.xml",
"views/mail_mail_statistics_view.xml",
"views/mail_mass_mailing_view.xml",
"views/mail_mass_mailing_contact_view.xml",
],
"pre_init_hook": "pre_init_hook",
}

View File

@ -0,0 +1,20 @@
# -*- coding: utf-8 -*-
# © 2016 Antonio Espinosa - <antonio.espinosa@tecnativa.com>
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
import logging
try:
from openerp.addons.mail_tracking.hooks import column_add_with_value
except ImportError:
column_add_with_value = False
_logger = logging.getLogger(__name__)
def pre_init_hook(cr):
if column_add_with_value:
_logger.info("Creating mail.mass_mailing.contact.email_score column "
"with value 50.0")
column_add_with_value(
cr, 'mail_mass_mailing_contact', 'email_score', 'double precision',
50.0)

View File

@ -0,0 +1,142 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * mail_tracking_mass_mailing
#
# Translators:
# Carles Antoli <carlesantoli@hotmail.com>, 2016
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 8.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-08-17 02:42+0000\n"
"PO-Revision-Date: 2016-08-17 02:42+0000\n"
"Last-Translator: Carles Antoli <carlesantoli@hotmail.com>, 2016\n"
"Language-Team: Catalan (https://www.transifex.com/oca/teams/23907/ca/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: ca\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: mail_tracking_mass_mailing
#: help:mail.mail.statistics,tracking_state:0
msgid ""
" * The 'Error' status indicates that there was an error when trying to sent the email, for example, 'No valid recipient'\n"
" * The 'Sent' status indicates that message was succesfully sent via outgoing email server (SMTP).\n"
" * The 'Delivered' status indicates that message was succesfully delivered to recipient Mail Exchange (MX) server.\n"
" * The 'Open' status indicates that message was opened or clicked by recipient.\n"
" * The 'Rejected' status indicates that recipient email address is blacklisted by outgoing email server (SMTP). It is recomended to delete this email address.\n"
" * The 'Spam' status indicates that outgoing email server (SMTP) consider this message as spam.\n"
" * The 'Unsubscribed' status indicates that recipient has requested to be unsubscribed from this message.\n"
" * The 'Bounced' status indicates that message was bounced by recipient Mail Exchange (MX) server.\n"
" * The 'Soft bounced' status indicates that message was soft bounced by recipient Mail Exchange (MX) server.\n"
msgstr ""
#. module: mail_tracking_mass_mailing
#: field:mail.mass_mailing,avoid_resend:0
msgid "Avoid resend"
msgstr ""
#. module: mail_tracking_mass_mailing
#: help:mail.mass_mailing,avoid_resend:0
msgid "Avoid to send this mass mailing email twice to the same recipient"
msgstr ""
#. module: mail_tracking_mass_mailing
#: view:mail.mail.statistics:mail_tracking_mass_mailing.view_mail_mail_statistics_form
msgid "Country"
msgstr ""
#. module: mail_tracking_mass_mailing
#: field:mail.mail,path:0
msgid "Discussion Path"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.model,name:mail_tracking_mass_mailing.model_mail_mail_statistics
msgid "Email Statistics"
msgstr "Estadístiques de correu electrònic"
#. module: mail_tracking_mass_mailing
#: field:mail.mass_mailing.contact,email_score:0
msgid "Email score"
msgstr ""
#. module: mail_tracking_mass_mailing
#: field:mail.tracking.email,mail_id_int:0
msgid "Mail ID"
msgstr ""
#. module: mail_tracking_mass_mailing
#: field:mail.tracking.email,mail_stats_id:0
msgid "Mail statistics"
msgstr ""
#. module: mail_tracking_mass_mailing
#: field:mail.mail.statistics,mail_tracking_id:0
msgid "Mail tracking"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.model,name:mail_tracking_mass_mailing.model_mail_tracking_email
msgid "MailTracking email"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.model,name:mail_tracking_mass_mailing.model_mail_tracking_event
msgid "MailTracking event"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.model,name:mail_tracking_mass_mailing.model_mail_mass_mailing
msgid "Mass Mailing"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.model,name:mail_tracking_mass_mailing.model_mail_mass_mailing_contact
msgid "Mass Mailing Contact"
msgstr ""
#. module: mail_tracking_mass_mailing
#: field:mail.tracking.email,mass_mailing_id:0
msgid "Mass mailing"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.model,name:mail_tracking_mass_mailing.model_mail_mail
msgid "Outgoing Mails"
msgstr "Correus sortints"
#. module: mail_tracking_mass_mailing
#: field:mail.mail.statistics,tracking_state:0
msgid "State"
msgstr ""
#. module: mail_tracking_mass_mailing
#: code:addons/mail_tracking_mass_mailing/models/mail_mass_mailing.py:28
#, python-format
msgid ""
"There is no more recipients to send and 'Avoid resend' option is enabled"
msgstr ""
#. module: mail_tracking_mass_mailing
#: field:mail.mass_mailing.contact,tracking_email_ids:0
msgid "Tracking emails"
msgstr ""
#. module: mail_tracking_mass_mailing
#: view:mail.mail.statistics:mail_tracking_mass_mailing.view_mail_mail_statistics_form
#: field:mail.mail.statistics,tracking_event_ids:0
msgid "Tracking events"
msgstr ""
#. module: mail_tracking_mass_mailing
#: help:mail.mail,path:0
msgid ""
"Used to display messages in a paragraph-based chatter using a unique path;"
msgstr ""
#. module: mail_tracking_mass_mailing
#: view:mail.mail.statistics:mail_tracking_mass_mailing.view_mail_mail_statistics_form
msgid "User agent"
msgstr ""

View File

@ -0,0 +1,147 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * mail_tracking_mass_mailing
#
# Translators:
# OCA Transbot <transbot@odoo-community.org>, 2016
# Rudolf Schnapka <rs@techno-flex.de>, 2016
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 8.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-11-25 18:06+0000\n"
"PO-Revision-Date: 2016-11-25 18:06+0000\n"
"Last-Translator: Rudolf Schnapka <rs@techno-flex.de>, 2016\n"
"Language-Team: German (https://www.transifex.com/oca/teams/23907/de/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: de\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: mail_tracking_mass_mailing
#: field:mail.mass_mailing,avoid_resend:0
msgid "Avoid resend"
msgstr ""
#. module: mail_tracking_mass_mailing
#: help:mail.mass_mailing,avoid_resend:0
msgid "Avoid to send this mass mailing email twice to the same recipient"
msgstr ""
#. module: mail_tracking_mass_mailing
#: view:mail.mail.statistics:mail_tracking_mass_mailing.view_mail_mail_statistics_form
msgid "Country"
msgstr ""
#. module: mail_tracking_mass_mailing
#: field:mail.mail,path:0
msgid "Discussion Path"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.model,name:mail_tracking_mass_mailing.model_mail_mail_statistics
msgid "Email Statistics"
msgstr "Email-Statistiken"
#. module: mail_tracking_mass_mailing
#: view:mail.mass_mailing.contact:mail_tracking_mass_mailing.view_mail_mass_mailing_contact_search
#: field:mail.mass_mailing.contact,email_bounced:0
msgid "Email bounced"
msgstr ""
#. module: mail_tracking_mass_mailing
#: field:mail.mass_mailing.contact,email_score:0
msgid "Email score"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.ui.menu,name:mail_tracking_mass_mailing.mail_tracking_email_menu
msgid "Emails"
msgstr "Emails"
#. module: mail_tracking_mass_mailing
#: model:ir.ui.menu,name:mail_tracking_mass_mailing.mail_tracking_event_menu
msgid "Events"
msgstr ""
#. module: mail_tracking_mass_mailing
#: field:mail.tracking.email,mail_id_int:0
msgid "Mail ID"
msgstr ""
#. module: mail_tracking_mass_mailing
#: field:mail.tracking.email,mail_stats_id:0
msgid "Mail statistics"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.ui.menu,name:mail_tracking_mass_mailing.mail_tracking_menu
#: field:mail.mail.statistics,mail_tracking_id:0
msgid "Mail tracking"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.actions.act_window,name:mail_tracking_mass_mailing.action_view_mail_tracking_email
msgid "Mail tracking emails"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.actions.act_window,name:mail_tracking_mass_mailing.action_view_mail_tracking_event
msgid "Mail tracking events"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.model,name:mail_tracking_mass_mailing.model_mail_tracking_email
msgid "MailTracking email"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.model,name:mail_tracking_mass_mailing.model_mail_tracking_event
msgid "MailTracking event"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.model,name:mail_tracking_mass_mailing.model_mail_mass_mailing
msgid "Mass Mailing"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.model,name:mail_tracking_mass_mailing.model_mail_mass_mailing_contact
msgid "Mass Mailing Contact"
msgstr ""
#. module: mail_tracking_mass_mailing
#: field:mail.tracking.email,mass_mailing_id:0
#: field:mail.tracking.event,mass_mailing_id:0
msgid "Mass mailing"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.model,name:mail_tracking_mass_mailing.model_mail_mail
msgid "Outgoing Mails"
msgstr "Ausgehende Nachrichten"
#. module: mail_tracking_mass_mailing
#: code:addons/mail_tracking_mass_mailing/models/mail_mass_mailing.py:28
#, python-format
msgid ""
"There is no more recipients to send and 'Avoid resend' option is enabled"
msgstr ""
#. module: mail_tracking_mass_mailing
#: view:mail.mail.statistics:mail_tracking_mass_mailing.view_mail_mail_statistics_form
#: field:mail.mail.statistics,tracking_event_ids:0
msgid "Tracking events"
msgstr ""
#. module: mail_tracking_mass_mailing
#: help:mail.mail,path:0
msgid ""
"Used to display messages in a paragraph-based chatter using a unique path;"
msgstr ""
#. module: mail_tracking_mass_mailing
#: view:mail.mail.statistics:mail_tracking_mass_mailing.view_mail_mail_statistics_form
msgid "User agent"
msgstr ""

View File

@ -0,0 +1,146 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * mail_tracking_mass_mailing
#
# Translators:
# Kostas Goutoudis <goutoudis@gmail.com>, 2016
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 8.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-11-25 18:06+0000\n"
"PO-Revision-Date: 2016-11-25 18:06+0000\n"
"Last-Translator: Kostas Goutoudis <goutoudis@gmail.com>, 2016\n"
"Language-Team: Greek (Greece) (https://www.transifex.com/oca/teams/23907/el_GR/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: el_GR\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: mail_tracking_mass_mailing
#: field:mail.mass_mailing,avoid_resend:0
msgid "Avoid resend"
msgstr ""
#. module: mail_tracking_mass_mailing
#: help:mail.mass_mailing,avoid_resend:0
msgid "Avoid to send this mass mailing email twice to the same recipient"
msgstr ""
#. module: mail_tracking_mass_mailing
#: view:mail.mail.statistics:mail_tracking_mass_mailing.view_mail_mail_statistics_form
msgid "Country"
msgstr "Χώρα"
#. module: mail_tracking_mass_mailing
#: field:mail.mail,path:0
msgid "Discussion Path"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.model,name:mail_tracking_mass_mailing.model_mail_mail_statistics
msgid "Email Statistics"
msgstr ""
#. module: mail_tracking_mass_mailing
#: view:mail.mass_mailing.contact:mail_tracking_mass_mailing.view_mail_mass_mailing_contact_search
#: field:mail.mass_mailing.contact,email_bounced:0
msgid "Email bounced"
msgstr ""
#. module: mail_tracking_mass_mailing
#: field:mail.mass_mailing.contact,email_score:0
msgid "Email score"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.ui.menu,name:mail_tracking_mass_mailing.mail_tracking_email_menu
msgid "Emails"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.ui.menu,name:mail_tracking_mass_mailing.mail_tracking_event_menu
msgid "Events"
msgstr ""
#. module: mail_tracking_mass_mailing
#: field:mail.tracking.email,mail_id_int:0
msgid "Mail ID"
msgstr ""
#. module: mail_tracking_mass_mailing
#: field:mail.tracking.email,mail_stats_id:0
msgid "Mail statistics"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.ui.menu,name:mail_tracking_mass_mailing.mail_tracking_menu
#: field:mail.mail.statistics,mail_tracking_id:0
msgid "Mail tracking"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.actions.act_window,name:mail_tracking_mass_mailing.action_view_mail_tracking_email
msgid "Mail tracking emails"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.actions.act_window,name:mail_tracking_mass_mailing.action_view_mail_tracking_event
msgid "Mail tracking events"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.model,name:mail_tracking_mass_mailing.model_mail_tracking_email
msgid "MailTracking email"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.model,name:mail_tracking_mass_mailing.model_mail_tracking_event
msgid "MailTracking event"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.model,name:mail_tracking_mass_mailing.model_mail_mass_mailing
msgid "Mass Mailing"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.model,name:mail_tracking_mass_mailing.model_mail_mass_mailing_contact
msgid "Mass Mailing Contact"
msgstr ""
#. module: mail_tracking_mass_mailing
#: field:mail.tracking.email,mass_mailing_id:0
#: field:mail.tracking.event,mass_mailing_id:0
msgid "Mass mailing"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.model,name:mail_tracking_mass_mailing.model_mail_mail
msgid "Outgoing Mails"
msgstr ""
#. module: mail_tracking_mass_mailing
#: code:addons/mail_tracking_mass_mailing/models/mail_mass_mailing.py:28
#, python-format
msgid ""
"There is no more recipients to send and 'Avoid resend' option is enabled"
msgstr ""
#. module: mail_tracking_mass_mailing
#: view:mail.mail.statistics:mail_tracking_mass_mailing.view_mail_mail_statistics_form
#: field:mail.mail.statistics,tracking_event_ids:0
msgid "Tracking events"
msgstr ""
#. module: mail_tracking_mass_mailing
#: help:mail.mail,path:0
msgid ""
"Used to display messages in a paragraph-based chatter using a unique path;"
msgstr ""
#. module: mail_tracking_mass_mailing
#: view:mail.mail.statistics:mail_tracking_mass_mailing.view_mail_mail_statistics_form
msgid "User agent"
msgstr ""

View File

@ -0,0 +1,148 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * mail_tracking_mass_mailing
#
# Translators:
# OCA Transbot <transbot@odoo-community.org>, 2016
# Gelo Joga Landoo <gj@landoo.es>, 2016
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 8.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-11-25 18:06+0000\n"
"PO-Revision-Date: 2016-11-25 18:06+0000\n"
"Last-Translator: Gelo Joga Landoo <gj@landoo.es>, 2016\n"
"Language-Team: Spanish (https://www.transifex.com/oca/teams/23907/es/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: es\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: mail_tracking_mass_mailing
#: field:mail.mass_mailing,avoid_resend:0
msgid "Avoid resend"
msgstr "Evitar reenvios"
#. module: mail_tracking_mass_mailing
#: help:mail.mass_mailing,avoid_resend:0
msgid "Avoid to send this mass mailing email twice to the same recipient"
msgstr ""
"Evitar que se envíe este correo masivo dos veces al mismo destinatario"
#. module: mail_tracking_mass_mailing
#: view:mail.mail.statistics:mail_tracking_mass_mailing.view_mail_mail_statistics_form
msgid "Country"
msgstr "País"
#. module: mail_tracking_mass_mailing
#: field:mail.mail,path:0
msgid "Discussion Path"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.model,name:mail_tracking_mass_mailing.model_mail_mail_statistics
msgid "Email Statistics"
msgstr "Estadísticas del email"
#. module: mail_tracking_mass_mailing
#: view:mail.mass_mailing.contact:mail_tracking_mass_mailing.view_mail_mass_mailing_contact_search
#: field:mail.mass_mailing.contact,email_bounced:0
msgid "Email bounced"
msgstr "E mail rebotado"
#. module: mail_tracking_mass_mailing
#: field:mail.mass_mailing.contact,email_score:0
msgid "Email score"
msgstr "Reputación del email"
#. module: mail_tracking_mass_mailing
#: model:ir.ui.menu,name:mail_tracking_mass_mailing.mail_tracking_email_menu
msgid "Emails"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.ui.menu,name:mail_tracking_mass_mailing.mail_tracking_event_menu
msgid "Events"
msgstr ""
#. module: mail_tracking_mass_mailing
#: field:mail.tracking.email,mail_id_int:0
msgid "Mail ID"
msgstr "Mail ID"
#. module: mail_tracking_mass_mailing
#: field:mail.tracking.email,mail_stats_id:0
msgid "Mail statistics"
msgstr "Estadísticas del email"
#. module: mail_tracking_mass_mailing
#: model:ir.ui.menu,name:mail_tracking_mass_mailing.mail_tracking_menu
#: field:mail.mail.statistics,mail_tracking_id:0
msgid "Mail tracking"
msgstr "Seguimiento del email"
#. module: mail_tracking_mass_mailing
#: model:ir.actions.act_window,name:mail_tracking_mass_mailing.action_view_mail_tracking_email
msgid "Mail tracking emails"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.actions.act_window,name:mail_tracking_mass_mailing.action_view_mail_tracking_event
msgid "Mail tracking events"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.model,name:mail_tracking_mass_mailing.model_mail_tracking_email
msgid "MailTracking email"
msgstr "MailTracking email"
#. module: mail_tracking_mass_mailing
#: model:ir.model,name:mail_tracking_mass_mailing.model_mail_tracking_event
msgid "MailTracking event"
msgstr "MailTracking event"
#. module: mail_tracking_mass_mailing
#: model:ir.model,name:mail_tracking_mass_mailing.model_mail_mass_mailing
msgid "Mass Mailing"
msgstr "Envío masivo"
#. module: mail_tracking_mass_mailing
#: model:ir.model,name:mail_tracking_mass_mailing.model_mail_mass_mailing_contact
msgid "Mass Mailing Contact"
msgstr "Contacto de envío masivo"
#. module: mail_tracking_mass_mailing
#: field:mail.tracking.email,mass_mailing_id:0
#: field:mail.tracking.event,mass_mailing_id:0
msgid "Mass mailing"
msgstr "Envío masivo"
#. module: mail_tracking_mass_mailing
#: model:ir.model,name:mail_tracking_mass_mailing.model_mail_mail
msgid "Outgoing Mails"
msgstr "Correos salientes"
#. module: mail_tracking_mass_mailing
#: code:addons/mail_tracking_mass_mailing/models/mail_mass_mailing.py:28
#, python-format
msgid ""
"There is no more recipients to send and 'Avoid resend' option is enabled"
msgstr ""
#. module: mail_tracking_mass_mailing
#: view:mail.mail.statistics:mail_tracking_mass_mailing.view_mail_mail_statistics_form
#: field:mail.mail.statistics,tracking_event_ids:0
msgid "Tracking events"
msgstr "Eventos de seguimiento"
#. module: mail_tracking_mass_mailing
#: help:mail.mail,path:0
msgid ""
"Used to display messages in a paragraph-based chatter using a unique path;"
msgstr ""
#. module: mail_tracking_mass_mailing
#: view:mail.mail.statistics:mail_tracking_mass_mailing.view_mail_mail_statistics_form
msgid "User agent"
msgstr "Aplicación del usuario"

View File

@ -0,0 +1,142 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * mail_tracking_mass_mailing
#
# Translators:
# John Toro <johntoro@gmail.com>, 2016
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 8.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-08-17 02:42+0000\n"
"PO-Revision-Date: 2016-08-17 02:42+0000\n"
"Last-Translator: John Toro <johntoro@gmail.com>, 2016\n"
"Language-Team: Spanish (Colombia) (https://www.transifex.com/oca/teams/23907/es_CO/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: es_CO\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: mail_tracking_mass_mailing
#: help:mail.mail.statistics,tracking_state:0
msgid ""
" * The 'Error' status indicates that there was an error when trying to sent the email, for example, 'No valid recipient'\n"
" * The 'Sent' status indicates that message was succesfully sent via outgoing email server (SMTP).\n"
" * The 'Delivered' status indicates that message was succesfully delivered to recipient Mail Exchange (MX) server.\n"
" * The 'Open' status indicates that message was opened or clicked by recipient.\n"
" * The 'Rejected' status indicates that recipient email address is blacklisted by outgoing email server (SMTP). It is recomended to delete this email address.\n"
" * The 'Spam' status indicates that outgoing email server (SMTP) consider this message as spam.\n"
" * The 'Unsubscribed' status indicates that recipient has requested to be unsubscribed from this message.\n"
" * The 'Bounced' status indicates that message was bounced by recipient Mail Exchange (MX) server.\n"
" * The 'Soft bounced' status indicates that message was soft bounced by recipient Mail Exchange (MX) server.\n"
msgstr ""
#. module: mail_tracking_mass_mailing
#: field:mail.mass_mailing,avoid_resend:0
msgid "Avoid resend"
msgstr ""
#. module: mail_tracking_mass_mailing
#: help:mail.mass_mailing,avoid_resend:0
msgid "Avoid to send this mass mailing email twice to the same recipient"
msgstr ""
#. module: mail_tracking_mass_mailing
#: view:mail.mail.statistics:mail_tracking_mass_mailing.view_mail_mail_statistics_form
msgid "Country"
msgstr ""
#. module: mail_tracking_mass_mailing
#: field:mail.mail,path:0
msgid "Discussion Path"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.model,name:mail_tracking_mass_mailing.model_mail_mail_statistics
msgid "Email Statistics"
msgstr ""
#. module: mail_tracking_mass_mailing
#: field:mail.mass_mailing.contact,email_score:0
msgid "Email score"
msgstr ""
#. module: mail_tracking_mass_mailing
#: field:mail.tracking.email,mail_id_int:0
msgid "Mail ID"
msgstr ""
#. module: mail_tracking_mass_mailing
#: field:mail.tracking.email,mail_stats_id:0
msgid "Mail statistics"
msgstr ""
#. module: mail_tracking_mass_mailing
#: field:mail.mail.statistics,mail_tracking_id:0
msgid "Mail tracking"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.model,name:mail_tracking_mass_mailing.model_mail_tracking_email
msgid "MailTracking email"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.model,name:mail_tracking_mass_mailing.model_mail_tracking_event
msgid "MailTracking event"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.model,name:mail_tracking_mass_mailing.model_mail_mass_mailing
msgid "Mass Mailing"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.model,name:mail_tracking_mass_mailing.model_mail_mass_mailing_contact
msgid "Mass Mailing Contact"
msgstr ""
#. module: mail_tracking_mass_mailing
#: field:mail.tracking.email,mass_mailing_id:0
msgid "Mass mailing"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.model,name:mail_tracking_mass_mailing.model_mail_mail
msgid "Outgoing Mails"
msgstr "Correos Salientes"
#. module: mail_tracking_mass_mailing
#: field:mail.mail.statistics,tracking_state:0
msgid "State"
msgstr ""
#. module: mail_tracking_mass_mailing
#: code:addons/mail_tracking_mass_mailing/models/mail_mass_mailing.py:28
#, python-format
msgid ""
"There is no more recipients to send and 'Avoid resend' option is enabled"
msgstr ""
#. module: mail_tracking_mass_mailing
#: field:mail.mass_mailing.contact,tracking_email_ids:0
msgid "Tracking emails"
msgstr ""
#. module: mail_tracking_mass_mailing
#: view:mail.mail.statistics:mail_tracking_mass_mailing.view_mail_mail_statistics_form
#: field:mail.mail.statistics,tracking_event_ids:0
msgid "Tracking events"
msgstr ""
#. module: mail_tracking_mass_mailing
#: help:mail.mail,path:0
msgid ""
"Used to display messages in a paragraph-based chatter using a unique path;"
msgstr ""
#. module: mail_tracking_mass_mailing
#: view:mail.mail.statistics:mail_tracking_mass_mailing.view_mail_mail_statistics_form
msgid "User agent"
msgstr ""

View File

@ -0,0 +1,148 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * mail_tracking_mass_mailing
#
# Translators:
# OCA Transbot <transbot@odoo-community.org>, 2016
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 8.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-11-25 18:06+0000\n"
"PO-Revision-Date: 2016-11-25 18:06+0000\n"
"Last-Translator: OCA Transbot <transbot@odoo-community.org>, 2016\n"
"Language-Team: French (https://www.transifex.com/oca/teams/23907/fr/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: fr\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
#. module: mail_tracking_mass_mailing
#: field:mail.mass_mailing,avoid_resend:0
msgid "Avoid resend"
msgstr ""
#. module: mail_tracking_mass_mailing
#: help:mail.mass_mailing,avoid_resend:0
msgid "Avoid to send this mass mailing email twice to the same recipient"
msgstr ""
#. module: mail_tracking_mass_mailing
#: view:mail.mail.statistics:mail_tracking_mass_mailing.view_mail_mail_statistics_form
msgid "Country"
msgstr "Pays"
#. module: mail_tracking_mass_mailing
#: field:mail.mail,path:0
msgid "Discussion Path"
msgstr "Parcours de discussion"
#. module: mail_tracking_mass_mailing
#: model:ir.model,name:mail_tracking_mass_mailing.model_mail_mail_statistics
msgid "Email Statistics"
msgstr "Statistiques de courriel"
#. module: mail_tracking_mass_mailing
#: view:mail.mass_mailing.contact:mail_tracking_mass_mailing.view_mail_mass_mailing_contact_search
#: field:mail.mass_mailing.contact,email_bounced:0
msgid "Email bounced"
msgstr ""
#. module: mail_tracking_mass_mailing
#: field:mail.mass_mailing.contact,email_score:0
msgid "Email score"
msgstr "Score du courriel"
#. module: mail_tracking_mass_mailing
#: model:ir.ui.menu,name:mail_tracking_mass_mailing.mail_tracking_email_menu
msgid "Emails"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.ui.menu,name:mail_tracking_mass_mailing.mail_tracking_event_menu
msgid "Events"
msgstr "Événements"
#. module: mail_tracking_mass_mailing
#: field:mail.tracking.email,mail_id_int:0
msgid "Mail ID"
msgstr ""
#. module: mail_tracking_mass_mailing
#: field:mail.tracking.email,mail_stats_id:0
msgid "Mail statistics"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.ui.menu,name:mail_tracking_mass_mailing.mail_tracking_menu
#: field:mail.mail.statistics,mail_tracking_id:0
msgid "Mail tracking"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.actions.act_window,name:mail_tracking_mass_mailing.action_view_mail_tracking_email
msgid "Mail tracking emails"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.actions.act_window,name:mail_tracking_mass_mailing.action_view_mail_tracking_event
msgid "Mail tracking events"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.model,name:mail_tracking_mass_mailing.model_mail_tracking_email
msgid "MailTracking email"
msgstr "Suivi du courriel: courriel"
#. module: mail_tracking_mass_mailing
#: model:ir.model,name:mail_tracking_mass_mailing.model_mail_tracking_event
msgid "MailTracking event"
msgstr "Suivi du courriel: évènement"
#. module: mail_tracking_mass_mailing
#: model:ir.model,name:mail_tracking_mass_mailing.model_mail_mass_mailing
msgid "Mass Mailing"
msgstr "Publipostage"
#. module: mail_tracking_mass_mailing
#: model:ir.model,name:mail_tracking_mass_mailing.model_mail_mass_mailing_contact
msgid "Mass Mailing Contact"
msgstr "Contact de la liste de diffusion"
#. module: mail_tracking_mass_mailing
#: field:mail.tracking.email,mass_mailing_id:0
#: field:mail.tracking.event,mass_mailing_id:0
msgid "Mass mailing"
msgstr "Publipostage"
#. module: mail_tracking_mass_mailing
#: model:ir.model,name:mail_tracking_mass_mailing.model_mail_mail
msgid "Outgoing Mails"
msgstr "Courriels sortants"
#. module: mail_tracking_mass_mailing
#: code:addons/mail_tracking_mass_mailing/models/mail_mass_mailing.py:28
#, python-format
msgid ""
"There is no more recipients to send and 'Avoid resend' option is enabled"
msgstr ""
#. module: mail_tracking_mass_mailing
#: view:mail.mail.statistics:mail_tracking_mass_mailing.view_mail_mail_statistics_form
#: field:mail.mail.statistics,tracking_event_ids:0
msgid "Tracking events"
msgstr "Suivi du courriel: évènements"
#. module: mail_tracking_mass_mailing
#: help:mail.mail,path:0
msgid ""
"Used to display messages in a paragraph-based chatter using a unique path;"
msgstr ""
"Utilisé pour afficher des messages dans une zone de discussion employant un "
"chemin unique;"
#. module: mail_tracking_mass_mailing
#: view:mail.mail.statistics:mail_tracking_mass_mailing.view_mail_mail_statistics_form
msgid "User agent"
msgstr "Navigateur"

View File

@ -0,0 +1,146 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * mail_tracking_mass_mailing
#
# Translators:
# OCA Transbot <transbot@odoo-community.org>, 2016
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 8.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-11-29 17:50+0000\n"
"PO-Revision-Date: 2016-11-29 17:50+0000\n"
"Last-Translator: OCA Transbot <transbot@odoo-community.org>, 2016\n"
"Language-Team: Croatian (https://www.transifex.com/oca/teams/23907/hr/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: hr\n"
"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
#. module: mail_tracking_mass_mailing
#: field:mail.mass_mailing,avoid_resend:0
msgid "Avoid resend"
msgstr ""
#. module: mail_tracking_mass_mailing
#: help:mail.mass_mailing,avoid_resend:0
msgid "Avoid to send this mass mailing email twice to the same recipient"
msgstr ""
#. module: mail_tracking_mass_mailing
#: view:mail.mail.statistics:mail_tracking_mass_mailing.view_mail_mail_statistics_form
msgid "Country"
msgstr ""
#. module: mail_tracking_mass_mailing
#: field:mail.mail,path:0
msgid "Discussion Path"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.model,name:mail_tracking_mass_mailing.model_mail_mail_statistics
msgid "Email Statistics"
msgstr "Statistika e-maila"
#. module: mail_tracking_mass_mailing
#: view:mail.mass_mailing.contact:mail_tracking_mass_mailing.view_mail_mass_mailing_contact_search
#: field:mail.mass_mailing.contact,email_bounced:0
msgid "Email bounced"
msgstr ""
#. module: mail_tracking_mass_mailing
#: field:mail.mass_mailing.contact,email_score:0
msgid "Email score"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.ui.menu,name:mail_tracking_mass_mailing.mail_tracking_email_menu
msgid "Emails"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.ui.menu,name:mail_tracking_mass_mailing.mail_tracking_event_menu
msgid "Events"
msgstr ""
#. module: mail_tracking_mass_mailing
#: field:mail.tracking.email,mail_id_int:0
msgid "Mail ID"
msgstr ""
#. module: mail_tracking_mass_mailing
#: field:mail.tracking.email,mail_stats_id:0
msgid "Mail statistics"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.ui.menu,name:mail_tracking_mass_mailing.mail_tracking_menu
#: field:mail.mail.statistics,mail_tracking_id:0
msgid "Mail tracking"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.actions.act_window,name:mail_tracking_mass_mailing.action_view_mail_tracking_email
msgid "Mail tracking emails"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.actions.act_window,name:mail_tracking_mass_mailing.action_view_mail_tracking_event
msgid "Mail tracking events"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.model,name:mail_tracking_mass_mailing.model_mail_tracking_email
msgid "MailTracking email"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.model,name:mail_tracking_mass_mailing.model_mail_tracking_event
msgid "MailTracking event"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.model,name:mail_tracking_mass_mailing.model_mail_mass_mailing
msgid "Mass Mailing"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.model,name:mail_tracking_mass_mailing.model_mail_mass_mailing_contact
msgid "Mass Mailing Contact"
msgstr "Kontakti za masovno slanje"
#. module: mail_tracking_mass_mailing
#: field:mail.tracking.email,mass_mailing_id:0
#: field:mail.tracking.event,mass_mailing_id:0
msgid "Mass mailing"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.model,name:mail_tracking_mass_mailing.model_mail_mail
msgid "Outgoing Mails"
msgstr ""
#. module: mail_tracking_mass_mailing
#: code:addons/mail_tracking_mass_mailing/models/mail_mass_mailing.py:28
#, python-format
msgid ""
"There is no more recipients to send and 'Avoid resend' option is enabled"
msgstr ""
#. module: mail_tracking_mass_mailing
#: view:mail.mail.statistics:mail_tracking_mass_mailing.view_mail_mail_statistics_form
#: field:mail.mail.statistics,tracking_event_ids:0
msgid "Tracking events"
msgstr ""
#. module: mail_tracking_mass_mailing
#: help:mail.mail,path:0
msgid ""
"Used to display messages in a paragraph-based chatter using a unique path;"
msgstr ""
#. module: mail_tracking_mass_mailing
#: view:mail.mail.statistics:mail_tracking_mass_mailing.view_mail_mail_statistics_form
msgid "User agent"
msgstr ""

View File

@ -0,0 +1,147 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * mail_tracking_mass_mailing
#
# Translators:
# OCA Transbot <transbot@odoo-community.org>, 2016
# Paolo Valier <paolo.valier@hotmail.it>, 2016
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 8.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-11-29 17:50+0000\n"
"PO-Revision-Date: 2016-11-29 17:50+0000\n"
"Last-Translator: Paolo Valier <paolo.valier@hotmail.it>, 2016\n"
"Language-Team: Italian (https://www.transifex.com/oca/teams/23907/it/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: it\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: mail_tracking_mass_mailing
#: field:mail.mass_mailing,avoid_resend:0
msgid "Avoid resend"
msgstr ""
#. module: mail_tracking_mass_mailing
#: help:mail.mass_mailing,avoid_resend:0
msgid "Avoid to send this mass mailing email twice to the same recipient"
msgstr ""
#. module: mail_tracking_mass_mailing
#: view:mail.mail.statistics:mail_tracking_mass_mailing.view_mail_mail_statistics_form
msgid "Country"
msgstr ""
#. module: mail_tracking_mass_mailing
#: field:mail.mail,path:0
msgid "Discussion Path"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.model,name:mail_tracking_mass_mailing.model_mail_mail_statistics
msgid "Email Statistics"
msgstr ""
#. module: mail_tracking_mass_mailing
#: view:mail.mass_mailing.contact:mail_tracking_mass_mailing.view_mail_mass_mailing_contact_search
#: field:mail.mass_mailing.contact,email_bounced:0
msgid "Email bounced"
msgstr ""
#. module: mail_tracking_mass_mailing
#: field:mail.mass_mailing.contact,email_score:0
msgid "Email score"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.ui.menu,name:mail_tracking_mass_mailing.mail_tracking_email_menu
msgid "Emails"
msgstr "Email"
#. module: mail_tracking_mass_mailing
#: model:ir.ui.menu,name:mail_tracking_mass_mailing.mail_tracking_event_menu
msgid "Events"
msgstr ""
#. module: mail_tracking_mass_mailing
#: field:mail.tracking.email,mail_id_int:0
msgid "Mail ID"
msgstr ""
#. module: mail_tracking_mass_mailing
#: field:mail.tracking.email,mail_stats_id:0
msgid "Mail statistics"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.ui.menu,name:mail_tracking_mass_mailing.mail_tracking_menu
#: field:mail.mail.statistics,mail_tracking_id:0
msgid "Mail tracking"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.actions.act_window,name:mail_tracking_mass_mailing.action_view_mail_tracking_email
msgid "Mail tracking emails"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.actions.act_window,name:mail_tracking_mass_mailing.action_view_mail_tracking_event
msgid "Mail tracking events"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.model,name:mail_tracking_mass_mailing.model_mail_tracking_email
msgid "MailTracking email"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.model,name:mail_tracking_mass_mailing.model_mail_tracking_event
msgid "MailTracking event"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.model,name:mail_tracking_mass_mailing.model_mail_mass_mailing
msgid "Mass Mailing"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.model,name:mail_tracking_mass_mailing.model_mail_mass_mailing_contact
msgid "Mass Mailing Contact"
msgstr "Contatto Mass Mailing"
#. module: mail_tracking_mass_mailing
#: field:mail.tracking.email,mass_mailing_id:0
#: field:mail.tracking.event,mass_mailing_id:0
msgid "Mass mailing"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.model,name:mail_tracking_mass_mailing.model_mail_mail
msgid "Outgoing Mails"
msgstr "Mail in Uscita"
#. module: mail_tracking_mass_mailing
#: code:addons/mail_tracking_mass_mailing/models/mail_mass_mailing.py:28
#, python-format
msgid ""
"There is no more recipients to send and 'Avoid resend' option is enabled"
msgstr ""
#. module: mail_tracking_mass_mailing
#: view:mail.mail.statistics:mail_tracking_mass_mailing.view_mail_mail_statistics_form
#: field:mail.mail.statistics,tracking_event_ids:0
msgid "Tracking events"
msgstr ""
#. module: mail_tracking_mass_mailing
#: help:mail.mail,path:0
msgid ""
"Used to display messages in a paragraph-based chatter using a unique path;"
msgstr ""
#. module: mail_tracking_mass_mailing
#: view:mail.mail.statistics:mail_tracking_mass_mailing.view_mail_mail_statistics_form
msgid "User agent"
msgstr ""

View File

@ -0,0 +1,146 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * mail_tracking_mass_mailing
#
# Translators:
# Tiago Baptista <tiago@baptista.net>, 2016
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 8.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-11-25 18:06+0000\n"
"PO-Revision-Date: 2016-11-25 18:06+0000\n"
"Last-Translator: Tiago Baptista <tiago@baptista.net>, 2016\n"
"Language-Team: Portuguese (https://www.transifex.com/oca/teams/23907/pt/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: pt\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: mail_tracking_mass_mailing
#: field:mail.mass_mailing,avoid_resend:0
msgid "Avoid resend"
msgstr ""
#. module: mail_tracking_mass_mailing
#: help:mail.mass_mailing,avoid_resend:0
msgid "Avoid to send this mass mailing email twice to the same recipient"
msgstr ""
#. module: mail_tracking_mass_mailing
#: view:mail.mail.statistics:mail_tracking_mass_mailing.view_mail_mail_statistics_form
msgid "Country"
msgstr "País"
#. module: mail_tracking_mass_mailing
#: field:mail.mail,path:0
msgid "Discussion Path"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.model,name:mail_tracking_mass_mailing.model_mail_mail_statistics
msgid "Email Statistics"
msgstr ""
#. module: mail_tracking_mass_mailing
#: view:mail.mass_mailing.contact:mail_tracking_mass_mailing.view_mail_mass_mailing_contact_search
#: field:mail.mass_mailing.contact,email_bounced:0
msgid "Email bounced"
msgstr ""
#. module: mail_tracking_mass_mailing
#: field:mail.mass_mailing.contact,email_score:0
msgid "Email score"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.ui.menu,name:mail_tracking_mass_mailing.mail_tracking_email_menu
msgid "Emails"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.ui.menu,name:mail_tracking_mass_mailing.mail_tracking_event_menu
msgid "Events"
msgstr ""
#. module: mail_tracking_mass_mailing
#: field:mail.tracking.email,mail_id_int:0
msgid "Mail ID"
msgstr ""
#. module: mail_tracking_mass_mailing
#: field:mail.tracking.email,mail_stats_id:0
msgid "Mail statistics"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.ui.menu,name:mail_tracking_mass_mailing.mail_tracking_menu
#: field:mail.mail.statistics,mail_tracking_id:0
msgid "Mail tracking"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.actions.act_window,name:mail_tracking_mass_mailing.action_view_mail_tracking_email
msgid "Mail tracking emails"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.actions.act_window,name:mail_tracking_mass_mailing.action_view_mail_tracking_event
msgid "Mail tracking events"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.model,name:mail_tracking_mass_mailing.model_mail_tracking_email
msgid "MailTracking email"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.model,name:mail_tracking_mass_mailing.model_mail_tracking_event
msgid "MailTracking event"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.model,name:mail_tracking_mass_mailing.model_mail_mass_mailing
msgid "Mass Mailing"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.model,name:mail_tracking_mass_mailing.model_mail_mass_mailing_contact
msgid "Mass Mailing Contact"
msgstr ""
#. module: mail_tracking_mass_mailing
#: field:mail.tracking.email,mass_mailing_id:0
#: field:mail.tracking.event,mass_mailing_id:0
msgid "Mass mailing"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.model,name:mail_tracking_mass_mailing.model_mail_mail
msgid "Outgoing Mails"
msgstr ""
#. module: mail_tracking_mass_mailing
#: code:addons/mail_tracking_mass_mailing/models/mail_mass_mailing.py:28
#, python-format
msgid ""
"There is no more recipients to send and 'Avoid resend' option is enabled"
msgstr ""
#. module: mail_tracking_mass_mailing
#: view:mail.mail.statistics:mail_tracking_mass_mailing.view_mail_mail_statistics_form
#: field:mail.mail.statistics,tracking_event_ids:0
msgid "Tracking events"
msgstr ""
#. module: mail_tracking_mass_mailing
#: help:mail.mail,path:0
msgid ""
"Used to display messages in a paragraph-based chatter using a unique path;"
msgstr ""
#. module: mail_tracking_mass_mailing
#: view:mail.mail.statistics:mail_tracking_mass_mailing.view_mail_mail_statistics_form
msgid "User agent"
msgstr ""

View File

@ -0,0 +1,147 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * mail_tracking_mass_mailing
#
# Translators:
# OCA Transbot <transbot@odoo-community.org>, 2016
# Armando Vulcano Junior <vulcano@uol.com.br>, 2016
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 8.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-11-25 18:06+0000\n"
"PO-Revision-Date: 2016-11-25 18:06+0000\n"
"Last-Translator: Armando Vulcano Junior <vulcano@uol.com.br>, 2016\n"
"Language-Team: Portuguese (Brazil) (https://www.transifex.com/oca/teams/23907/pt_BR/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: pt_BR\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
#. module: mail_tracking_mass_mailing
#: field:mail.mass_mailing,avoid_resend:0
msgid "Avoid resend"
msgstr ""
#. module: mail_tracking_mass_mailing
#: help:mail.mass_mailing,avoid_resend:0
msgid "Avoid to send this mass mailing email twice to the same recipient"
msgstr ""
#. module: mail_tracking_mass_mailing
#: view:mail.mail.statistics:mail_tracking_mass_mailing.view_mail_mail_statistics_form
msgid "Country"
msgstr ""
#. module: mail_tracking_mass_mailing
#: field:mail.mail,path:0
msgid "Discussion Path"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.model,name:mail_tracking_mass_mailing.model_mail_mail_statistics
msgid "Email Statistics"
msgstr ""
#. module: mail_tracking_mass_mailing
#: view:mail.mass_mailing.contact:mail_tracking_mass_mailing.view_mail_mass_mailing_contact_search
#: field:mail.mass_mailing.contact,email_bounced:0
msgid "Email bounced"
msgstr ""
#. module: mail_tracking_mass_mailing
#: field:mail.mass_mailing.contact,email_score:0
msgid "Email score"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.ui.menu,name:mail_tracking_mass_mailing.mail_tracking_email_menu
msgid "Emails"
msgstr "Emails"
#. module: mail_tracking_mass_mailing
#: model:ir.ui.menu,name:mail_tracking_mass_mailing.mail_tracking_event_menu
msgid "Events"
msgstr ""
#. module: mail_tracking_mass_mailing
#: field:mail.tracking.email,mail_id_int:0
msgid "Mail ID"
msgstr ""
#. module: mail_tracking_mass_mailing
#: field:mail.tracking.email,mail_stats_id:0
msgid "Mail statistics"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.ui.menu,name:mail_tracking_mass_mailing.mail_tracking_menu
#: field:mail.mail.statistics,mail_tracking_id:0
msgid "Mail tracking"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.actions.act_window,name:mail_tracking_mass_mailing.action_view_mail_tracking_email
msgid "Mail tracking emails"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.actions.act_window,name:mail_tracking_mass_mailing.action_view_mail_tracking_event
msgid "Mail tracking events"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.model,name:mail_tracking_mass_mailing.model_mail_tracking_email
msgid "MailTracking email"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.model,name:mail_tracking_mass_mailing.model_mail_tracking_event
msgid "MailTracking event"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.model,name:mail_tracking_mass_mailing.model_mail_mass_mailing
msgid "Mass Mailing"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.model,name:mail_tracking_mass_mailing.model_mail_mass_mailing_contact
msgid "Mass Mailing Contact"
msgstr ""
#. module: mail_tracking_mass_mailing
#: field:mail.tracking.email,mass_mailing_id:0
#: field:mail.tracking.event,mass_mailing_id:0
msgid "Mass mailing"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.model,name:mail_tracking_mass_mailing.model_mail_mail
msgid "Outgoing Mails"
msgstr "Mails de Saída"
#. module: mail_tracking_mass_mailing
#: code:addons/mail_tracking_mass_mailing/models/mail_mass_mailing.py:28
#, python-format
msgid ""
"There is no more recipients to send and 'Avoid resend' option is enabled"
msgstr ""
#. module: mail_tracking_mass_mailing
#: view:mail.mail.statistics:mail_tracking_mass_mailing.view_mail_mail_statistics_form
#: field:mail.mail.statistics,tracking_event_ids:0
msgid "Tracking events"
msgstr ""
#. module: mail_tracking_mass_mailing
#: help:mail.mail,path:0
msgid ""
"Used to display messages in a paragraph-based chatter using a unique path;"
msgstr ""
#. module: mail_tracking_mass_mailing
#: view:mail.mail.statistics:mail_tracking_mass_mailing.view_mail_mail_statistics_form
msgid "User agent"
msgstr ""

View File

@ -0,0 +1,151 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * mail_tracking_mass_mailing
#
# Translators:
# OCA Transbot <transbot@odoo-community.org>, 2016
# Matjaž Mozetič <m.mozetic@matmoz.si>, 2016
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 8.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-11-25 18:06+0000\n"
"PO-Revision-Date: 2016-11-25 18:06+0000\n"
"Last-Translator: Matjaž Mozetič <m.mozetic@matmoz.si>, 2016\n"
"Language-Team: Slovenian (https://www.transifex.com/oca/teams/23907/sl/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: sl\n"
"Plural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\n"
#. module: mail_tracking_mass_mailing
#: field:mail.mass_mailing,avoid_resend:0
msgid "Avoid resend"
msgstr "Izogibaj se ponovnemu pošiljanju"
#. module: mail_tracking_mass_mailing
#: help:mail.mass_mailing,avoid_resend:0
msgid "Avoid to send this mass mailing email twice to the same recipient"
msgstr "Izogibaj se dvakratnemu masovnemu pošiljanju istemu prejemniku."
#. module: mail_tracking_mass_mailing
#: view:mail.mail.statistics:mail_tracking_mass_mailing.view_mail_mail_statistics_form
msgid "Country"
msgstr "Država"
#. module: mail_tracking_mass_mailing
#: field:mail.mail,path:0
msgid "Discussion Path"
msgstr "Pot do razprave"
#. module: mail_tracking_mass_mailing
#: model:ir.model,name:mail_tracking_mass_mailing.model_mail_mail_statistics
msgid "Email Statistics"
msgstr "Statistika e-pošte"
#. module: mail_tracking_mass_mailing
#: view:mail.mass_mailing.contact:mail_tracking_mass_mailing.view_mail_mass_mailing_contact_search
#: field:mail.mass_mailing.contact,email_bounced:0
msgid "Email bounced"
msgstr "E-pošta odbita"
#. module: mail_tracking_mass_mailing
#: field:mail.mass_mailing.contact,email_score:0
msgid "Email score"
msgstr "Točkovanje e-pošte"
#. module: mail_tracking_mass_mailing
#: model:ir.ui.menu,name:mail_tracking_mass_mailing.mail_tracking_email_menu
msgid "Emails"
msgstr "E-poštna sporočila"
#. module: mail_tracking_mass_mailing
#: model:ir.ui.menu,name:mail_tracking_mass_mailing.mail_tracking_event_menu
msgid "Events"
msgstr "Dogodki"
#. module: mail_tracking_mass_mailing
#: field:mail.tracking.email,mail_id_int:0
msgid "Mail ID"
msgstr "ID pošte"
#. module: mail_tracking_mass_mailing
#: field:mail.tracking.email,mail_stats_id:0
msgid "Mail statistics"
msgstr "Poštna statistika"
#. module: mail_tracking_mass_mailing
#: model:ir.ui.menu,name:mail_tracking_mass_mailing.mail_tracking_menu
#: field:mail.mail.statistics,mail_tracking_id:0
msgid "Mail tracking"
msgstr "Sledenje pošte"
#. module: mail_tracking_mass_mailing
#: model:ir.actions.act_window,name:mail_tracking_mass_mailing.action_view_mail_tracking_email
msgid "Mail tracking emails"
msgstr "Sledilna sporočila"
#. module: mail_tracking_mass_mailing
#: model:ir.actions.act_window,name:mail_tracking_mass_mailing.action_view_mail_tracking_event
msgid "Mail tracking events"
msgstr "Sledilni dogodki"
#. module: mail_tracking_mass_mailing
#: model:ir.model,name:mail_tracking_mass_mailing.model_mail_tracking_email
msgid "MailTracking email"
msgstr "Sledenje e-pošte"
#. module: mail_tracking_mass_mailing
#: model:ir.model,name:mail_tracking_mass_mailing.model_mail_tracking_event
msgid "MailTracking event"
msgstr "Dogodek sledenja e-pošte"
#. module: mail_tracking_mass_mailing
#: model:ir.model,name:mail_tracking_mass_mailing.model_mail_mass_mailing
msgid "Mass Mailing"
msgstr "Masovno razpošiljanje"
#. module: mail_tracking_mass_mailing
#: model:ir.model,name:mail_tracking_mass_mailing.model_mail_mass_mailing_contact
msgid "Mass Mailing Contact"
msgstr "Stik masovne pošte"
#. module: mail_tracking_mass_mailing
#: field:mail.tracking.email,mass_mailing_id:0
#: field:mail.tracking.event,mass_mailing_id:0
msgid "Mass mailing"
msgstr "Masovna pošta"
#. module: mail_tracking_mass_mailing
#: model:ir.model,name:mail_tracking_mass_mailing.model_mail_mail
msgid "Outgoing Mails"
msgstr "Izhodna pošta"
#. module: mail_tracking_mass_mailing
#: code:addons/mail_tracking_mass_mailing/models/mail_mass_mailing.py:28
#, python-format
msgid ""
"There is no more recipients to send and 'Avoid resend' option is enabled"
msgstr ""
"Ni več potencialnih prejemnikov, pa tudi opcija 'Izogibaj se ponovnemu "
"pošiljanju' je omogočena."
#. module: mail_tracking_mass_mailing
#: view:mail.mail.statistics:mail_tracking_mass_mailing.view_mail_mail_statistics_form
#: field:mail.mail.statistics,tracking_event_ids:0
msgid "Tracking events"
msgstr "Sledilni dogodki"
#. module: mail_tracking_mass_mailing
#: help:mail.mail,path:0
msgid ""
"Used to display messages in a paragraph-based chatter using a unique path;"
msgstr ""
"Uporabljeno za prikaz sporočil v sklopu razgovora na osnovi odstavkov z "
"uporabo unikatne poti;"
#. module: mail_tracking_mass_mailing
#: view:mail.mail.statistics:mail_tracking_mass_mailing.view_mail_mail_statistics_form
msgid "User agent"
msgstr "Uporabnikov odjemalec"

View File

@ -0,0 +1,147 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * mail_tracking_mass_mailing
#
# Translators:
# OCA Transbot <transbot@odoo-community.org>, 2016
# Ahmet Altinisik <aaltinisik@altinkaya.com.tr>, 2016
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 8.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-12-24 06:25+0000\n"
"PO-Revision-Date: 2016-12-24 06:25+0000\n"
"Last-Translator: Ahmet Altinisik <aaltinisik@altinkaya.com.tr>, 2016\n"
"Language-Team: Turkish (https://www.transifex.com/oca/teams/23907/tr/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: tr\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
#. module: mail_tracking_mass_mailing
#: field:mail.mass_mailing,avoid_resend:0
msgid "Avoid resend"
msgstr ""
#. module: mail_tracking_mass_mailing
#: help:mail.mass_mailing,avoid_resend:0
msgid "Avoid to send this mass mailing email twice to the same recipient"
msgstr ""
#. module: mail_tracking_mass_mailing
#: view:mail.mail.statistics:mail_tracking_mass_mailing.view_mail_mail_statistics_form
msgid "Country"
msgstr "Ülke"
#. module: mail_tracking_mass_mailing
#: field:mail.mail,path:0
msgid "Discussion Path"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.model,name:mail_tracking_mass_mailing.model_mail_mail_statistics
msgid "Email Statistics"
msgstr ""
#. module: mail_tracking_mass_mailing
#: view:mail.mass_mailing.contact:mail_tracking_mass_mailing.view_mail_mass_mailing_contact_search
#: field:mail.mass_mailing.contact,email_bounced:0
msgid "Email bounced"
msgstr ""
#. module: mail_tracking_mass_mailing
#: field:mail.mass_mailing.contact,email_score:0
msgid "Email score"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.ui.menu,name:mail_tracking_mass_mailing.mail_tracking_email_menu
msgid "Emails"
msgstr "Epostalar"
#. module: mail_tracking_mass_mailing
#: model:ir.ui.menu,name:mail_tracking_mass_mailing.mail_tracking_event_menu
msgid "Events"
msgstr ""
#. module: mail_tracking_mass_mailing
#: field:mail.tracking.email,mail_id_int:0
msgid "Mail ID"
msgstr ""
#. module: mail_tracking_mass_mailing
#: field:mail.tracking.email,mail_stats_id:0
msgid "Mail statistics"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.ui.menu,name:mail_tracking_mass_mailing.mail_tracking_menu
#: field:mail.mail.statistics,mail_tracking_id:0
msgid "Mail tracking"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.actions.act_window,name:mail_tracking_mass_mailing.action_view_mail_tracking_email
msgid "Mail tracking emails"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.actions.act_window,name:mail_tracking_mass_mailing.action_view_mail_tracking_event
msgid "Mail tracking events"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.model,name:mail_tracking_mass_mailing.model_mail_tracking_email
msgid "MailTracking email"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.model,name:mail_tracking_mass_mailing.model_mail_tracking_event
msgid "MailTracking event"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.model,name:mail_tracking_mass_mailing.model_mail_mass_mailing
msgid "Mass Mailing"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.model,name:mail_tracking_mass_mailing.model_mail_mass_mailing_contact
msgid "Mass Mailing Contact"
msgstr ""
#. module: mail_tracking_mass_mailing
#: field:mail.tracking.email,mass_mailing_id:0
#: field:mail.tracking.event,mass_mailing_id:0
msgid "Mass mailing"
msgstr ""
#. module: mail_tracking_mass_mailing
#: model:ir.model,name:mail_tracking_mass_mailing.model_mail_mail
msgid "Outgoing Mails"
msgstr ""
#. module: mail_tracking_mass_mailing
#: code:addons/mail_tracking_mass_mailing/models/mail_mass_mailing.py:28
#, python-format
msgid ""
"There is no more recipients to send and 'Avoid resend' option is enabled"
msgstr ""
#. module: mail_tracking_mass_mailing
#: view:mail.mail.statistics:mail_tracking_mass_mailing.view_mail_mail_statistics_form
#: field:mail.mail.statistics,tracking_event_ids:0
msgid "Tracking events"
msgstr ""
#. module: mail_tracking_mass_mailing
#: help:mail.mail,path:0
msgid ""
"Used to display messages in a paragraph-based chatter using a unique path;"
msgstr ""
#. module: mail_tracking_mass_mailing
#: view:mail.mail.statistics:mail_tracking_mass_mailing.view_mail_mail_statistics_form
msgid "User agent"
msgstr ""

View File

@ -0,0 +1,10 @@
# -*- coding: utf-8 -*-
# © 2016 Antonio Espinosa - <antonio.espinosa@tecnativa.com>
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
from . import mail_mail
from . import mail_tracking_email
from . import mail_tracking_event
from . import mail_mail_statistics
from . import mail_mass_mailing
from . import mail_mass_mailing_contact

View File

@ -0,0 +1,24 @@
# -*- coding: utf-8 -*-
# © 2016 Antonio Espinosa - <antonio.espinosa@tecnativa.com>
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
from openerp import models, api
class MailMail(models.Model):
_inherit = "mail.mail"
@api.model
def _tracking_email_prepare(self, mail, partner, email):
res = super(MailMail, self)._tracking_email_prepare(
mail, partner, email)
res['mail_id_int'] = mail.id
res['mass_mailing_id'] = mail.mailing_id.id
res['mail_stats_id'] = mail.statistics_ids[:1].id \
if mail.statistics_ids else False
return res
@api.model
def _get_tracking_url(self, mail, partner=None):
# Invalid this tracking image, we have other to do the same
return False

View File

@ -0,0 +1,16 @@
# -*- coding: utf-8 -*-
# © 2016 Antonio Espinosa - <antonio.espinosa@tecnativa.com>
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
from openerp import models, fields
class MailMailStatistics(models.Model):
_inherit = "mail.mail.statistics"
mail_tracking_id = fields.Many2one(
string="Mail tracking", comodel_name='mail.tracking.email',
readonly=True)
tracking_event_ids = fields.One2many(
string="Tracking events", comodel_name='mail.tracking.event',
related='mail_tracking_id.tracking_event_ids', readonly=True)

View File

@ -0,0 +1,31 @@
# -*- coding: utf-8 -*-
# © 2016 Antonio Espinosa - <antonio.espinosa@tecnativa.com>
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
from openerp import models, api, fields, _
from openerp.exceptions import Warning as UserError
class MailMassMailing(models.Model):
_inherit = 'mail.mass_mailing'
avoid_resend = fields.Boolean(
string="Avoid resend",
help="Avoid to send this mass mailing email twice "
"to the same recipient")
@api.model
def get_recipients(self, mailing):
res_ids = super(MailMassMailing, self).get_recipients(mailing)
if mailing.avoid_resend:
already_sent = self.env['mail.mail.statistics'].search([
('mass_mailing_id', '=', mailing.id),
('model', '=', mailing.mailing_model),
])
res_ids = list(set(res_ids).difference(
already_sent.mapped('res_id')))
if not res_ids:
raise UserError(_(
"There is no more recipients to send and 'Avoid resend' "
"option is enabled"))
return res_ids

View File

@ -0,0 +1,35 @@
# -*- coding: utf-8 -*-
# © 2016 Antonio Espinosa - <antonio.espinosa@tecnativa.com>
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
from openerp import models, api, fields
class MailMassMailingContact(models.Model):
_inherit = 'mail.mass_mailing.contact'
email_bounced = fields.Boolean(string="Email bounced")
email_score = fields.Float(
string="Email score", readonly=True, store=False,
compute='_compute_email_score')
@api.multi
@api.depends('email')
def _compute_email_score(self):
for contact in self.filtered('email'):
contact.email_score = self.env['mail.tracking.email'].\
email_score_from_email(contact.email)
@api.multi
def email_bounced_set(self, tracking_emails, reason, event=None):
contacts = self.filtered(lambda r: not r.email_bounced)
return contacts.write({'email_bounced': True})
@api.multi
def write(self, vals):
email = vals.get('email')
if email is not None:
vals['email_bounced'] = (
bool(email) and
self.env['mail.tracking.email'].email_is_bounced(email))
return super(MailMassMailingContact, self).write(vals)

View File

@ -0,0 +1,58 @@
# -*- coding: utf-8 -*-
# © 2016 Antonio Espinosa - <antonio.espinosa@tecnativa.com>
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
from openerp import models, fields, api
class MailTrackingEmail(models.Model):
_inherit = "mail.tracking.email"
mass_mailing_id = fields.Many2one(
string="Mass mailing", comodel_name='mail.mass_mailing', readonly=True)
mail_stats_id = fields.Many2one(
string="Mail statistics", comodel_name='mail.mail.statistics',
readonly=True)
mail_id_int = fields.Integer(string="Mail ID", readonly=True)
@api.model
def _statistics_link_prepare(self, tracking):
"""Inherit this method to link other object to mail.mail.statistics"""
return {
'mail_tracking_id': tracking.id,
}
@api.model
def create(self, vals):
tracking = super(MailTrackingEmail, self).create(vals)
# Link mail statistics with this tracking
if tracking.mail_stats_id:
tracking.mail_stats_id.write(
self._statistics_link_prepare(tracking))
return tracking
@api.multi
def _contacts_email_bounced_set(self, reason, event=None):
recipients = []
if event and event.recipient_address:
recipients.append(event.recipient_address)
else:
recipients = list(filter(None, self.mapped('recipient_address')))
for recipient in recipients:
self.env['mail.mass_mailing.contact'].search([
('email', '=ilike', recipient)
]).email_bounced_set(self, reason, event=event)
@api.multi
def smtp_error(self, mail_server, smtp_server, exception):
res = super(MailTrackingEmail, self).smtp_error(
mail_server, smtp_server, exception)
self._contacts_email_bounced_set('error')
return res
@api.multi
def event_create(self, event_type, metadata):
res = super(MailTrackingEmail, self).event_create(event_type, metadata)
if event_type in {'hard_bounce', 'spam', 'reject'}:
self._contacts_email_bounced_set(event_type)
return res

View File

@ -0,0 +1,53 @@
# -*- coding: utf-8 -*-
# © 2016 Antonio Espinosa - <antonio.espinosa@tecnativa.com>
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
from openerp import api, fields, models
class MailTrackingEvent(models.Model):
_inherit = "mail.tracking.event"
mass_mailing_id = fields.Many2one(
string="Mass mailing", comodel_name='mail.mass_mailing', readonly=True,
related='tracking_email_id.mass_mailing_id', store=True)
@api.model
def process_open(self, tracking_email, metadata):
res = super(MailTrackingEvent, self).process_open(
tracking_email, metadata)
mail_mail_stats = self.sudo().env['mail.mail.statistics']
mail_mail_stats.set_opened(mail_mail_ids=[tracking_email.mail_id_int])
return res
def _tracking_set_bounce(self, tracking_email, metadata):
mail_mail_stats = self.sudo().env['mail.mail.statistics']
mail_mail_stats.set_bounced(mail_mail_ids=[tracking_email.mail_id_int])
@api.model
def process_hard_bounce(self, tracking_email, metadata):
res = super(MailTrackingEvent, self).process_hard_bounce(
tracking_email, metadata)
self._tracking_set_bounce(tracking_email, metadata)
return res
@api.model
def process_soft_bounce(self, tracking_email, metadata):
res = super(MailTrackingEvent, self).process_soft_bounce(
tracking_email, metadata)
self._tracking_set_bounce(tracking_email, metadata)
return res
@api.model
def process_reject(self, tracking_email, metadata):
res = super(MailTrackingEvent, self).process_reject(
tracking_email, metadata)
self._tracking_set_bounce(tracking_email, metadata)
return res
@api.model
def process_spam(self, tracking_email, metadata):
res = super(MailTrackingEvent, self).process_spam(
tracking_email, metadata)
self._tracking_set_bounce(tracking_email, metadata)
return res

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.2 KiB

View File

@ -0,0 +1,5 @@
# -*- coding: utf-8 -*-
# © 2016 Antonio Espinosa - <antonio.espinosa@tecnativa.com>
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
from . import test_mass_mailing

View File

@ -0,0 +1,131 @@
# -*- coding: utf-8 -*-
# © 2016 Antonio Espinosa - <antonio.espinosa@tecnativa.com>
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
import mock
from openerp.tests.common import TransactionCase
from openerp.exceptions import Warning as UserError
mock_send_email = ('openerp.addons.base.ir.ir_mail_server.'
'ir_mail_server.send_email')
class TestMassMailing(TransactionCase):
def setUp(self, *args, **kwargs):
super(TestMassMailing, self).setUp(*args, **kwargs)
self.list = self.env['mail.mass_mailing.list'].create({
'name': 'Test mail tracking',
})
self.contact_a = self.env['mail.mass_mailing.contact'].create({
'list_id': self.list.id,
'name': 'Test contact A',
'email': 'contact_a@example.com',
})
self.mailing = self.env['mail.mass_mailing'].create({
'name': 'Test subject',
'email_from': 'from@example.com',
'mailing_model': 'mail.mass_mailing.contact',
'mailing_domain': "[('list_id', 'in', [%d]), "
"('opt_out', '=', False)]" % self.list.id,
'contact_list_ids': [(6, False, [self.list.id])],
'body_html': '<p>Test email body</p>',
'reply_to_mode': 'email',
})
def resend_mass_mailing(self, first, second):
self.mailing.send_mail()
self.assertEqual(len(self.mailing.statistics_ids), first)
self.env['mail.mass_mailing.contact'].create({
'list_id': self.list.id,
'name': 'Test contact B',
'email': 'contact_b@example.com',
})
self.mailing.send_mail()
self.assertEqual(len(self.mailing.statistics_ids), second)
def test_avoid_resend_enable(self):
self.mailing.avoid_resend = True
self.resend_mass_mailing(1, 2)
with self.assertRaises(UserError):
self.mailing.send_mail()
def test_avoid_resend_disable(self):
self.mailing.avoid_resend = False
self.resend_mass_mailing(1, 3)
def test_smtp_error(self):
with mock.patch(mock_send_email) as mock_func:
mock_func.side_effect = Warning('Test error')
self.mailing.send_mail()
for stat in self.mailing.statistics_ids:
if stat.mail_mail_id:
stat.mail_mail_id.send()
tracking = self.env['mail.tracking.email'].search([
('mail_id_int', '=', stat.mail_mail_id_int),
])
self.assertEqual('error', tracking.state)
self.assertEqual('Warning', tracking.error_type)
self.assertEqual('Test error', tracking.error_description)
self.assertTrue(self.contact_a.email_bounced)
def test_tracking_email_link(self):
self.mailing.send_mail()
for stat in self.mailing.statistics_ids:
if stat.mail_mail_id:
stat.mail_mail_id.send()
tracking_email = self.env['mail.tracking.email'].search([
('mail_id_int', '=', stat.mail_mail_id_int),
])
self.assertTrue(tracking_email)
self.assertEqual(
tracking_email.mass_mailing_id.id, self.mailing.id)
self.assertEqual(tracking_email.mail_stats_id.id, stat.id)
self.assertEqual(stat.mail_tracking_id.id, tracking_email.id)
# And now open the email
metadata = {
'ip': '127.0.0.1',
'user_agent': 'Odoo Test/1.0',
'os_family': 'linux',
'ua_family': 'odoo',
}
tracking_email.event_create('open', metadata)
self.assertTrue(stat.opened)
def _tracking_email_bounce(self, event_type, state):
self.mailing.send_mail()
for stat in self.mailing.statistics_ids:
if stat.mail_mail_id:
stat.mail_mail_id.send()
tracking_email = self.env['mail.tracking.email'].search([
('mail_id_int', '=', stat.mail_mail_id_int),
])
# And now mark the email as bounce
metadata = {
'bounce_type': '499',
'bounce_description': 'Unable to connect to MX servers',
}
tracking_email.event_create(event_type, metadata)
self.assertTrue(stat.bounced)
def test_tracking_email_hard_bounce(self):
self._tracking_email_bounce('hard_bounce', 'bounced')
def test_tracking_email_soft_bounce(self):
self._tracking_email_bounce('soft_bounce', 'soft-bounced')
def test_tracking_email_reject(self):
self._tracking_email_bounce('reject', 'rejected')
def test_tracking_email_spam(self):
self._tracking_email_bounce('spam', 'spam')
def test_contact_tracking_emails(self):
self._tracking_email_bounce('hard_bounce', 'bounced')
self.assertTrue(self.contact_a.email_bounced)
self.assertTrue(self.contact_a.email_score < 50.0)
self.contact_a.email = 'other_contact_a@example.com'
self.assertFalse(self.contact_a.email_bounced)
self.assertTrue(self.contact_a.email_score == 50.0)
self.contact_a.email = 'contact_a@example.com'
self.assertTrue(self.contact_a.email_bounced)
self.assertTrue(self.contact_a.email_score < 50.0)

View File

@ -0,0 +1,35 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- © 2016 Antonio Espinosa - <antonio.espinosa@tecnativa.com>
License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). -->
<openerp>
<data>
<record model="ir.ui.view" id="view_mail_mail_statistics_form">
<field name="name">Add tracking email info</field>
<field name="model">mail.mail.statistics</field>
<field name="inherit_id" ref="mass_mailing.view_mail_mail_statistics_form"/>
<field name="arch" type="xml">
<xpath expr="//form" position="inside">
<group>
<field name="mail_tracking_id" />
</group>
<label for="tracking_event_ids"/>
<div>
<field name="tracking_event_ids">
<tree string="Tracking events" colors="grey:event_type in ('deferral');black:event_type in ('send');red:event_type in ('hard_bounce', 'soft_bounce', 'spam', 'reject');blue:event_type in ('unsub', 'click', 'open')">
<field name="time"/>
<field name="event_type"/>
<field name="ip"/>
<field name="url"/>
<field name="user_country_id" string="Country"/>
<field name="os_family" string="OS"/>
<field name="ua_family" string="User agent"/>
</tree>
</field>
</div>
</xpath>
</field>
</record>
</data>
</openerp>

View File

@ -0,0 +1,32 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- © 2016 Antonio Espinosa - <antonio.espinosa@tecnativa.com>
License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). -->
<openerp>
<data>
<record model="ir.ui.view" id="view_mail_mass_mailing_contact_tree">
<field name="name">Add email score and stars</field>
<field name="model">mail.mass_mailing.contact</field>
<field name="inherit_id" ref="mass_mailing.view_mail_mass_mailing_contact_tree"/>
<field name="arch" type="xml">
<field name="opt_out" position="after">
<field name="email_bounced"/>
<field name="email_score" widget="progressbar"/>
</field>
</field>
</record>
<record model="ir.ui.view" id="view_mail_mass_mailing_contact_search">
<field name="name">Filter bounced contacts</field>
<field name="model">mail.mass_mailing.contact</field>
<field name="inherit_id" ref="mass_mailing.view_mail_mass_mailing_contact_search"/>
<field name="arch" type="xml">
<filter name="not_opt_out" position="after">
<filter string="Email bounced" name="email_bounced"
domain="[('email_bounced', '=', True)]"/>
</filter>
</field>
</record>
</data>
</openerp>

View File

@ -0,0 +1,46 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- © 2016 Antonio Espinosa - <antonio.espinosa@tecnativa.com>
License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). -->
<openerp>
<data>
<record model="ir.ui.view" id="view_mail_mass_mailing_form">
<field name="name">Add avoid resend field</field>
<field name="model">mail.mass_mailing</field>
<field name="inherit_id" ref="mass_mailing.view_mail_mass_mailing_form"/>
<field name="arch" type="xml">
<field name="mass_mailing_campaign_id" position="before">
<field name="avoid_resend"/>
</field>
</field>
</record>
<record model="ir.actions.act_window" id="action_view_mail_tracking_email">
<field name="name">Mail tracking emails</field>
<field name="res_model">mail.tracking.email</field>
<field name="view_type">form</field>
<field name="view_mode">tree,form</field>
<field name="domain">[('mass_mailing_id', '!=', False)]</field>
</record>
<record model="ir.actions.act_window" id="action_view_mail_tracking_event">
<field name="name">Mail tracking events</field>
<field name="res_model">mail.tracking.event</field>
<field name="view_type">form</field>
<field name="view_mode">tree,form</field>
<field name="domain">[('mass_mailing_id', '!=', False)]</field>
</record>
<menuitem name="Mail tracking" id="mail_tracking_menu"
parent="base.marketing_menu" sequence="50"/>
<menuitem name="Emails" id="mail_tracking_email_menu"
parent="mail_tracking_menu" sequence="1"
action="action_view_mail_tracking_email"/>
<menuitem name="Events" id="mail_tracking_event_menu"
parent="mail_tracking_menu" sequence="2"
action="action_view_mail_tracking_event"/>
</data>
</openerp>

View File

@ -0,0 +1,20 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- © 2016 Antonio Espinosa - <antonio.espinosa@tecnativa.com>
License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). -->
<openerp>
<data>
<record model="ir.ui.view" id="view_mail_tracking_email_form">
<field name="name">Add mass mailing and mail stadistics</field>
<field name="model">mail.tracking.email</field>
<field name="inherit_id" ref="mail_tracking.view_mail_tracking_email_form"/>
<field name="arch" type="xml">
<field name="date" position="after">
<field name="mass_mailing_id"/>
<field name="mail_stats_id"/>
</field>
</field>
</record>
</data>
</openerp>