Commit Graph

56 Commits (aa03db13282fdd03dbf18f9f512bf611eba006c2)

Author SHA1 Message Date
payen000 ef73e2d7ab [MIG] mail_tracking: Completed migration to 16.0
The following changes were implemented:

1 - Added Failed Message component and related components to reuse the
    Message component when rendering failed messages. This allows us to
    dispose of the messagefailed JS model altogether, since failed messages
    are now just regular messages that were marked as failed.

2 - Added Owl reactivity to failed message actions so that browser does
    not have to be reloaded each time a message is marked as reviewed or
    resent.

3 - Fixed 'Retry' and 'Set as reviewed' flows for failed messages.

4 - Fixed `Failed sent messages` filter on models by overriding `get_view`
    instead of `_fields_view_get`

5 - Refactored folder structure to more closely resemble the `mail`
    module's folder structure.

6 - Refactored module to utilize `Command` as a means to create, write,
    etc. instead of `[0, ...]`, `[4, ...]`.

7 - Fixed and added unit tests.

8 - Removed dead/unused code from `v15`.
2023-10-09 07:55:22 -07:00
filoquin b3f4068e02 [MIG] mail_tracking: Migration to 16.0 2023-09-25 07:50:08 -07:00
David c8fd2a18c9 [FIX] mail_tracking: failed messages in thread
- Recover the failed messages box in the mail.thread
- Fix failed message box template issues
- Remove dead code
- Fix send_email() method signature
- Fix patch methods js files paths
- Update roadmap

TT44683
2023-09-25 07:40:36 -07:00
dhx e801690097 [IMP] mail_tracking: New config parameter to disable the tracking image
- As the tracker img in the body is currently also used to set the
  X-Odoo-MailTracking-ID mail header we can remove the tag only
  after this is done
- Added tests to check for the presence and absence of the tracking
  image tag depending on the new configuration parameter
2023-09-25 07:40:36 -07:00
David b79c30f929 [FIX] mail_tracking: allowed trackings compute
In the forward port of the permission check, a column was dropped from
the tuple, but the following code wasn't adapted to the new tuple
length. For clarity sake we also name the tuple unpacking into proper
variables.

TT43453
2023-09-25 07:40:36 -07:00
David 2316c3fe83 [FIX] mail_tracking: thread permissions
If a user tries to read a thread on a record and one message is from a
partner on which he has no permissions, there will be an exception as
this method tries to fetch info from such partner.

TT43075
2023-09-25 07:40:36 -07:00
Thierry Ducrest 17fcd66213 Fix mail tracking bounce notification not logged
This is to resolve the following issue:

* https://github.com/OCA/social/issues/1121
2023-09-25 07:40:35 -07:00
sergio-teruel 960a23f4fc [FIX] mail_tracking: Crash to add malformed emails to recipients suggestions 2023-09-25 07:40:35 -07:00
jb 9bb48ba637 use keyword arguments in build_email to comply with portal tests 2023-09-25 07:40:35 -07:00
david 7165e484e4 [FIX] mail_tracking: permissions
Refine which mail tracking record is allowed to see. We can rely on the
ACLs of the related records so we minimize inconvenient message subject
leaks.

A regular user can read these mail.tracking.email records:

- Those with a linked mail.message that the user can read
- Those with a linked mail.mail that the user can read
- Those with no message/mail link but a linked partner that the user can
read.
- Those with no linked records.

TT31399
2023-09-25 07:40:35 -07:00
Jairo Llopis 003ee3ee10 [FIX] mail_tracking: process sent events
Up until now, the `sent` event type was never processed, probably because it "made no sense", as an unsent email would never trigger an event.

However, it makes sense to process it because you may have a local relay that transmits mails over to the mail provider. In those circumstances, you should have 2 "sent" events (one from the relay and another one from the provider).

Also marked some useless parts of code for removal.

@Tecnativa TT32365
2023-09-25 07:40:35 -07:00
David 8b78a72c31 [IMP] mail_tracking_mailgun: mass mailing manual tracking
Mass mailing are tracked from mail.trace as the don't store a message in
the db. In order to gather the message_id and be able to do manual
checks to mailgun, that's the table where we should get the message id.

TT40816
2023-09-25 07:40:35 -07:00
EAJGlobal 921f5eb0a8 Fixed Deprecated Warning 2023-09-25 07:40:35 -07:00
Jasmin Solanki e8b450d383 [MIG] mail_tracking: Migration to 15.0 2023-09-25 07:40:35 -07:00
Jasmin Solanki 90d158f1a7 [IMP] mail_tracking: black, isort, prettier 2023-09-25 07:40:35 -07:00
houssine 2c35e9bede [PEP8] pre-commit 2023-09-25 07:40:35 -07:00
houssine ec8b389096 [PORT] porting js code to comply with OWL 2023-09-25 07:40:35 -07:00
Jairo Llopis 28a54498fe [FIX] mail_tracking: reduce spammy score
Fix https://github.com/OCA/social/issues/701, following idea from https://kb.mailwizz.com/articles/low-score-in-spamassassin-because-of-the-rand_mktg_header-rule/ to avoid matching the regexp explained in https://bz.apache.org/SpamAssassin/show_bug.cgi?id=7888#c5

@Tecnativa TT29674
2023-09-25 07:40:35 -07:00
simonev 9f5a34ac64 [14.0][MIG] mail_tracking 2023-09-25 07:40:35 -07:00
Areeb Siddiqi 5a096c4724 [IMP] mail_tracking: black, isort, prettier 2023-09-25 07:40:35 -07:00
Alexandre D. Díaz c1499d8025 [FIX] mail_tracking: Store cc 2023-09-25 07:40:35 -07:00
Alexandre D. Díaz 98778b3caa [IMP] mail_tracking: Discuss failed messages: Button and domain 2023-09-25 07:40:35 -07:00
nmadhoc 6c742b521f [FIX] mail_tracking
When a user try to resend message gets an error stating that it's only allowed for users who belong to the Administration/Settings group
2023-09-25 07:40:35 -07:00
Wolfgang Pichler 8c51374370 [FIX] re.search will return None when nothing found. So we have to check for this 2023-09-25 07:40:35 -07:00
Alexandre Díaz 104ea90bd3 [IMP] mail_tracking: Ignore catchall 2023-09-25 07:40:35 -07:00
Alexandre Díaz 7a099500e4 [IMP] mail_tracking: Store To recipients and omit aliases 2023-09-25 07:40:35 -07:00
Alexandre Díaz 25a6f0ac22 [FIX] mail_tracking: Changed injection method for 'failed_message_ids' field
Before this commit, some methods with views crashes trying to
process 'failed_message_ids' field.
After this commit the 'failed_message_ids' field description
is properly generated.
2023-09-25 07:40:35 -07:00
Alexandre Díaz 4acc95a031 [MIG] mail_tracking: Migration to 13.0 2023-09-25 07:40:35 -07:00
Alexandre Díaz 6b980a571d [IMP] mail_tracking: black, isort 2023-09-25 07:40:35 -07:00
Alexandre Díaz 107bf807bc [FIX] mail_tracking: Refresh thread widget when sets a message as reviewed
Previous this commit, failed messages widget data wasn't updated properly when you
set as reviewed/retry the last message displayed.

This commit resolve the problem and improves the "set as reviewed" action to avoid
multi-user inconsistencies (don't toggle the value).
2023-09-25 07:40:35 -07:00
Alexandre Díaz 8100ec4899 [IMP] mail_tracking: Failed Messages to 12.0 2023-09-25 07:40:35 -07:00
Alexandre Díaz 17f8d93879 [IMP] mail_tracking: translations 2023-09-25 07:40:35 -07:00
Alexandre Díaz ce8f865e03 [IMP] mail_tracking: Convert 'partner_trackings' to dict 2023-09-25 07:40:35 -07:00
Alexandre Díaz 8ef81f2e01 [IMP] mail_tracking: Cc name & check if mail is Cc 2023-09-25 07:40:35 -07:00
David 8a52d2a98a [IMP] mail_tracking: mail.thread filter for tracking errors
- Any model inheriting from mail.thread will have a filter available to
obtain records with errors in their messages trackings.
- The messages can be marked as done to avoid false positives when the
issues are solved.
2023-09-25 07:40:35 -07:00
Alexandre Díaz 40c31292ac [FIX] mail_tracking: Repeated suggested cc emails 2023-09-25 07:40:35 -07:00
Alexandre Díaz 592b9d12ca [MIG] mail_tracking: Adapt Cc to 12.0 2023-09-25 07:40:35 -07:00
Alexandre Díaz 270697712c [IMP] mail_tracking: Cc 2023-09-25 07:40:35 -07:00
Pedro M. Baeza d324aa1f04 [FIX] mail_tracking: Don't call write inside other write
Or infinite recursions will happen on other `write` overwrites, like the one that happens
on `mass_mailing_partner`.
2023-09-25 07:40:35 -07:00
ernesto d6d4142cd9 [MIG] mail_tracking: Migration to 12.0 2023-09-25 07:40:35 -07:00
David Vidal c2eda72bc0 [IMP] mail_tracking: email score performance (#299) 2023-09-25 07:40:35 -07:00
David 715618fcb0 [MIG] mail_tracking: Migration to 11.0 2023-09-25 07:40:35 -07:00
eLBati 210de915b1 IMP mail_tracking performances
On our server,
queries based on "mail_tracking_event"."tracking_email_id" improved from 501,924 ms to 1,840 ms
queries based on "mail_tracking_email"."mail_message_id" improved from 167,436 ms to 3,223 ms

The last ones are run several times when a thread has many messages
2023-09-25 07:40:35 -07:00
Antonio Espinosa 5987c3f903 [FIX] mail_tracking: bugfixes (#199)
* [FIX] Only one data-odoo-tracking-email tag in each email
* [FIX] Get status even in multicompany instances
2023-09-25 07:40:35 -07:00
Pedro M. Baeza a564869578 [FIX] mail_tracking: Obtain outgoing server with sudo
As regular users can't access this object.
2023-09-25 07:40:35 -07:00
Antonio Espinosa 7c9aabebfd [9.0][FIX][mail_tracking] Control exception when mail_message was removed (#132) 2023-09-25 07:40:35 -07:00
Antonio Espinosa 12b34c5347 [8.0][FIX][mail_tracking] Use event recipient address to find partners and contacts to bounce (#133) 2023-09-25 07:40:35 -07:00
Antonio Espinosa fc64f5ce1d Add access to portal/public user to his own email trackings 2023-09-25 07:40:35 -07:00
Antonio Espinosa 4dce9c0104 [IMP] mail_tracking: Allow to define a custom mail_tracking base url 2023-09-25 07:40:35 -07:00
Antonio Espinosa d9e6e655dc [IMP] mail_tracking performance and bounce process (#103) 2023-09-25 07:40:35 -07:00