abstract class TokenSettingTypeBase in UI Patterns Settings 8
Same name and namespace in other branches
- 8.2 src/Plugin/TokenSettingTypeBase.php \Drupal\ui_patterns_settings\Plugin\TokenSettingTypeBase
Hierarchy
- class \Drupal\Component\Plugin\PluginBase implements DerivativeInspectionInterface, PluginInspectionInterface
- class \Drupal\Core\Plugin\PluginBase uses DependencySerializationTrait, MessengerTrait, StringTranslationTrait
- class \Drupal\ui_patterns_settings\Plugin\PatternSettingTypeBase implements ConfigurableInterface, PatternSettingTypeInterface
- class \Drupal\ui_patterns_settings\Plugin\TokenSettingTypeBase implements ContainerFactoryPluginInterface
- class \Drupal\ui_patterns_settings\Plugin\PatternSettingTypeBase implements ConfigurableInterface, PatternSettingTypeInterface
- class \Drupal\Core\Plugin\PluginBase uses DependencySerializationTrait, MessengerTrait, StringTranslationTrait
Expanded class hierarchy of TokenSettingTypeBase
2 files declare their use of TokenSettingTypeBase
- TokenSettingType.php in src/
Plugin/ UiPatterns/ SettingType/ TokenSettingType.php - UrlSettingType.php in src/
Plugin/ UiPatterns/ SettingType/ UrlSettingType.php
File
- src/
Plugin/ TokenSettingTypeBase.php, line 12
Namespace
Drupal\ui_patterns_settings\PluginView source
abstract class TokenSettingTypeBase extends PatternSettingTypeBase implements ContainerFactoryPluginInterface {
/**
* The token service.
*
* @var \Drupal\Core\Utility\Token
*/
protected $tokenService;
/**
* {@inheritdoc}
*/
public static function create(ContainerInterface $container, array $configuration, $plugin_id, $plugin_definition) {
$plugin = parent::create($container, $configuration, $plugin_id, $plugin_definition);
$plugin
->setTokenService($container
->get('token'));
return $plugin;
}
/**
* {@inheritdoc}
*/
public function settingsForm(array $form, $value, PatternDefinitionSetting $def) {
$def = $this
->getPatternSettingDefinition();
$value = $this
->getValue($value);
$description = $def
->getDescription() != NULL ? $def
->getDescription() : "";
$content_entity_types = [];
$entity_type_definations = \Drupal::entityTypeManager()
->getDefinitions();
/* @var $definition EntityTypeInterface */
foreach ($entity_type_definations as $definition) {
if ($definition instanceof ContentEntityType) {
$content_entity_types[] = $definition
->id();
}
}
$form[$def
->getName()] = [
'#type' => 'container',
];
$form[$def
->getName()]['input'] = [
'#type' => 'textfield',
'#title' => $def
->getLabel(),
'#description' => $description,
'#default_value' => $this
->getValue($value),
'#required' => $def
->getRequired(),
];
$form[$def
->getName()]['token'] = [
'#theme' => 'token_tree_link',
'#token_types' => $content_entity_types,
'#show_restricted' => TRUE,
'#default_value' => $value,
'#weight' => 90,
];
return $form;
}
/**
* {@inheritdoc}
*/
public function settingsPreprocess($value, array $context, PatternDefinitionSetting $def) {
$return_value = '';
if (isset($value['input'])) {
$value = $value['input'];
}
if (is_string($value)) {
$token_data = [];
/** @var \Drupal\Core\Entity\EntityInterface $entity */
$entity = isset($context['entity']) ? $context['entity'] : NULL;
if ($entity !== NULL) {
$token_data[$entity
->getEntityTypeId()] = $entity;
}
$return_value = $this
->getTokenService()
->replace($value, $token_data, [
'clear' => TRUE,
]);
}
return $return_value;
}
/**
* Sets the token service.
*
* @param \Drupal\Core\Utility\Token $token_service
* The token service.
*
* @return self
* The token service.
*/
public function setTokenService(Token $token_service) {
$this->tokenService = $token_service;
return $this;
}
/**
* Gets the token service.
*
* @return \Drupal\Core\Utility\Token
* The token service.
*/
public function getTokenService() {
if (!$this->tokenService) {
$this->tokenService = \Drupal::token();
}
return $this->tokenService;
}
}
Members
Name | Modifiers | Type | Description | Overrides |
---|---|---|---|---|
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 | |
MessengerTrait:: |
protected | property | The messenger. | 29 |
MessengerTrait:: |
public | function | Gets the messenger. | 29 |
MessengerTrait:: |
public | function | Sets the messenger. | |
PatternSettingTypeBase:: |
private | property | Return pattern definitions for setting . | |
PatternSettingTypeBase:: |
public | function |
Creates a generic configuration form for all settings types.
Individual settings plugins can add elements to this form by
overriding PatternSettingTypeBaseInterface::settingsForm().
Most plugins should not override this method unless they
need to… Overrides PatternSettingTypeInterface:: |
|
PatternSettingTypeBase:: |
public | function | ||
PatternSettingTypeBase:: |
public | function |
Gets default configuration for this plugin. Overrides ConfigurableInterface:: |
|
PatternSettingTypeBase:: |
public | function |
Gets this plugin's configuration. Overrides ConfigurableInterface:: |
|
PatternSettingTypeBase:: |
public | function | ||
PatternSettingTypeBase:: |
protected | function | Return pattern setting definition. | |
PatternSettingTypeBase:: |
protected | function | Return value if set otherwise take the default value. | |
PatternSettingTypeBase:: |
public | function | ||
PatternSettingTypeBase:: |
public | function |
Returns the processed setting variable. Overrides PatternSettingTypeInterface:: |
1 |
PatternSettingTypeBase:: |
public | function |
Sets the configuration for this plugin instance. Overrides ConfigurableInterface:: |
|
PatternSettingTypeBase:: |
public | function |
Constructs a \Drupal\Component\Plugin\PluginBase object. Overrides PluginBase:: |
|
PluginBase:: |
protected | property | Configuration information passed into the plugin. | 1 |
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. | |
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. | |
TokenSettingTypeBase:: |
protected | property | The token service. | |
TokenSettingTypeBase:: |
public static | function |
Creates an instance of the plugin. Overrides PatternSettingTypeBase:: |
|
TokenSettingTypeBase:: |
public | function | Gets the token service. | |
TokenSettingTypeBase:: |
public | function |
Returns the configuration form elements specific to this settings plugin.. Overrides PatternSettingTypeInterface:: |
|
TokenSettingTypeBase:: |
public | function |
Preprocess setting variable. Overrides PatternSettingTypeBase:: |
1 |
TokenSettingTypeBase:: |
public | function | Sets the token service. |