Downloads

Download tar.gz 15.25 KB
MD5: a3c608763ab95a00d425888942fa2208
SHA-1: e8d625a7e07fffab1b1028b6c046cc8dd0187b0d
SHA-256: 42db845ef3d6285ae491d819a2f384d3236ea3777eff0a1dc29235dc8a633d88
Download zip 18.47 KB
MD5: e238891028dc257365adf88f80105e96
SHA-1: dc5bc4e5eaf40949072fdc5d6553978ed9aa40fa
SHA-256: db2d29a6125fd21c530b0a14c66ea52a116a874e4c49286ea8366c6125be647e

Release notes

Fixes:
#1135978: Mail System format() method uses drupal_html_to_text() which strips linefeeds from input.
Mail System

Provides an Administrative UI and Developers API for safely updating the mail_system configuration variable.

New Dependency
The 6.x-2.x branch depends on the Autoload module.

The 6.x branch also provides a Drupal-6 backport of the Drupal-7 mail system. For more information, see Creating HTML formatted emails in Drupal 7.

Administrative UI

The administrative interface is at admin/config/system/mailsystem. A screenshot is available.

Used by;

Developers API

A module example with a MailSystemInterface implementation called ExampleMailSystem should add the following in its example.install file:

/**
 * Implements hook_enable().
 */
function example_enable() {
  mailsystem_set(array('example' => 'ExampleMailSystem'));
}
/**
 * Implements hook_disable().
 */
function example_disable() {
  mailsystem_clear(array('example' => 'ExampleMailSystem'));
}

The above settings allow mail sent by example to use ExampleMailSystem. To make ExampleMailSystem the site-wide default for sending mail:

mailsystem_set(array(mailsystem_default_id() => 'ExampleMailSystem'));

To restore the default mail system:

mailsystem_set(array(mailsystem_default_id() => mailsystem_default_value()));

Or simply:

mailsystem_set(mailsystem_defaults());

If module example relies on dependency foo and its FooMailSystem class, then the example.install code should like like this:

/**
 * Implements hook_enable().
 */
function example_enable() {
  mailsystem_set(array('example' => 'FooMailSystem'));
}
/**
 * Implements hook_disable().
 */
function example_disable() {
  mailsystem_clear(array('example' => ''));
}

If module example only wants to use FooMailSystem when sending emails with a key of examail, then the example.install code should look like this:

/**
 * Implements hook_enable().
 */
function example_enable() {
  mailsystem_set(array('example_examail' => 'FooMailSystem'));
}
/**
 * Implements hook_disable().
 */
function example_disable() {
  mailsystem_clear(array('example_examail' => ''));
}

References

drupal_mail_system() API documentation:

http://api.drupal.org/api/drupal/includes--mail.inc/function/drupal_mail...

MailSystemInterface API documentation:

http://api.drupal.org/api/drupal/includes--mail.inc/interface/MailSystem...

Creating HTML formatted mails in Drupal 7

http://drupal.org/node/900794

Created by: pillarsdotnet
Created on: 23 Apr 2011 at 06:44 UTC
Last updated: 23 Apr 2011 at 07:35 UTC
Unsupported

Other releases