class DecimalFormatter
Same name in other branches
- 9 core/lib/Drupal/Core/Field/Plugin/Field/FieldFormatter/DecimalFormatter.php \Drupal\Core\Field\Plugin\Field\FieldFormatter\DecimalFormatter
- 10 core/lib/Drupal/Core/Field/Plugin/Field/FieldFormatter/DecimalFormatter.php \Drupal\Core\Field\Plugin\Field\FieldFormatter\DecimalFormatter
- 11.x core/lib/Drupal/Core/Field/Plugin/Field/FieldFormatter/DecimalFormatter.php \Drupal\Core\Field\Plugin\Field\FieldFormatter\DecimalFormatter
Plugin implementation of the 'number_decimal' formatter.
The 'Default' formatter is different for integer fields on the one hand, and for decimal and float fields on the other hand, in order to be able to use different settings.
Plugin annotation
@FieldFormatter(
id = "number_decimal",
label = @Translation("Default"),
field_types = {
"decimal",
"float"
}
)
Hierarchy
- class \Drupal\Component\Plugin\PluginBase implements \Drupal\Component\Plugin\PluginInspectionInterface, \Drupal\Component\Plugin\DerivativeInspectionInterface
- class \Drupal\Core\Plugin\PluginBase extends \Drupal\Component\Plugin\PluginBase uses \Drupal\Core\StringTranslation\StringTranslationTrait, \Drupal\Core\DependencyInjection\DependencySerializationTrait, \Drupal\Core\Messenger\MessengerTrait
- class \Drupal\Core\Field\PluginSettingsBase extends \Drupal\Core\Plugin\PluginBase implements \Drupal\Core\Field\PluginSettingsInterface, \Drupal\Component\Plugin\DependentPluginInterface
- class \Drupal\Core\Field\FormatterBase extends \Drupal\Core\Field\PluginSettingsBase implements \Drupal\Core\Field\FormatterInterface, \Drupal\Core\Plugin\ContainerFactoryPluginInterface
- class \Drupal\Core\Field\Plugin\Field\FieldFormatter\NumericFormatterBase extends \Drupal\Core\Field\FormatterBase uses \Drupal\Core\Field\AllowedTagsXssTrait
- class \Drupal\Core\Field\Plugin\Field\FieldFormatter\DecimalFormatter extends \Drupal\Core\Field\Plugin\Field\FieldFormatter\NumericFormatterBase
- class \Drupal\Core\Field\Plugin\Field\FieldFormatter\NumericFormatterBase extends \Drupal\Core\Field\FormatterBase uses \Drupal\Core\Field\AllowedTagsXssTrait
- class \Drupal\Core\Field\FormatterBase extends \Drupal\Core\Field\PluginSettingsBase implements \Drupal\Core\Field\FormatterInterface, \Drupal\Core\Plugin\ContainerFactoryPluginInterface
- class \Drupal\Core\Field\PluginSettingsBase extends \Drupal\Core\Plugin\PluginBase implements \Drupal\Core\Field\PluginSettingsInterface, \Drupal\Component\Plugin\DependentPluginInterface
- class \Drupal\Core\Plugin\PluginBase extends \Drupal\Component\Plugin\PluginBase uses \Drupal\Core\StringTranslation\StringTranslationTrait, \Drupal\Core\DependencyInjection\DependencySerializationTrait, \Drupal\Core\Messenger\MessengerTrait
Expanded class hierarchy of DecimalFormatter
File
-
core/
lib/ Drupal/ Core/ Field/ Plugin/ Field/ FieldFormatter/ DecimalFormatter.php, line 23
Namespace
Drupal\Core\Field\Plugin\Field\FieldFormatterView source
class DecimalFormatter extends NumericFormatterBase {
/**
* {@inheritdoc}
*/
public static function defaultSettings() {
return [
'thousand_separator' => '',
'decimal_separator' => '.',
'scale' => 2,
'prefix_suffix' => TRUE,
] + parent::defaultSettings();
}
/**
* {@inheritdoc}
*/
public function settingsForm(array $form, FormStateInterface $form_state) {
$elements = parent::settingsForm($form, $form_state);
$elements['decimal_separator'] = [
'#type' => 'select',
'#title' => t('Decimal marker'),
'#options' => [
'.' => t('Decimal point'),
',' => t('Comma'),
],
'#default_value' => $this->getSetting('decimal_separator'),
'#weight' => 5,
];
$elements['scale'] = [
'#type' => 'number',
'#title' => t('Scale', [], [
'context' => 'decimal places',
]),
'#min' => 0,
'#max' => 10,
'#default_value' => $this->getSetting('scale'),
'#description' => t('The number of digits to the right of the decimal.'),
'#weight' => 6,
];
return $elements;
}
/**
* {@inheritdoc}
*/
protected function numberFormat($number) {
return number_format($number, $this->getSetting('scale'), $this->getSetting('decimal_separator'), $this->getSetting('thousand_separator'));
}
}
Members
Title Sort descending | Modifiers | Object type | Summary | Overriden Title | Overrides |
---|---|---|---|---|---|
AllowedTagsXssTrait::allowedTags | public | function | Returns a list of tags allowed by AllowedTagsXssTrait::fieldFilterXss(). | ||
AllowedTagsXssTrait::displayAllowedTags | public | function | Returns a human-readable list of allowed tags for display in help texts. | ||
AllowedTagsXssTrait::fieldFilterXss | public | function | Filters an HTML string to prevent XSS vulnerabilities. | ||
DecimalFormatter::defaultSettings | public static | function | Defines the default settings for this plugin. | Overrides PluginSettingsBase::defaultSettings | |
DecimalFormatter::numberFormat | protected | function | Formats a number. | Overrides NumericFormatterBase::numberFormat | |
DecimalFormatter::settingsForm | public | function | Returns a form to configure settings for the formatter. | Overrides NumericFormatterBase::settingsForm | |
FormatterBase::$fieldDefinition | protected | property | The field definition. | ||
FormatterBase::$label | protected | property | The label display setting. | ||
FormatterBase::$settings | protected | property | The formatter settings. | Overrides PluginSettingsBase::$settings | |
FormatterBase::$viewMode | protected | property | The view mode. | ||
FormatterBase::create | public static | function | Creates an instance of the plugin. | Overrides ContainerFactoryPluginInterface::create | 11 |
FormatterBase::getFieldSetting | protected | function | Returns the value of a field setting. | ||
FormatterBase::getFieldSettings | protected | function | Returns the array of field settings. | ||
FormatterBase::isApplicable | public static | function | Returns if the formatter can be used for the provided field. | Overrides FormatterInterface::isApplicable | 14 |
FormatterBase::prepareView | public | function | Allows formatters to load information for field values being displayed. | Overrides FormatterInterface::prepareView | 2 |
FormatterBase::view | public | function | Builds a renderable array for a fully themed field. | Overrides FormatterInterface::view | 1 |
FormatterBase::__construct | public | function | Constructs a FormatterBase object. | 11 | |
NumericFormatterBase::settingsSummary | public | function | Returns a short summary for the current formatter settings. | Overrides FormatterBase::settingsSummary | |
NumericFormatterBase::viewElements | public | function | Builds a renderable array for a field value. | Overrides FormatterInterface::viewElements | |
PluginInspectionInterface::getPluginDefinition | public | function | Gets the definition of the plugin implementation. | 6 | |
PluginInspectionInterface::getPluginId | public | function | Gets the plugin_id of the plugin instance. | 2 | |
PluginSettingsBase::$defaultSettingsMerged | protected | property | Whether default settings have been merged into the current $settings. | ||
PluginSettingsBase::$thirdPartySettings | protected | property | The plugin settings injected by third party modules. | ||
PluginSettingsBase::calculateDependencies | public | function | Calculates dependencies for the configured plugin. | Overrides DependentPluginInterface::calculateDependencies | 6 |
PluginSettingsBase::getSetting | public | function | Returns the value of a setting, or its default value if absent. | Overrides PluginSettingsInterface::getSetting | |
PluginSettingsBase::getSettings | public | function | Returns the array of settings, including defaults for missing settings. | Overrides PluginSettingsInterface::getSettings | |
PluginSettingsBase::getThirdPartyProviders | public | function | Gets the list of third parties that store information. | Overrides ThirdPartySettingsInterface::getThirdPartyProviders | |
PluginSettingsBase::getThirdPartySetting | public | function | Gets the value of a third-party setting. | Overrides ThirdPartySettingsInterface::getThirdPartySetting | |
PluginSettingsBase::getThirdPartySettings | public | function | Gets all third-party settings of a given module. | Overrides ThirdPartySettingsInterface::getThirdPartySettings | |
PluginSettingsBase::mergeDefaults | protected | function | Merges default settings values into $settings. | ||
PluginSettingsBase::onDependencyRemoval | public | function | Informs the plugin that some configuration it depends on will be deleted. | Overrides PluginSettingsInterface::onDependencyRemoval | 3 |
PluginSettingsBase::setSetting | public | function | Sets the value of a setting for the plugin. | Overrides PluginSettingsInterface::setSetting | |
PluginSettingsBase::setSettings | public | function | Sets the settings for the plugin. | Overrides PluginSettingsInterface::setSettings | |
PluginSettingsBase::setThirdPartySetting | public | function | Sets the value of a third-party setting. | Overrides ThirdPartySettingsInterface::setThirdPartySetting | |
PluginSettingsBase::unsetThirdPartySetting | public | function | Unsets a third-party setting. | Overrides ThirdPartySettingsInterface::unsetThirdPartySetting |
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.