Browse Source

[FIX] Only one data-odoo-tracking-email tag in each email

mail_tracking_fix
Antonio Espinosa 7 years ago
parent
commit
3bee337691
  1. 2
      mail_tracking/models/ir_mail_server.py
  2. 6
      mail_tracking/models/mail_tracking_email.py

2
mail_tracking/models/ir_mail_server.py

@ -23,7 +23,7 @@ class IrMailServer(models.Model):
tracking_email_id = False
# https://regex101.com/r/lW4cB1/2
match = re.search(
r'<img [^>]* data-odoo-tracking-email=["\']([0-9]*)["\']', body)
r'<img[^>]*data-odoo-tracking-email=["\']([0-9]*)["\']', body)
if match:
try:
tracking_email_id = int(match.group(1))

6
mail_tracking/models/mail_tracking_email.py

@ -222,8 +222,12 @@ class MailTrackingEmail(models.Model):
self.ensure_one()
tracking_url = self._get_mail_tracking_img()
if tracking_url:
content = email.get('body', '')
content = re.sub(
r'<img[^>]*data-odoo-tracking-email=["\'][0-9]*["\'][^>]*>',
'', content)
body = tools.append_content_to_html(
email.get('body', ''), tracking_url, plaintext=False,
content, tracking_url, plaintext=False,
container_tag='div')
email['body'] = body
return email

Loading…
Cancel
Save