abstract class EmailActionBase in Ubercart 8.4
Provides a base class for RulesActions that send email.
Hierarchy
- class \Drupal\Component\Plugin\PluginBase implements DerivativeInspectionInterface, PluginInspectionInterface
- class \Drupal\Component\Plugin\ContextAwarePluginBase implements ContextAwarePluginInterface
- class \Drupal\Core\Plugin\ContextAwarePluginBase implements CacheableDependencyInterface, ContextAwarePluginInterface uses DependencySerializationTrait, StringTranslationTrait, TypedDataTrait
- class \Drupal\rules\Core\RulesActionBase implements RulesActionInterface uses ContextProviderTrait, ConfigurationAccessControlTrait, ExecutablePluginTrait
- class \Drupal\uc_order\Plugin\RulesAction\EmailActionBase implements ContainerFactoryPluginInterface
- class \Drupal\rules\Core\RulesActionBase implements RulesActionInterface uses ContextProviderTrait, ConfigurationAccessControlTrait, ExecutablePluginTrait
- class \Drupal\Core\Plugin\ContextAwarePluginBase implements CacheableDependencyInterface, ContextAwarePluginInterface uses DependencySerializationTrait, StringTranslationTrait, TypedDataTrait
- class \Drupal\Component\Plugin\ContextAwarePluginBase implements ContextAwarePluginInterface
Expanded class hierarchy of EmailActionBase
3 files declare their use of EmailActionBase
- SendOrderEmail.php in uc_file/
src/ Plugin/ RulesAction/ SendOrderEmail.php - SendOrderEmail.php in uc_role/
src/ Plugin/ RulesAction/ SendOrderEmail.php - SendUserEmail.php in uc_role/
src/ Plugin/ RulesAction/ SendUserEmail.php
File
- uc_order/
src/ Plugin/ RulesAction/ EmailActionBase.php, line 16
Namespace
Drupal\uc_order\Plugin\RulesActionView source
abstract class EmailActionBase extends RulesActionBase implements ContainerFactoryPluginInterface {
/**
* The current user.
*
* @var \Drupal\Core\Session\AccountInterface
*/
protected $currentUser;
/**
* The token service.
*
* @var \Drupal\Core\Utility\Token
*/
protected $token;
/**
* The logger.factory service.
*
* @var \Drupal\Core\Logger\LoggerChannelFactoryInterface
*/
protected $logger;
/**
* The mail manager service.
*
* @var \Drupal\Core\Mail\MailManagerInterface
*/
protected $mailManager;
/**
* Constructs the EmailActionBase object.
*
* @param array $configuration
* A configuration array containing information about the plugin instance.
* @param string $plugin_id
* The plugin ID for the plugin instance.
* @param mixed $plugin_definition
* The plugin implementation definition.
* @param \Drupal\Core\Session\AccountInterface $current_user
* The current user.
* @param \Drupal\Core\Utility\Token $token
* The token service.
* @param \Drupal\Core\Logger\LoggerChannelFactoryInterface $logger
* The logger.factory service.
* @param \Drupal\Core\Mail\MailManagerInterface $mail_manager
* The mail manager service.
*/
public function __construct(array $configuration, $plugin_id, $plugin_definition, AccountInterface $current_user, Token $token, LoggerChannelFactoryInterface $logger, MailManagerInterface $mail_manager) {
parent::__construct($configuration, $plugin_id, $plugin_definition);
$this->currentUser = $current_user;
$this->token = $token;
$this->logger = $logger;
$this->mailManager = $mail_manager;
}
/**
* {@inheritdoc}
*/
public static function create(ContainerInterface $container, array $configuration, $plugin_id, $plugin_definition) {
return new static($configuration, $plugin_id, $plugin_definition, $container
->get('current_user'), $container
->get('token'), $container
->get('logger.factory'), $container
->get('plugin.manager.mail'));
}
/**
* Options list callback for message formats.
*/
public function messageFormats() {
$options = [];
$formats = filter_formats($this->currentUser);
foreach ($formats as $format) {
$options[$format
->id()] = $format
->label();
}
return $options;
}
/**
* Option callback for invoice options.
*/
public function invoiceOptions() {
return [
'print' => $this
->t('Show the business header and shipping method.'),
'admin-mail' => $this
->t('Show all of the above plus the help text, email text, and store footer.'),
'checkout-mail' => $this
->t('Show all of the above plus the "thank you" message.'),
];
}
/**
* Returns a list of options for a template select box.
*/
public function templateOptions($custom = FALSE) {
$list = $this
->templateList();
$templates = array_combine($list, $list);
if ($custom) {
$templates[0] = $this
->t('Custom template');
}
return $templates;
}
/**
* Returns an array of invoice templates found in ubercart/uc_order/templates.
*/
protected function templateList() {
$invoke = \Drupal::moduleHandler()
->invokeAll('uc_invoice_templates');
$templates = array_combine($invoke, $invoke);
// Sort the template names alphabetically.
sort($templates);
return [
'admin',
'customer',
] + $templates;
}
}
Members
Name | Modifiers | Type | Description | Overrides |
---|---|---|---|---|
ConfigurationAccessControlTrait:: |
public | function | Checks configuration permission. | |
ContextAwarePluginBase:: |
protected | property | The data objects representing the context of this plugin. | |
ContextAwarePluginBase:: |
private | property | Data objects representing the contexts passed in the plugin configuration. | |
ContextAwarePluginBase:: |
protected | function | Wraps the context handler. | |
ContextAwarePluginBase:: |
protected | function |
Overrides ContextAwarePluginBase:: |
|
ContextAwarePluginBase:: |
public | function |
The cache contexts associated with this object. Overrides CacheableDependencyInterface:: |
9 |
ContextAwarePluginBase:: |
public | function |
The maximum age for which this object may be cached. Overrides CacheableDependencyInterface:: |
7 |
ContextAwarePluginBase:: |
public | function |
The cache tags associated with this object. Overrides CacheableDependencyInterface:: |
4 |
ContextAwarePluginBase:: |
public | function |
This code is identical to the Component in order to pick up a different
Context class. Overrides ContextAwarePluginBase:: |
|
ContextAwarePluginBase:: |
public | function |
Overrides ContextAwarePluginBase:: |
|
ContextAwarePluginBase:: |
public | function |
Overrides ContextAwarePluginBase:: |
|
ContextAwarePluginBase:: |
public | function |
Gets a mapping of the expected assignment names to their context names. Overrides ContextAwarePluginInterface:: |
|
ContextAwarePluginBase:: |
public | function |
Gets the defined contexts. Overrides ContextAwarePluginInterface:: |
|
ContextAwarePluginBase:: |
public | function |
Gets the values for all defined contexts. Overrides ContextAwarePluginInterface:: |
|
ContextAwarePluginBase:: |
public | function |
Set a context on this plugin. Overrides ContextAwarePluginBase:: |
|
ContextAwarePluginBase:: |
public | function |
Sets a mapping of the expected assignment names to their context names. Overrides ContextAwarePluginInterface:: |
|
ContextAwarePluginBase:: |
public | function |
Sets the value for a defined context. Overrides ContextAwarePluginBase:: |
|
ContextAwarePluginBase:: |
public | function |
Validates the set values for the defined contexts. Overrides ContextAwarePluginInterface:: |
|
ContextAwarePluginBase:: |
public | function | Implements magic __get() method. | |
ContextProviderTrait:: |
protected | property | The data objects that are provided by this plugin. | |
ContextProviderTrait:: |
public | function | ||
ContextProviderTrait:: |
public | function | ||
ContextProviderTrait:: |
public | function | ||
ContextProviderTrait:: |
public | function | ||
DependencySerializationTrait:: |
protected | property | An array of entity type IDs keyed by the property name of their storages. | |
DependencySerializationTrait:: |
protected | property | An array of service IDs keyed by property name used for serialization. | |
DependencySerializationTrait:: |
public | function | 1 | |
DependencySerializationTrait:: |
public | function | 2 | |
EmailActionBase:: |
protected | property | The current user. | |
EmailActionBase:: |
protected | property | The logger.factory service. | |
EmailActionBase:: |
protected | property | The mail manager service. | |
EmailActionBase:: |
protected | property | The token service. | |
EmailActionBase:: |
public static | function |
Creates an instance of the plugin. Overrides ContainerFactoryPluginInterface:: |
|
EmailActionBase:: |
public | function | Option callback for invoice options. | |
EmailActionBase:: |
public | function | Options list callback for message formats. | |
EmailActionBase:: |
protected | function | Returns an array of invoice templates found in ubercart/uc_order/templates. | |
EmailActionBase:: |
public | function | Returns a list of options for a template select box. | |
EmailActionBase:: |
public | function |
Constructs the EmailActionBase object. Overrides ContextAwarePluginBase:: |
|
ExecutablePluginTrait:: |
protected | function | Get the translated label from the plugin definition. | |
ExecutablePluginTrait:: |
public | function | Get the translated summary from the label annotation. | 4 |
PluginBase:: |
protected | property | The plugin implementation definition. | 1 |
PluginBase:: |
protected | property | The plugin_id. | |
PluginBase:: |
constant | A string which is used to separate base plugin IDs from the derivative ID. | ||
PluginBase:: |
public | function |
Gets the base_plugin_id of the plugin instance. Overrides DerivativeInspectionInterface:: |
|
PluginBase:: |
public | function |
Gets the derivative_id of the plugin instance. Overrides DerivativeInspectionInterface:: |
|
PluginBase:: |
public | function |
Gets the definition of the plugin implementation. Overrides PluginInspectionInterface:: |
3 |
PluginBase:: |
public | function |
Gets the plugin_id of the plugin instance. Overrides PluginInspectionInterface:: |
|
PluginBase:: |
public | function | Determines if the plugin is configurable. | |
RulesActionBase:: |
protected | property |
The plugin configuration. Overrides PluginBase:: |
|
RulesActionBase:: |
public | function |
Checks object access. Overrides RulesActionInterface:: |
|
RulesActionBase:: |
public | function |
Asserts additional metadata for the selected data. Overrides ContextAwarePluginInterface:: |
|
RulesActionBase:: |
public | function |
Returns a list of context names that should be auto-saved after execution. Overrides RulesActionInterface:: |
14 |
RulesActionBase:: |
public | function | @todo this documentation is not actually inherited from any interface. Do we need this empty implementation? | |
RulesActionBase:: |
public | function | @todo this documentation is not actually inherited from any interface. Do we need this empty implementation? | |
RulesActionBase:: |
public | function |
Executes the plugin. Overrides ExecutableInterface:: |
2 |
RulesActionBase:: |
public | function | @todo this documentation is not actually inherited from any interface. Do we need this empty implementation? | |
RulesActionBase:: |
public | function | @todo this documentation is not actually inherited from any interface. | |
RulesActionBase:: |
public | function |
Gets the value for a defined context. Overrides ContextAwarePluginBase:: |
|
RulesActionBase:: |
public | function |
Refines used and provided context definitions based upon context values. Overrides ContextAwarePluginInterface:: |
5 |
RulesActionBase:: |
public | function | @todo this documentation is not actually inherited from any interface. | |
StringTranslationTrait:: |
protected | property | The string translation service. | 1 |
StringTranslationTrait:: |
protected | function | Formats a string containing a count of items. | |
StringTranslationTrait:: |
protected | function | Returns the number of plurals supported by a given language. | |
StringTranslationTrait:: |
protected | function | Gets the string translation service. | |
StringTranslationTrait:: |
public | function | Sets the string translation service to use. | 2 |
StringTranslationTrait:: |
protected | function | Translates a string to the current language or to a given language. | |
TypedDataTrait:: |
protected | property | The typed data manager used for creating the data types. | |
TypedDataTrait:: |
public | function | Gets the typed data manager. | 2 |
TypedDataTrait:: |
public | function | Sets the typed data manager. | 2 |