Mail Template - Styling

by
Odoo
v 10.0 v 11.0 v 12.0 Third Party 268
Download for v 12.0 Deploy on Odoo.sh
Availability
Odoo Online
Odoo.sh
On Premise
Odoo Apps Dependencies Discuss (mail)
Lines of code 166
Technical Name mail_template_styling
LicenseLGPL-3
Websitehttps://www.novacode.nl
Versions 11.0 10.0 12.0
You bought this module and need support? Click here!
Availability
Odoo Online
Odoo.sh
On Premise
Odoo Apps Dependencies Discuss (mail)
Lines of code 166
Technical Name mail_template_styling
LicenseLGPL-3
Websitehttps://www.novacode.nl
Versions 11.0 10.0 12.0

Mail Template Styling

Universally manage and style mail templates sent from Odoo

Features:
  • Manage and assign stylesheets (CSS) to Mail Templates, all within Odoo.
  • Optionally strip the original inline-styling during rendering. This doesn't alter the Mail Template body, it's just post-processing during rendering-time. So original Odoo and 3rd party templates stay unchanged.
  • Optionally print the Mail Template ID below the actual message.

Manage stylesheets (CSS)

Menu: Settings / Technical / Email / Template Styles

List stylesheets

Edit stylesheet

Edit mail template with styling

Installation notes

A bit of system adminsitration is required

Python dependency: premailer

Required to transform the stylesheet/CSS into inline style attributes into the mail body HTML.

Install on command-line with: pip(3) install premailer

Please log in to comment on this module

  • The author can leave a single reply to each comment.
  • This section is meant to ask simple questions or leave a rating. Every report of a problem experienced while using the module should be addressed to the author directly (refer to the following point).
  • If you want to start a discussion with the author, please use the developer contact information. They can usually be found in the description.
Please choose a rating from 1 to 5 for this module.
There are no ratings yet!
by
Bob Leers
on 1/21/20, 10:19 AM Author

@Christian Mahlich are you sure the premailer (Python package) is installed on Odoo.sh ?


by
Bob Leers
on 1/21/20, 9:07 AM Author

Please could you submit you error report on https://github.com/novacode-nl/odoo-addons So we can easily followup.


Error installing
by
Christian Mahlich
on 1/21/20, 8:35 AM

Hey, I tried to install the module on Odoo.sh but received following error: Error: Odoo Server Error Traceback (most recent call last): File "/home/odoo/src/odoo/odoo/http.py", line 656, in _handle_exception return super(JsonRequest, self)._handle_exception(exception) File "/home/odoo/src/odoo/odoo/http.py", line 314, in _handle_exception raise pycompat.reraise(type(exception), exception, sys.exc_info()[2]) File "/home/odoo/src/odoo/odoo/tools/pycompat.py", line 87, in reraise raise value File "/home/odoo/src/odoo/odoo/http.py", line 698, in dispatch result = self._call_function(**self.params) File "/home/odoo/src/odoo/odoo/http.py", line 346, in _call_function return checked_call(self.db, *args, **kwargs) File "/home/odoo/src/odoo/odoo/service/model.py", line 97, in wrapper return f(dbname, *args, **kwargs) File "/home/odoo/src/odoo/odoo/http.py", line 339, in checked_call result = self.endpoint(*a, **kw) File "/home/odoo/src/odoo/odoo/http.py", line 941, in __call__ return self.method(*args, **kw) File "/home/odoo/src/odoo/odoo/http.py", line 519, in response_wrap response = f(*args, **kw) File "/home/odoo/src/odoo/addons/web/controllers/main.py", line 966, in call_button action = self._call_kw(model, method, args, {}) File "/home/odoo/src/odoo/addons/web/controllers/main.py", line 954, in _call_kw return call_kw(request.env[model], method, args, kwargs) File "/home/odoo/src/odoo/odoo/api.py", line 759, in call_kw return _call_kw_multi(method, model, args, kwargs) File "/home/odoo/src/odoo/odoo/api.py", line 746, in _call_kw_multi result = method(recs, *args, **kwargs) File "", line 2, in button_immediate_install File "/home/odoo/src/odoo/odoo/addons/base/models/ir_module.py", line 74, in check_and_log return method(self, *args, **kwargs) File "/home/odoo/src/odoo/odoo/addons/base/models/ir_module.py", line 445, in button_immediate_install return self._button_immediate_function(type(self).button_install) File "/home/odoo/src/odoo/odoo/addons/base/models/ir_module.py", line 561, in _button_immediate_function modules.registry.Registry.new(self._cr.dbname, update_module=True) File "/home/odoo/src/odoo/odoo/modules/registry.py", line 86, in new odoo.modules.load_modules(registry._db, force_demo, status, update_module) File "/home/odoo/src/odoo/odoo/modules/loading.py", line 421, in load_modules loaded_modules, update_module, models_to_check) File "/home/odoo/src/odoo/odoo/modules/loading.py", line 313, in load_marked_modules perform_checks=perform_checks, models_to_check=models_to_check File "/home/odoo/src/odoo/odoo/modules/loading.py", line 222, in load_module_graph load_data(cr, idref, mode, kind='data', package=package, report=report) File "/home/odoo/src/odoo/odoo/modules/loading.py", line 68, in load_data tools.convert_file(cr, package.name, filename, idref, mode, noupdate, kind, report) File "/home/odoo/src/odoo/odoo/tools/convert.py", line 802, in convert_file convert_xml_import(cr, module, fp, idref, mode, noupdate, report) File "/home/odoo/src/odoo/odoo/tools/convert.py", line 852, in convert_xml_import relaxng.assert_(doc) File "src/lxml/etree.pyx", line 3542, in lxml.etree._Validator.assert_ AssertionError: Element odoo has extra content: data, line 7