You are here

README.txt in Mail System 7

                                 [1]Mail System

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

Administrative UI

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

Used by;

     * [4]HTML Mail
     * [5]Postmark

Developers API

   A module example with a [6]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/dru
          pal_mail_system/7

   MailSystemInterface API documentation:
          http://api.drupal.org/api/drupal/includes--mail.inc/interface/Ma
          ilSystemInterface/7

   Creating HTML formatted mails in Drupal 7
          http://drupal.org/node/900794

References

   1. http://drupal.org/project/mailsystem
   2. http://api.drupal.org/api/drupal/includes--mail.inc/function/drupal_mail_system/7
   3. http://drupal.org/node/1089888
   4. http://drupal.org/project/htmlmail
   5. http://drupal.org/project/postmark
   6. http://api.drupal.org/api/drupal/includes--mail.inc/interface/MailSystemInterface/7

File

README.txt
View source
  1. [1]Mail System
  2. Provides an Administrative UI and Developers API for safely updating
  3. the [2]mail_system configuration variable.
  4. Administrative UI
  5. The administrative interface is at admin/config/system/mailsystem. A
  6. [3]screenshot is available.
  7. Used by;
  8. * [4]HTML Mail
  9. * [5]Postmark
  10. Developers API
  11. A module example with a [6]MailSystemInterface implementation called
  12. ExampleMailSystem should add the following in its example.install file:
  13. /**
  14. * Implements hook_enable().
  15. */
  16. function example_enable() {
  17. mailsystem_set(array('example' => 'ExampleMailSystem'));
  18. }
  19. /**
  20. * Implements hook_disable().
  21. */
  22. function example_disable() {
  23. mailsystem_clear(array('example' => 'ExampleMailSystem'));
  24. }
  25. The above settings allow mail sent by example to use ExampleMailSystem.
  26. To make ExampleMailSystem the site-wide default for sending mail:
  27. mailsystem_set(array(mailsystem_default_id() => 'ExampleMailSystem'));
  28. To restore the default mail system:
  29. mailsystem_set(array(mailsystem_default_id() => mailsystem_default_value()));
  30. Or simply:
  31. mailsystem_set(mailsystem_defaults());
  32. If module example relies on dependency foo and its FooMailSystem class,
  33. then the example.install code should like like this:
  34. /**
  35. * Implements hook_enable().
  36. */
  37. function example_enable() {
  38. mailsystem_set(array('example' => 'FooMailSystem'));
  39. }
  40. /**
  41. * Implements hook_disable().
  42. */
  43. function example_disable() {
  44. mailsystem_clear(array('example' => ''));
  45. }
  46. If module example only wants to use FooMailSystem when sending emails
  47. with a key of examail, then the example.install code should look like
  48. this:
  49. /**
  50. * Implements hook_enable().
  51. */
  52. function example_enable() {
  53. mailsystem_set(array('example_examail' => 'FooMailSystem'));
  54. }
  55. /**
  56. * Implements hook_disable().
  57. */
  58. function example_disable() {
  59. mailsystem_clear(array('example_examail' => ''));
  60. }
  61. References
  62. drupal_mail_system() API documentation:
  63. http://api.drupal.org/api/drupal/includes--mail.inc/function/dru
  64. pal_mail_system/7
  65. MailSystemInterface API documentation:
  66. http://api.drupal.org/api/drupal/includes--mail.inc/interface/Ma
  67. ilSystemInterface/7
  68. Creating HTML formatted mails in Drupal 7
  69. http://drupal.org/node/900794
  70. References
  71. 1. http://drupal.org/project/mailsystem
  72. 2. http://api.drupal.org/api/drupal/includes--mail.inc/function/drupal_mail_system/7
  73. 3. http://drupal.org/node/1089888
  74. 4. http://drupal.org/project/htmlmail
  75. 5. http://drupal.org/project/postmark
  76. 6. http://api.drupal.org/api/drupal/includes--mail.inc/interface/MailSystemInterface/7