Install

Works with Drupal: 7.x

Using Composer to manage Drupal site dependencies

Downloads

Download tar.gz 9.69 KB
MD5: 05824ac8f35f2178bb3b8702d97015e8
SHA-1: 16c825c6cdb69ac70283daba37098c688f27fa35
SHA-256: 50ccefc9a38fc70d2459f4f8fc105be4fe1aa6b0facc8c974ed32318c6de0f21
Download zip 11.98 KB
MD5: 1216ad1089d84cb82edbbaa4878d7167
SHA-1: e8f4feead53bf4ee924b9370edbf04b0de0a2113
SHA-256: 229a6c10022cae0001ccc4cf2d3778e697ef03a6b65ec92c11f31a2abb0fa44c

Release notes

Fixes:
#1120740: array_flip() warning when adding module setting
Mail System

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

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: 12 Apr 2011 at 23:56 UTC
Last updated: 12 Apr 2011 at 23:58 UTC
Bug fixes
Unsupported

Other releases