class MailHandler implements MailHandlerInterface (View source)

Provides a class for handling assembly and dispatch of contact mail messages.

Traits

Wrapper methods for \Drupal\Core\StringTranslation\TranslationInterface.

Properties

protected TranslationInterface $stringTranslation

The string translation service.

from  StringTranslationTrait
protected LanguageManagerInterface $languageManager

Language manager service.

protected LoggerChannelInterface $logger

Logger service.

protected MailManagerInterface $mailManager

Mail manager service.

protected EntityStorageInterface $userStorage

The user entity storage handler.

Methods

t(string $string, array $args = [], array $options = [])

Translates a string to the current language or to a given language.

formatPlural($count, $singular, $plural, array $args = [], array $options = [])

Formats a string containing a count of items.

getNumberOfPlurals($langcode = NULL)

Returns the number of plurals supported by a given language.

getStringTranslation()

Gets the string translation service.

$this
setStringTranslation(TranslationInterface $translation)

Sets the string translation service to use.

__construct(MailManagerInterface $mail_manager, LanguageManagerInterface $language_manager, LoggerInterface $logger, TranslationInterface $string_translation, EntityTypeManagerInterface $entity_type_manager)

Constructs a new \Drupal\contact\MailHandler object.

sendMailMessages(MessageInterface $message, AccountInterface $sender)

Sends mail messages as appropriate for a given Message form submission.

Details

protected TranslatableMarkup t(string $string, array $args = [], array $options = [])

Translates a string to the current language or to a given language.

See \Drupal\Core\StringTranslation\TranslatableMarkup::__construct() for important security information and usage guidelines.

In order for strings to be localized, make them available in one of the ways supported by the

Parameters

string $string

A string containing the English text to translate.

array $args

(optional) An associative array of replacements to make after translation. Based on the first character of the key, the value is escaped and/or themed. See \Drupal\Component\Render\FormattableMarkup::placeholderFormat() for details.

array $options

(optional) An associative array of additional options, with the following elements:

  • 'langcode' (defaults to the current language): A language code, to translate to a language other than what is used to display the page.
  • 'context' (defaults to the empty context): The context the source string belongs to. See the @link i18n Internationalization topic @endlink for more information about string contexts.

Return Value

TranslatableMarkup

An object that, when cast to a string, returns the translated string.

See also

FormattableMarkup::placeholderFormat
TranslatableMarkup::__construct

protected formatPlural($count, $singular, $plural, array $args = [], array $options = [])

Formats a string containing a count of items.

Parameters

$count
$singular
$plural
array $args
array $options

See also

TranslationInterface::formatPlural

protected getNumberOfPlurals($langcode = NULL)

Returns the number of plurals supported by a given language.

Parameters

$langcode

See also

PluralFormulaInterface::getNumberOfPlurals

protected TranslationInterface getStringTranslation()

Gets the string translation service.

Return Value

TranslationInterface

The string translation service.

$this setStringTranslation(TranslationInterface $translation)

Sets the string translation service to use.

Parameters

TranslationInterface $translation

The string translation service.

Return Value

$this

__construct(MailManagerInterface $mail_manager, LanguageManagerInterface $language_manager, LoggerInterface $logger, TranslationInterface $string_translation, EntityTypeManagerInterface $entity_type_manager)

Constructs a new \Drupal\contact\MailHandler object.

Parameters

MailManagerInterface $mail_manager

Mail manager service.

LanguageManagerInterface $language_manager

Language manager service.

LoggerInterface $logger

A logger instance.

TranslationInterface $string_translation

String translation service.

EntityTypeManagerInterface $entity_type_manager

The entity type manager.

sendMailMessages(MessageInterface $message, AccountInterface $sender)

Sends mail messages as appropriate for a given Message form submission.

Can potentially send up to three messages as follows:

  • To the configured recipient;
  • Auto-reply to the sender; and
  • Carbon copy to the sender.

Parameters

MessageInterface $message

Submitted message entity.

AccountInterface $sender

User that submitted the message entity form.

Exceptions

MailHandlerException