Skip to main content
This is a pre-production deployment of Warehouse. Changes made here affect the production instance of PyPI (
Help us improve Python packaging - Donate today!

This package aims to provide language dependent character set for sending emails from Plone site.

Project Description


Character set of outgoing mail from Plone is defined in a portal property name “email_charset” and this charset is globally used in the Plone site. This is fine with monolingual site, however in multilingual site, there are cases you want to send mails with differernt character sets for different languages. This package provides this function to Plone-4.x.

This does not have backword compatibility for Plone-3.x, so for those who wants to use this for Plone-3.x, use version 0.2.0.

There are five main default cases for sending e-mails from Plone site:

  1. When new user registers to the site with password setting disabled.
  2. When a user forgets password and plone sends the user the guide to reset it.
  3. When user contacts administrator form contact form.
  4. When content rules trigers sending mail, ex) when adding content to a certain folder.

Tests are only done with character set of iso-2022-jp for Japanese language and utf-8 for other languages.


If you are using zc.buildout and the plone.recipe.zope2instance recipe to manage your project, you can do this:

  • Add collective.langMailHost to the list of eggs to install, e.g.:

    eggs =
  • Tell the plone.recipe.zope2instance recipe to install a ZCML slug:

    recipe = plone.recipe.zope2instance
    zcml =
  • Re-run buildout, e.g. with:

    $ ./bin/buildout

Setting language and character set

Once you installed this package from quickinstaller, go to ZMI of the plone site. Within portal_properties, there is mailhost_properties where you can set two propeties.

  • lang_charset
    ‘ja|iso-2022-jp’ is default value. This means for Japanese language (‘ja’), use character set ‘iso-2022-jp’. To add other language and character set pair, add it line by line. Remenber to follow this syntax: language|charset
  • is_member_lang_effective
    If this option is selected, logged in member receives e-mail with the character set of member’s choice of languages.

Script example for your own code

Here is an example how to use ILangCharset interface:

>>> from collective.langMailHost.interfaces import ILangCharset
>>> charset = ILangCharset(portal).effective_charset() or portal.getProperty('email_charset', 'UTF-8')


0.3.5 (2011-03-04)

  • metadata.xml added.
  • Test now pass with Plone-4.0.4.

0.3.3 (2010-07-08)

  • Test added for Contact, Register and Password reset mailing in two different languages.

0.3.2 (2010-06-30)

  • contact-info’s subject character problem fixed with safe_unicode impolementation.

0.3.1 (2010-06-16)

  • Updated for Plone-4.x.
  • This does not work with Plone-3.x. If you want to use with Plone-3.x, use version 0.2.0.
  • Tested with Plone-4.0b4.

0.2.0 (2009-09-01)

  • Overrode secureSend method from SecureMailHost class.

0.1.0 (2009-08-31)

  • Initial release
  • Tested with Plone-3.3
Release History

Release History

This version
History Node


History Node


History Node


History Node


History Node


History Node


History Node


Download Files

Download Files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

File Name & Checksum SHA256 Checksum Help Version File Type Upload Date
collective.langMailHost-0.3.5.tar.gz (17.8 kB) Copy SHA256 Checksum SHA256 Source Mar 3, 2011

Supported By

WebFaction WebFaction Technical Writing Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Heroku Heroku PaaS Kabu Creative Kabu Creative UX & Design Fastly Fastly CDN DigiCert DigiCert EV Certificate Rackspace Rackspace Cloud Servers DreamHost DreamHost Log Hosting