Bỏ qua để đến Nội dung
Menu
Câu hỏi này đã bị gắn cờ
1 Trả lời
3393 Lượt xem

I would like to set email formatting to plain text.

This is because when Odoo sends emails they are in html and when someone replies to that email with his huge footer it creates big mess inside mail thread. If we could set mail type to plain text there should be less possibily for too big footers.

How do I do this? Preferably with custom module.

Ảnh đại diện
Huỷ bỏ
Câu trả lời hay nhất

Hi Marcus,


Yes, this can be done with a custom module.


You can override the email sending method and convert the HTML body to plain text before it's sent. One way is to strip out HTML tags from body_html like this:



from odoo import models

import re


class MailMail(models.Model):

    _inherit = 'mail.mail'


    def _send(self, auto_commit=False, raise_exception=False):

        if self.body_html:

            self.body_html = re.sub('<[^<]+?>', '', self.body_html)

        return super()._send(auto_commit=auto_commit, raise_exception=raise_exception)



This will force outgoing emails to plain text. It's basic, but should reduce clutter from HTML replies and footers.



Ảnh đại diện
Huỷ bỏ
Bài viết liên quan Trả lời Lượt xem Hoạt động
1
thg 12 22
4979
0
thg 8 19
3859
1
thg 8 19
3464
0
thg 2 24
1818
0
thg 4 21
2048