/** * Constructs a new PriceDefaultWidget object. * * @param string $pluginId * The plugin_id for the widget. * @param mixed $pluginDefinition * The plugin implementation definition. * @param \Drupal\Core\Field\FieldDefinitionInterface $fieldDefinition * The definition of the field to which the widget is associated. * @param array $settings * The widget settings. * @param array $thirdPartySettings * Any third party settings. * @param \Drupal\Core\Entity\EntityTypeManagerInterface $entityTypeManager * The entity type manager. * @param \Drupal\commerce_price\NumberFormatterFactoryInterface $numberFormatterFactory * The number formatter factory. */ public function __construct($pluginId, $pluginDefinition, FieldDefinitionInterface $fieldDefinition, array $settings, array $thirdPartySettings, EntityTypeManagerInterface $entityTypeManager, NumberFormatterFactoryInterface $numberFormatterFactory) { parent::__construct($pluginId, $pluginDefinition, $fieldDefinition, $settings, $thirdPartySettings); $this->currencyStorage = $entityTypeManager->getStorage('commerce_currency'); $this->numberFormatter = $numberFormatterFactory->createInstance(NumberFormatterInterface::DECIMAL); $this->numberFormatter->setMinimumFractionDigits(0); $this->numberFormatter->setMaximumFractionDigits(6); $this->numberFormatter->setGroupingUsed(FALSE); }
/** * Constructs a new PriceDefaultFormatter object. * * @param string $pluginId * The plugin_id for the formatter. * @param mixed $pluginDefinition * The plugin implementation definition. * @param \Drupal\Core\Field\FieldDefinitionInterface $fieldDefinition * The definition of the field to which the formatter is associated. * @param array $settings * The formatter settings. * @param string $label * The formatter label display setting. * @param string $viewMode * The view mode. * @param array $thirdPartySettings * Any third party settings settings. * @param \Drupal\Core\Entity\EntityTypeManagerInterface $entityTypeManager * The entity type manager. * @param \Drupal\commerce_price\NumberFormatterFactoryInterface $numberFormatterFactory * The number formatter factory. */ public function __construct($pluginId, $pluginDefinition, FieldDefinitionInterface $fieldDefinition, array $settings, $label, $viewMode, array $thirdPartySettings, EntityTypeManagerInterface $entityTypeManager, NumberFormatterFactoryInterface $numberFormatterFactory) { parent::__construct($pluginId, $pluginDefinition, $fieldDefinition, $settings, $label, $viewMode, $thirdPartySettings); $this->currencyStorage = $entityTypeManager->getStorage('commerce_currency'); $this->numberFormatter = $numberFormatterFactory->createInstance(); $this->numberFormatter->setMaximumFractionDigits(6); if ($this->getSetting('strip_trailing_zeroes')) { $this->numberFormatter->setMinimumFractionDigits(0); } if ($this->getSetting('display_currency_code')) { $this->numberFormatter->setCurrencyDisplay(NumberFormatterInterface::CURRENCY_DISPLAY_CODE); } }