From 73ee7d4dec005dcc1253cc04540e1d9794f934f7 Mon Sep 17 00:00:00 2001 From: Alexis de Lattre Date: Fri, 24 May 2019 19:12:29 +0200 Subject: [PATCH] Add module mass_mailing_usability Improve module link_tracker_usability --- link_tracker_usability/link_tracker_view.xml | 17 +++++++ mass_mailing_usability/__init__.py | 4 ++ mass_mailing_usability/__manifest__.py | 30 ++++++++++++ mass_mailing_usability/link_tracker.py | 14 ++++++ mass_mailing_usability/link_tracker_view.xml | 48 +++++++++++++++++++ .../mail_mail_statistics.py | 18 +++++++ 6 files changed, 131 insertions(+) create mode 100644 mass_mailing_usability/__init__.py create mode 100644 mass_mailing_usability/__manifest__.py create mode 100644 mass_mailing_usability/link_tracker.py create mode 100644 mass_mailing_usability/link_tracker_view.xml create mode 100644 mass_mailing_usability/mail_mail_statistics.py diff --git a/link_tracker_usability/link_tracker_view.xml b/link_tracker_usability/link_tracker_view.xml index 40ee07a..8ce636c 100644 --- a/link_tracker_usability/link_tracker_view.xml +++ b/link_tracker_usability/link_tracker_view.xml @@ -34,4 +34,21 @@ + + + usability.link.tracker.click.search + link.tracker.click + + + + + + + + + + + + + diff --git a/mass_mailing_usability/__init__.py b/mass_mailing_usability/__init__.py new file mode 100644 index 0000000..dbe2de7 --- /dev/null +++ b/mass_mailing_usability/__init__.py @@ -0,0 +1,4 @@ +# -*- coding: utf-8 -*- + +from . import mail_mail_statistics +from . import link_tracker diff --git a/mass_mailing_usability/__manifest__.py b/mass_mailing_usability/__manifest__.py new file mode 100644 index 0000000..870834d --- /dev/null +++ b/mass_mailing_usability/__manifest__.py @@ -0,0 +1,30 @@ +# -*- coding: utf-8 -*- +# Copyright 2019 Akretion (http://www.akretion.com) +# @author Alexis de Lattre +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). + +{ + 'name': 'Mass Mailing Campaigns Usability', + 'version': '10.0.1.0.0', + 'category': 'Marketing', + 'license': 'AGPL-3', + 'summary': 'Improve usability of mass mailing campaigns', + 'description': """ +Mass Mailing Campaigns Usability +================================ + +Several small usability improvements on the module mass_mailing: + +* show fields on link.tracker.click that are not displayed by default + +This module has been written by Alexis de Lattre from Akretion +. + """, + 'author': 'Akretion', + 'website': 'http://www.akretion.com', + 'depends': ['mass_mailing'], + 'data': [ + 'link_tracker_view.xml', + ], + 'installable': True, +} diff --git a/mass_mailing_usability/link_tracker.py b/mass_mailing_usability/link_tracker.py new file mode 100644 index 0000000..e81befe --- /dev/null +++ b/mass_mailing_usability/link_tracker.py @@ -0,0 +1,14 @@ +# -*- coding: utf-8 -*- +# Copyright 2019 Akretion (http://www.akretion.com) +# @author Alexis de Lattre +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). + + +from odoo import fields, models + + +class LinkTrackerClick(models.Model): + _inherit = 'link.tracker.click' + + mail_stat_recipient = fields.Char( + related='mail_stat_id.recipient', store=True) diff --git a/mass_mailing_usability/link_tracker_view.xml b/mass_mailing_usability/link_tracker_view.xml new file mode 100644 index 0000000..209097c --- /dev/null +++ b/mass_mailing_usability/link_tracker_view.xml @@ -0,0 +1,48 @@ + + + + + + + + mm.usability.link.tracker.click.tree + link.tracker.click + + + + + + + + + + + mm.usability.link.tracker.click.form + link.tracker.click + + + + + + + + + + + + + mm.usability.link.tracker.click.search + link.tracker.click + + + + + + + + + diff --git a/mass_mailing_usability/mail_mail_statistics.py b/mass_mailing_usability/mail_mail_statistics.py new file mode 100644 index 0000000..35b9e86 --- /dev/null +++ b/mass_mailing_usability/mail_mail_statistics.py @@ -0,0 +1,18 @@ +# -*- coding: utf-8 -*- +# Copyright 2019 Akretion (http://www.akretion.com) +# @author Alexis de Lattre +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). + + +from odoo import api, fields, models + + +class MailMailStatistics(models.Model): + _inherit = 'mail.mail.statistics' + + recipient = fields.Char(store=True) + + # add invalidation for 'recipient' field + @api.depends('res_id', 'model') + def _compute_recipient(self): + return super(MailMailStatistics, self)._compute_recipient()