diff --git a/fetchmail_notify_error_to_sender/README.rst b/fetchmail_notify_error_to_sender/README.rst new file mode 100644 index 000000000..3f6262529 --- /dev/null +++ b/fetchmail_notify_error_to_sender/README.rst @@ -0,0 +1 @@ +**This file is going to be generated by oca-gen-addon-readme.** diff --git a/fetchmail_notify_error_to_sender/__init__.py b/fetchmail_notify_error_to_sender/__init__.py new file mode 100644 index 000000000..69f7babdf --- /dev/null +++ b/fetchmail_notify_error_to_sender/__init__.py @@ -0,0 +1,3 @@ +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). + +from . import models diff --git a/fetchmail_notify_error_to_sender/__manifest__.py b/fetchmail_notify_error_to_sender/__manifest__.py new file mode 100644 index 000000000..41d01ee05 --- /dev/null +++ b/fetchmail_notify_error_to_sender/__manifest__.py @@ -0,0 +1,26 @@ +# Copyright 2015 Lorenzo Battistini +# Copyright 2017 Eficent +# Copyright 2018 Hai Dinh +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). + +{ + 'name': 'Fetchmail Notify Error to Sender', + 'summary': 'If fetching mails gives error, send an email to sender', + 'version': '11.0.1.0.0', + 'category': 'Tools', + 'author': + "Agile Business Group,Eficent,Odoo Community Association (OCA)", + 'website': 'https://github.com/OCA/server-tools', + 'license': 'AGPL-3', + 'depends': [ + 'fetchmail', + ], + 'data': [ + 'views/fetchmail_view.xml', + 'data/email_template_data.xml', + ], + 'qweb': [ + ], + 'installable': True, + 'application': False, +} diff --git a/fetchmail_notify_error_to_sender/data/email_template_data.xml b/fetchmail_notify_error_to_sender/data/email_template_data.xml new file mode 100644 index 000000000..d85ba35c7 --- /dev/null +++ b/fetchmail_notify_error_to_sender/data/email_template_data.xml @@ -0,0 +1,24 @@ + + + + + Fetchmail - error notice + ${ctx.get('sender_message').get('to')|safe} + ${ctx.get('sender_message').get('from')|safe} + Receiving error with: ${ctx.get('sender_message').get('subject')|safe} + + + + ${ctx.get('lang')} + +

Hello ${ctx.get('sender_message').get('from')},

+

we got a problem with your email: ${ctx.get('sender_message').get('subject')}

+

Maybe you used a wrong recipient address?

+


+

Technical details:

+

${ctx.get('route_exception')}

+ + ]]>
+
+
diff --git a/fetchmail_notify_error_to_sender/i18n/ca.po b/fetchmail_notify_error_to_sender/i18n/ca.po new file mode 100644 index 000000000..b197c79aa --- /dev/null +++ b/fetchmail_notify_error_to_sender/i18n/ca.po @@ -0,0 +1,61 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * fetchmail_notify_error_to_sender +# +# Translators: +# Marc Tormo i Bochaca , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 9.0c\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-07-15 02:48+0000\n" +"PO-Revision-Date: 2017-07-15 02:48+0000\n" +"Last-Translator: Marc Tormo i Bochaca , 2017\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: fetchmail_notify_error_to_sender +#: model:mail.template,body_html:fetchmail_notify_error_to_sender.email_template_error_notice +msgid "" +"\n" +"
\n" +"

Hello ${ctx.get('sender_message').get('from')},

\n" +"

we got a problem with your email: ${ctx.get('sender_message').get('subject')}

\n" +"

Maybe you used a wrong recipient address?

\n" +"


\n" +"

Technical details:

\n" +"

${ctx.get('route_exception').message}

\n" +"
\n" +" " +msgstr "" + +#. module: fetchmail_notify_error_to_sender +#: model:ir.model,name:fetchmail_notify_error_to_sender.model_mail_thread +msgid "Email Thread" +msgstr "Tema del Correu electrònic " + +#. module: fetchmail_notify_error_to_sender +#: model:ir.model.fields,field_description:fetchmail_notify_error_to_sender.field_fetchmail_server_error_notice_template_id +msgid "Error notice template" +msgstr "" + +#. module: fetchmail_notify_error_to_sender +#: model:ir.model,name:fetchmail_notify_error_to_sender.model_fetchmail_server +msgid "POP/IMAP Server" +msgstr "Servidor POP/IMAP" + +#. module: fetchmail_notify_error_to_sender +#: model:mail.template,subject:fetchmail_notify_error_to_sender.email_template_error_notice +msgid "Receiving error with: ${ctx.get('sender_message').get('subject')|safe}" +msgstr "" + +#. module: fetchmail_notify_error_to_sender +#: model:ir.model.fields,help:fetchmail_notify_error_to_sender.field_fetchmail_server_error_notice_template_id +msgid "" +"Set here the template to use to send notice to sender when errors occur " +"while fetching email" +msgstr "" diff --git a/fetchmail_notify_error_to_sender/i18n/de.po b/fetchmail_notify_error_to_sender/i18n/de.po new file mode 100644 index 000000000..4723282c1 --- /dev/null +++ b/fetchmail_notify_error_to_sender/i18n/de.po @@ -0,0 +1,61 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * fetchmail_notify_error_to_sender +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-01 02:10+0000\n" +"PO-Revision-Date: 2017-12-01 02:10+0000\n" +"Last-Translator: OCA Transbot , 2017\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: fetchmail_notify_error_to_sender +#: model:mail.template,body_html:fetchmail_notify_error_to_sender.email_template_error_notice +msgid "" +"\n" +"
\n" +"

Hello ${ctx.get('sender_message').get('from')},

\n" +"

we got a problem with your email: ${ctx.get('sender_message').get('subject')}

\n" +"

Maybe you used a wrong recipient address?

\n" +"


\n" +"

Technical details:

\n" +"

${ctx.get('route_exception').message}

\n" +"
\n" +" " +msgstr "" + +#. module: fetchmail_notify_error_to_sender +#: model:ir.model,name:fetchmail_notify_error_to_sender.model_mail_thread +msgid "Email Thread" +msgstr "" + +#. module: fetchmail_notify_error_to_sender +#: model:ir.model.fields,field_description:fetchmail_notify_error_to_sender.field_fetchmail_server_error_notice_template_id +msgid "Error notice template" +msgstr "" + +#. module: fetchmail_notify_error_to_sender +#: model:ir.model,name:fetchmail_notify_error_to_sender.model_fetchmail_server +msgid "POP/IMAP Server" +msgstr "POP/IMAP-Server" + +#. module: fetchmail_notify_error_to_sender +#: model:mail.template,subject:fetchmail_notify_error_to_sender.email_template_error_notice +msgid "Receiving error with: ${ctx.get('sender_message').get('subject')|safe}" +msgstr "" + +#. module: fetchmail_notify_error_to_sender +#: model:ir.model.fields,help:fetchmail_notify_error_to_sender.field_fetchmail_server_error_notice_template_id +msgid "" +"Set here the template to use to send notice to sender when errors occur " +"while fetching email" +msgstr "" diff --git a/fetchmail_notify_error_to_sender/i18n/es.po b/fetchmail_notify_error_to_sender/i18n/es.po new file mode 100644 index 000000000..e73ea6f16 --- /dev/null +++ b/fetchmail_notify_error_to_sender/i18n/es.po @@ -0,0 +1,90 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * fetchmail_notify_error_to_sender +# +# Translators: +# Ahmet Altınışık , 2016 +# Antonio Trueba, 2016 +# Antonio Trueba, 2016 +# bossnm11 , 2014 +# Carles Antoli , 2015 +# Chanseok , 2014 +# Chul Park , 2015 +# David10000 , 2014 +# FIRST AUTHOR , 2012-2013 +# Gil , 2014 +# Hongseob Lee , 2015 +# Hongseob Lee , 2015 +# Hotellook, 2014 +# jeon , 2014 +# JiyeonLee , 2014 +# Jong-Dae Park , 2013 +# Kevin Min , 2015 +# KimKyudong , 2014 +# mariana1201 , 2014 +# Matjaž Mozetič , 2015-2016 +# Nicole , 2014 +# Paolo Valier, 2016 +# Pope, 2014 +# Rudolf Schnapka , 2016 +# Sarina Canelake , 2014 +# Seok Jun Yoon , 2015 +# shin2012 , 2014 +# Sujin Lee , 2014 +# Sunah Lim , 2013 +# Young Kim , 2015 +msgid "" +msgstr "" +"Project-Id-Version: server-tools (8.0)\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2016-04-14 07:02+0000\n" +"PO-Revision-Date: 2016-04-07 17:54+0000\n" +"Last-Translator: Antonio Trueba\n" +"Language-Team: Spanish (http://www.transifex.com/oca/OCA-server-tools-8-0/language/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: fetchmail_notify_error_to_sender +#: model:mail.template,body_html:fetchmail_notify_error_to_sender.email_template_error_notice +msgid "" +"\n" +"
\n" +"

Hello ${ctx.get('sender_message').get('from')},

\n" +"

we got a problem with your email: ${ctx.get('sender_message').get('subject')}

\n" +"

Maybe you used a wrong recipient address?

\n" +"


\n" +"

Technical details:

\n" +"

${ctx.get('route_exception').message}

\n" +"
\n" +" " +msgstr "\n
\n

Hola ${ctx.get('sender_message').get('from')},

\n

tenemos un problema con su email: ${ctx.get('sender_message').get('subject')}

\n

¿Puede haber usado una dirección de destino incorrecta?

\n


\n

Detalles técnicos:

\n

${ctx.get('route_exception').message}

\n
\n " + +#. module: fetchmail_notify_error_to_sender +#: model:ir.model,name:fetchmail_notify_error_to_sender.model_mail_thread +msgid "Email Thread" +msgstr "Hilo correo electrónico" + +#. module: fetchmail_notify_error_to_sender +#: field:fetchmail.server,error_notice_template_id:0 +msgid "Error notice template" +msgstr "" + +#. module: fetchmail_notify_error_to_sender +#: model:ir.model,name:fetchmail_notify_error_to_sender.model_fetchmail_server +msgid "POP/IMAP Server" +msgstr "Servidor POP/IMAP" + +#. module: fetchmail_notify_error_to_sender +#: model:mail.template,subject:fetchmail_notify_error_to_sender.email_template_error_notice +msgid "Receiving error with: ${ctx.get('sender_message').get('subject')|safe}" +msgstr "" + +#. module: fetchmail_notify_error_to_sender +#: help:fetchmail.server,error_notice_template_id:0 +msgid "" +"Set here the template to use to send notice to sender when errors occur " +"while fetching email" +msgstr "" diff --git a/fetchmail_notify_error_to_sender/i18n/fr.po b/fetchmail_notify_error_to_sender/i18n/fr.po new file mode 100644 index 000000000..1af7b0bf4 --- /dev/null +++ b/fetchmail_notify_error_to_sender/i18n/fr.po @@ -0,0 +1,73 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * fetchmail_notify_error_to_sender +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 9.0c\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-07-15 02:48+0000\n" +"PO-Revision-Date: 2017-07-15 02:48+0000\n" +"Last-Translator: OCA Transbot , 2017\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: fetchmail_notify_error_to_sender +#: model:mail.template,body_html:fetchmail_notify_error_to_sender.email_template_error_notice +msgid "" +"\n" +"
\n" +"

Hello ${ctx.get('sender_message').get('from')},

\n" +"

we got a problem with your email: ${ctx.get('sender_message').get('subject')}

\n" +"

Maybe you used a wrong recipient address?

\n" +"


\n" +"

Technical details:

\n" +"

${ctx.get('route_exception').message}

\n" +"
\n" +" " +msgstr "" +"\n" +"
\n" +"

Bonjour ${ctx.get('sender_message').get('from')},

\n" +"

nous avons de la difficulté avec votre adresse de courriel: ${ctx.get('sender_message').get('subject')}

\n" +"

Peut-être avez-vous utilisé une mauvaise adresse de destinataire?

\n" +"


\n" +"

Détails techniques:

\n" +"

${ctx.get('route_exception').message}

\n" +"
" + +#. module: fetchmail_notify_error_to_sender +#: model:ir.model,name:fetchmail_notify_error_to_sender.model_mail_thread +msgid "Email Thread" +msgstr "Discussion de courriel" + +#. module: fetchmail_notify_error_to_sender +#: model:ir.model.fields,field_description:fetchmail_notify_error_to_sender.field_fetchmail_server_error_notice_template_id +msgid "Error notice template" +msgstr "Erreur dans le modèle de notice" + +#. module: fetchmail_notify_error_to_sender +#: model:ir.model,name:fetchmail_notify_error_to_sender.model_fetchmail_server +msgid "POP/IMAP Server" +msgstr "Serveur POP/IMAP" + +#. module: fetchmail_notify_error_to_sender +#: model:mail.template,subject:fetchmail_notify_error_to_sender.email_template_error_notice +msgid "Receiving error with: ${ctx.get('sender_message').get('subject')|safe}" +msgstr "" +"Reçu une erreur avec : ${ctx.get('sender_message').get('subject')|safe}" + +#. module: fetchmail_notify_error_to_sender +#: model:ir.model.fields,help:fetchmail_notify_error_to_sender.field_fetchmail_server_error_notice_template_id +msgid "" +"Set here the template to use to send notice to sender when errors occur " +"while fetching email" +msgstr "" +"Choisissez ici le modèle à utiliser pour informer l'expéditeur lorsque des " +"erreurs surviennent lors de la récupération du courriel. " diff --git a/fetchmail_notify_error_to_sender/i18n/hr.po b/fetchmail_notify_error_to_sender/i18n/hr.po new file mode 100644 index 000000000..e0dd9bad5 --- /dev/null +++ b/fetchmail_notify_error_to_sender/i18n/hr.po @@ -0,0 +1,61 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * fetchmail_notify_error_to_sender +# +# Translators: +# Bole , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 9.0c\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-07-15 02:48+0000\n" +"PO-Revision-Date: 2017-07-15 02:48+0000\n" +"Last-Translator: Bole , 2017\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: fetchmail_notify_error_to_sender +#: model:mail.template,body_html:fetchmail_notify_error_to_sender.email_template_error_notice +msgid "" +"\n" +"
\n" +"

Hello ${ctx.get('sender_message').get('from')},

\n" +"

we got a problem with your email: ${ctx.get('sender_message').get('subject')}

\n" +"

Maybe you used a wrong recipient address?

\n" +"


\n" +"

Technical details:

\n" +"

${ctx.get('route_exception').message}

\n" +"
\n" +" " +msgstr "" + +#. module: fetchmail_notify_error_to_sender +#: model:ir.model,name:fetchmail_notify_error_to_sender.model_mail_thread +msgid "Email Thread" +msgstr "" + +#. module: fetchmail_notify_error_to_sender +#: model:ir.model.fields,field_description:fetchmail_notify_error_to_sender.field_fetchmail_server_error_notice_template_id +msgid "Error notice template" +msgstr "" + +#. module: fetchmail_notify_error_to_sender +#: model:ir.model,name:fetchmail_notify_error_to_sender.model_fetchmail_server +msgid "POP/IMAP Server" +msgstr "POP/IMAP Server" + +#. module: fetchmail_notify_error_to_sender +#: model:mail.template,subject:fetchmail_notify_error_to_sender.email_template_error_notice +msgid "Receiving error with: ${ctx.get('sender_message').get('subject')|safe}" +msgstr "" + +#. module: fetchmail_notify_error_to_sender +#: model:ir.model.fields,help:fetchmail_notify_error_to_sender.field_fetchmail_server_error_notice_template_id +msgid "" +"Set here the template to use to send notice to sender when errors occur " +"while fetching email" +msgstr "" diff --git a/fetchmail_notify_error_to_sender/i18n/it.po b/fetchmail_notify_error_to_sender/i18n/it.po new file mode 100644 index 000000000..a96b9c6da --- /dev/null +++ b/fetchmail_notify_error_to_sender/i18n/it.po @@ -0,0 +1,74 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * fetchmail_notify_error_to_sender +# +# Translators: +# Paolo Valier , 2018 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2018-01-06 02:25+0000\n" +"PO-Revision-Date: 2018-01-06 02:25+0000\n" +"Last-Translator: Paolo Valier , 2018\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: fetchmail_notify_error_to_sender +#: model:mail.template,body_html:fetchmail_notify_error_to_sender.email_template_error_notice +msgid "" +"\n" +"
\n" +"

Hello ${ctx.get('sender_message').get('from')},

\n" +"

we got a problem with your email: ${ctx.get('sender_message').get('subject')}

\n" +"

Maybe you used a wrong recipient address?

\n" +"


\n" +"

Technical details:

\n" +"

${ctx.get('route_exception').message}

\n" +"
\n" +" " +msgstr "" +"\n" +"
\n" +"

Salve ${ctx.get('sender_message').get('from')},

\n" +"

abbiamo avuto un problema con la tua mail: ${ctx.get('sender_message').get('subject')}

\n" +"

Forse hai usato un indirizzo errato?

\n" +"


\n" +"

Dettagli tecnici:

\n" +"

${ctx.get('route_exception').message}

\n" +"
\n" +" " + +#. module: fetchmail_notify_error_to_sender +#: model:ir.model,name:fetchmail_notify_error_to_sender.model_mail_thread +msgid "Email Thread" +msgstr "Discussione Mail" + +#. module: fetchmail_notify_error_to_sender +#: model:ir.model.fields,field_description:fetchmail_notify_error_to_sender.field_fetchmail_server_error_notice_template_id +msgid "Error notice template" +msgstr "Template Notifica Errore" + +#. module: fetchmail_notify_error_to_sender +#: model:ir.model,name:fetchmail_notify_error_to_sender.model_fetchmail_server +msgid "POP/IMAP Server" +msgstr "Server POP/IMAP" + +#. module: fetchmail_notify_error_to_sender +#: model:mail.template,subject:fetchmail_notify_error_to_sender.email_template_error_notice +msgid "Receiving error with: ${ctx.get('sender_message').get('subject')|safe}" +msgstr "" +"Ricezione errore con: ${ctx.get('sender_message').get('subject')|safe}" + +#. module: fetchmail_notify_error_to_sender +#: model:ir.model.fields,help:fetchmail_notify_error_to_sender.field_fetchmail_server_error_notice_template_id +msgid "" +"Set here the template to use to send notice to sender when errors occur " +"while fetching email" +msgstr "" +"Imposta qui il template da usare per inviare una notifica al mittente quando" +" si verificano errori durante il recupero dell'e-mail" diff --git a/fetchmail_notify_error_to_sender/i18n/pt_BR.po b/fetchmail_notify_error_to_sender/i18n/pt_BR.po new file mode 100644 index 000000000..01701fca6 --- /dev/null +++ b/fetchmail_notify_error_to_sender/i18n/pt_BR.po @@ -0,0 +1,61 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * fetchmail_notify_error_to_sender +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-01 02:10+0000\n" +"PO-Revision-Date: 2017-12-01 02:10+0000\n" +"Last-Translator: OCA Transbot , 2017\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: fetchmail_notify_error_to_sender +#: model:mail.template,body_html:fetchmail_notify_error_to_sender.email_template_error_notice +msgid "" +"\n" +"
\n" +"

Hello ${ctx.get('sender_message').get('from')},

\n" +"

we got a problem with your email: ${ctx.get('sender_message').get('subject')}

\n" +"

Maybe you used a wrong recipient address?

\n" +"


\n" +"

Technical details:

\n" +"

${ctx.get('route_exception').message}

\n" +"
\n" +" " +msgstr "" + +#. module: fetchmail_notify_error_to_sender +#: model:ir.model,name:fetchmail_notify_error_to_sender.model_mail_thread +msgid "Email Thread" +msgstr "" + +#. module: fetchmail_notify_error_to_sender +#: model:ir.model.fields,field_description:fetchmail_notify_error_to_sender.field_fetchmail_server_error_notice_template_id +msgid "Error notice template" +msgstr "" + +#. module: fetchmail_notify_error_to_sender +#: model:ir.model,name:fetchmail_notify_error_to_sender.model_fetchmail_server +msgid "POP/IMAP Server" +msgstr "Servidor POP/IMAP" + +#. module: fetchmail_notify_error_to_sender +#: model:mail.template,subject:fetchmail_notify_error_to_sender.email_template_error_notice +msgid "Receiving error with: ${ctx.get('sender_message').get('subject')|safe}" +msgstr "" + +#. module: fetchmail_notify_error_to_sender +#: model:ir.model.fields,help:fetchmail_notify_error_to_sender.field_fetchmail_server_error_notice_template_id +msgid "" +"Set here the template to use to send notice to sender when errors occur " +"while fetching email" +msgstr "" diff --git a/fetchmail_notify_error_to_sender/i18n/pt_PT.po b/fetchmail_notify_error_to_sender/i18n/pt_PT.po new file mode 100644 index 000000000..2b9a8719d --- /dev/null +++ b/fetchmail_notify_error_to_sender/i18n/pt_PT.po @@ -0,0 +1,60 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * fetchmail_notify_error_to_sender +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: server-tools (8.0)\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2016-09-16 09:29+0000\n" +"PO-Revision-Date: 2015-09-18 13:55+0000\n" +"Last-Translator: <>\n" +"Language-Team: Portuguese (Portugal) (http://www.transifex.com/oca/OCA-server-tools-8-0/language/pt_PT/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: pt_PT\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. module: fetchmail_notify_error_to_sender +#: model:mail.template,body_html:fetchmail_notify_error_to_sender.email_template_error_notice +msgid "" +"\n" +"
\n" +"

Hello ${ctx.get('sender_message').get('from')},

\n" +"

we got a problem with your email: ${ctx.get('sender_message').get('subject')}

\n" +"

Maybe you used a wrong recipient address?

\n" +"


\n" +"

Technical details:

\n" +"

${ctx.get('route_exception').message}

\n" +"
\n" +" " +msgstr "" + +#. module: fetchmail_notify_error_to_sender +#: model:ir.model,name:fetchmail_notify_error_to_sender.model_mail_thread +msgid "Email Thread" +msgstr "Tópico de Email" + +#. module: fetchmail_notify_error_to_sender +#: field:fetchmail.server,error_notice_template_id:0 +msgid "Error notice template" +msgstr "" + +#. module: fetchmail_notify_error_to_sender +#: model:ir.model,name:fetchmail_notify_error_to_sender.model_fetchmail_server +msgid "POP/IMAP Server" +msgstr "" + +#. module: fetchmail_notify_error_to_sender +#: model:mail.template,subject:fetchmail_notify_error_to_sender.email_template_error_notice +msgid "Receiving error with: ${ctx.get('sender_message').get('subject')|safe}" +msgstr "" + +#. module: fetchmail_notify_error_to_sender +#: help:fetchmail.server,error_notice_template_id:0 +msgid "" +"Set here the template to use to send notice to sender when errors occur " +"while fetching email" +msgstr "" diff --git a/fetchmail_notify_error_to_sender/i18n/sl.po b/fetchmail_notify_error_to_sender/i18n/sl.po new file mode 100644 index 000000000..a6046bfbd --- /dev/null +++ b/fetchmail_notify_error_to_sender/i18n/sl.po @@ -0,0 +1,61 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * fetchmail_notify_error_to_sender +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-01 02:10+0000\n" +"PO-Revision-Date: 2017-12-01 02:10+0000\n" +"Last-Translator: OCA Transbot , 2017\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: fetchmail_notify_error_to_sender +#: model:mail.template,body_html:fetchmail_notify_error_to_sender.email_template_error_notice +msgid "" +"\n" +"
\n" +"

Hello ${ctx.get('sender_message').get('from')},

\n" +"

we got a problem with your email: ${ctx.get('sender_message').get('subject')}

\n" +"

Maybe you used a wrong recipient address?

\n" +"


\n" +"

Technical details:

\n" +"

${ctx.get('route_exception').message}

\n" +"
\n" +" " +msgstr "" + +#. module: fetchmail_notify_error_to_sender +#: model:ir.model,name:fetchmail_notify_error_to_sender.model_mail_thread +msgid "Email Thread" +msgstr "" + +#. module: fetchmail_notify_error_to_sender +#: model:ir.model.fields,field_description:fetchmail_notify_error_to_sender.field_fetchmail_server_error_notice_template_id +msgid "Error notice template" +msgstr "" + +#. module: fetchmail_notify_error_to_sender +#: model:ir.model,name:fetchmail_notify_error_to_sender.model_fetchmail_server +msgid "POP/IMAP Server" +msgstr "POP/IMAP strežnik" + +#. module: fetchmail_notify_error_to_sender +#: model:mail.template,subject:fetchmail_notify_error_to_sender.email_template_error_notice +msgid "Receiving error with: ${ctx.get('sender_message').get('subject')|safe}" +msgstr "" + +#. module: fetchmail_notify_error_to_sender +#: model:ir.model.fields,help:fetchmail_notify_error_to_sender.field_fetchmail_server_error_notice_template_id +msgid "" +"Set here the template to use to send notice to sender when errors occur " +"while fetching email" +msgstr "" diff --git a/fetchmail_notify_error_to_sender/i18n/tr.po b/fetchmail_notify_error_to_sender/i18n/tr.po new file mode 100644 index 000000000..b27161e9b --- /dev/null +++ b/fetchmail_notify_error_to_sender/i18n/tr.po @@ -0,0 +1,73 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * fetchmail_notify_error_to_sender +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 9.0c\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-07-15 02:48+0000\n" +"PO-Revision-Date: 2017-07-15 02:48+0000\n" +"Last-Translator: OCA Transbot , 2017\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: fetchmail_notify_error_to_sender +#: model:mail.template,body_html:fetchmail_notify_error_to_sender.email_template_error_notice +msgid "" +"\n" +"
\n" +"

Hello ${ctx.get('sender_message').get('from')},

\n" +"

we got a problem with your email: ${ctx.get('sender_message').get('subject')}

\n" +"

Maybe you used a wrong recipient address?

\n" +"


\n" +"

Technical details:

\n" +"

${ctx.get('route_exception').message}

\n" +"
\n" +" " +msgstr "" +"\n" +"
\n" +"

Merhaba ${ctx.get('sender_message').get('from')},

\n" +"

E-postanız ile ilgili bir problem var: ${ctx.get('sender_message').get('subject')}

\n" +"

Belki alıcı adresi yanlıştır?

\n" +"


\n" +"

Teknik detaylar:

\n" +"

${ctx.get('route_exception').message}

\n" +"
\n" +" " + +#. module: fetchmail_notify_error_to_sender +#: model:ir.model,name:fetchmail_notify_error_to_sender.model_mail_thread +msgid "Email Thread" +msgstr "Eposta konuşması" + +#. module: fetchmail_notify_error_to_sender +#: model:ir.model.fields,field_description:fetchmail_notify_error_to_sender.field_fetchmail_server_error_notice_template_id +msgid "Error notice template" +msgstr "Hata bildirim şablonu" + +#. module: fetchmail_notify_error_to_sender +#: model:ir.model,name:fetchmail_notify_error_to_sender.model_fetchmail_server +msgid "POP/IMAP Server" +msgstr "POP/IMAP sunucu" + +#. module: fetchmail_notify_error_to_sender +#: model:mail.template,subject:fetchmail_notify_error_to_sender.email_template_error_notice +msgid "Receiving error with: ${ctx.get('sender_message').get('subject')|safe}" +msgstr "Alınan hata : ${ctx.get('sender_message').get('subject')|safe}" + +#. module: fetchmail_notify_error_to_sender +#: model:ir.model.fields,help:fetchmail_notify_error_to_sender.field_fetchmail_server_error_notice_template_id +msgid "" +"Set here the template to use to send notice to sender when errors occur " +"while fetching email" +msgstr "" +"E-posta alınırken oluşan hatalarda gönderilecek bildirim mesajı için şablonu" +" belirleyin." diff --git a/fetchmail_notify_error_to_sender/i18n/zh_CN.po b/fetchmail_notify_error_to_sender/i18n/zh_CN.po new file mode 100644 index 000000000..ee8456c79 --- /dev/null +++ b/fetchmail_notify_error_to_sender/i18n/zh_CN.po @@ -0,0 +1,61 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * fetchmail_notify_error_to_sender +# +# Translators: +# Jeffery CHEN , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 9.0c\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-07-15 02:48+0000\n" +"PO-Revision-Date: 2017-07-15 02:48+0000\n" +"Last-Translator: Jeffery CHEN , 2017\n" +"Language-Team: Chinese (China) (https://www.transifex.com/oca/teams/23907/zh_CN/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: zh_CN\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +#. module: fetchmail_notify_error_to_sender +#: model:mail.template,body_html:fetchmail_notify_error_to_sender.email_template_error_notice +msgid "" +"\n" +"
\n" +"

Hello ${ctx.get('sender_message').get('from')},

\n" +"

we got a problem with your email: ${ctx.get('sender_message').get('subject')}

\n" +"

Maybe you used a wrong recipient address?

\n" +"


\n" +"

Technical details:

\n" +"

${ctx.get('route_exception').message}

\n" +"
\n" +" " +msgstr "" + +#. module: fetchmail_notify_error_to_sender +#: model:ir.model,name:fetchmail_notify_error_to_sender.model_mail_thread +msgid "Email Thread" +msgstr "" + +#. module: fetchmail_notify_error_to_sender +#: model:ir.model.fields,field_description:fetchmail_notify_error_to_sender.field_fetchmail_server_error_notice_template_id +msgid "Error notice template" +msgstr "" + +#. module: fetchmail_notify_error_to_sender +#: model:ir.model,name:fetchmail_notify_error_to_sender.model_fetchmail_server +msgid "POP/IMAP Server" +msgstr "POP/IMAP 服务器" + +#. module: fetchmail_notify_error_to_sender +#: model:mail.template,subject:fetchmail_notify_error_to_sender.email_template_error_notice +msgid "Receiving error with: ${ctx.get('sender_message').get('subject')|safe}" +msgstr "" + +#. module: fetchmail_notify_error_to_sender +#: model:ir.model.fields,help:fetchmail_notify_error_to_sender.field_fetchmail_server_error_notice_template_id +msgid "" +"Set here the template to use to send notice to sender when errors occur " +"while fetching email" +msgstr "" diff --git a/fetchmail_notify_error_to_sender/models/__init__.py b/fetchmail_notify_error_to_sender/models/__init__.py new file mode 100644 index 000000000..33189fb89 --- /dev/null +++ b/fetchmail_notify_error_to_sender/models/__init__.py @@ -0,0 +1,4 @@ +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). + +from . import fetchmail +from . import mail_thread diff --git a/fetchmail_notify_error_to_sender/models/fetchmail.py b/fetchmail_notify_error_to_sender/models/fetchmail.py new file mode 100644 index 000000000..2becf8f2e --- /dev/null +++ b/fetchmail_notify_error_to_sender/models/fetchmail.py @@ -0,0 +1,15 @@ +# Copyright 2015 Lorenzo Battistini +# Copyright 2017 Eficent +# Copyright 2018 Hai Dinh +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). + +from odoo import fields, models + + +class FetchmailServer(models.Model): + _inherit = 'fetchmail.server' + + error_notice_template_id = fields.Many2one( + 'mail.template', string="Error notice template", + help="Set here the template to use to send notice to sender when " + "errors occur while fetching email") diff --git a/fetchmail_notify_error_to_sender/models/mail_thread.py b/fetchmail_notify_error_to_sender/models/mail_thread.py new file mode 100644 index 000000000..1ab797fc2 --- /dev/null +++ b/fetchmail_notify_error_to_sender/models/mail_thread.py @@ -0,0 +1,32 @@ +# Copyright 2015-2017 Lorenzo Battistini +# Copyright 2017 Eficent +# Copyright 2018 Hai Dinh +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). + +from odoo import api, models + + +class MailThread(models.AbstractModel): + _inherit = 'mail.thread' + + @api.model + def message_route(self, message, message_dict, model=None, thread_id=None, + custom_values=None): + try: + res = super(MailThread, self).message_route( + message, message_dict, model=model, thread_id=thread_id, + custom_values=custom_values) + except ValueError as ve: + fetchmail_server_id = self.env.context.get('fetchmail_server_id') + if not fetchmail_server_id: + raise ve + fetchmail_server = self.env['fetchmail.server'].with_context({ + 'sender_message': message, + 'route_exception': ve, + }).browse(fetchmail_server_id) + if not fetchmail_server.error_notice_template_id: + raise ve + fetchmail_server.error_notice_template_id.send_mail( + fetchmail_server.id) + raise ve + return res diff --git a/fetchmail_notify_error_to_sender/readme/CONFIGURE.rst b/fetchmail_notify_error_to_sender/readme/CONFIGURE.rst new file mode 100644 index 000000000..bffe75f5e --- /dev/null +++ b/fetchmail_notify_error_to_sender/readme/CONFIGURE.rst @@ -0,0 +1,4 @@ +To configure this module, you need to: + +#. Configure your fetchmail server setting 'Error notice template' = 'Fetchmail - error notice'. +#. You can edit the 'Fetchmail - error notice' email template according to your needs. diff --git a/fetchmail_notify_error_to_sender/readme/CONTRIBUTORS.rst b/fetchmail_notify_error_to_sender/readme/CONTRIBUTORS.rst new file mode 100644 index 000000000..62bb4ffa9 --- /dev/null +++ b/fetchmail_notify_error_to_sender/readme/CONTRIBUTORS.rst @@ -0,0 +1,4 @@ +* Lorenzo Battistini +* Miquel Raïch (migration to v9 and v10) +* Hai Dinh (migration to V11) +* Nedas Zilinskas (Ventor, Xpansa Group ) diff --git a/fetchmail_notify_error_to_sender/readme/DESCRIPTION.rst b/fetchmail_notify_error_to_sender/readme/DESCRIPTION.rst new file mode 100644 index 000000000..b2aed0cd4 --- /dev/null +++ b/fetchmail_notify_error_to_sender/readme/DESCRIPTION.rst @@ -0,0 +1,10 @@ +If fetchmail is not able to correctly route an email, the email is +"silently" lost (you get an error message in server log). + +For example, if you configure odoo mail system to route received emails +according to recipient address, it may happen users send emails to wrong +email address. + +This module extends the functionality of fetchmail to allow you to +automatically send a notification email to sender, when odoo can't +correctly process the received email. diff --git a/fetchmail_notify_error_to_sender/static/description/icon.png b/fetchmail_notify_error_to_sender/static/description/icon.png new file mode 100644 index 000000000..955b8138f Binary files /dev/null and b/fetchmail_notify_error_to_sender/static/description/icon.png differ diff --git a/fetchmail_notify_error_to_sender/tests/__init__.py b/fetchmail_notify_error_to_sender/tests/__init__.py new file mode 100644 index 000000000..f6a213969 --- /dev/null +++ b/fetchmail_notify_error_to_sender/tests/__init__.py @@ -0,0 +1,3 @@ +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). + +from . import test_fetchmail_notify_error_to_sender diff --git a/fetchmail_notify_error_to_sender/tests/test_fetchmail_notify_error_to_sender.py b/fetchmail_notify_error_to_sender/tests/test_fetchmail_notify_error_to_sender.py new file mode 100644 index 000000000..65ab0bf9a --- /dev/null +++ b/fetchmail_notify_error_to_sender/tests/test_fetchmail_notify_error_to_sender.py @@ -0,0 +1,78 @@ +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). + + +import socket +from odoo.addons.mail.tests.common import TestMail +from odoo.addons.mail.tests.test_mail_gateway import MAIL_TEMPLATE +from odoo.tools import mute_logger + + +class TestFetchmailNotifyErrorToSender(TestMail): + + def setUp(self): + super(TestFetchmailNotifyErrorToSender, self).setUp() + + self.fetchmail_server = self.env['fetchmail.server'].create({ + 'name': 'Test Fetchmail Server', + 'type': 'imap', + 'error_notice_template_id': self.env.ref('%s.%s' % ( + 'fetchmail_notify_error_to_sender', + 'email_template_error_notice', + )).id + }) + + def format_and_process_with_context( + self, template, to_email='groups@example.com, other@gmail.com', + subject='Frogs', extra='', + email_from='Sylvie Lelitre ', + cc_email='', + msg_id='<1198923581.41972151344608186760.JavaMail@agrolait.com>', + model=None, target_model='mail.test', target_field='name', ctx=False, + ): + self.assertFalse(self.env[target_model].search([ + (target_field, '=', subject), + ])) + mail = template.format( + to=to_email, + subject=subject, + cc=cc_email, + extra=extra, + email_from=email_from, + msg_id=msg_id, + ) + self.env['mail.thread'].with_context(ctx or {}).message_process( + model, + mail, + ) + return self.env[target_model].search([(target_field, '=', subject)]) + + @mute_logger('odoo.addons.mail.models.mail_thread', 'odoo.models') + def test_message_process(self): + email_from = 'valid.lelitre@agrolait.com' + + count_return_mails_before = self.env['mail.mail'].search_count([ + ('email_to', '=', email_from), + ]) + + with self.assertRaises(ValueError): + self.format_and_process_with_context( + MAIL_TEMPLATE, + email_from=email_from, + to_email='noone@example.com', + subject='spam', + extra='In-Reply-To: <12321321-openerp-%d-mail.test@%s>' % ( + self.test_public.id, + socket.gethostname(), + ), + ctx={ + 'fetchmail_server_id': self.fetchmail_server.id, + } + ) + + count_return_mails_after = self.env['mail.mail'].search_count([ + ('email_to', '=', email_from), + ]) + self.assertEqual( + count_return_mails_after, + count_return_mails_before + 1, + ) diff --git a/fetchmail_notify_error_to_sender/views/fetchmail_view.xml b/fetchmail_notify_error_to_sender/views/fetchmail_view.xml new file mode 100644 index 000000000..40d7ba9f4 --- /dev/null +++ b/fetchmail_notify_error_to_sender/views/fetchmail_view.xml @@ -0,0 +1,13 @@ + + + + fetchmail.server.form + fetchmail.server + + + + + + + +