class DateFormat

Same name in this branch
  1. 10 core/lib/Drupal/Core/Datetime/Entity/DateFormat.php \Drupal\Core\Datetime\Entity\DateFormat
Same name in other branches
  1. 9 core/modules/config_translation/src/FormElement/DateFormat.php \Drupal\config_translation\FormElement\DateFormat
  2. 9 core/lib/Drupal/Core/Datetime/Entity/DateFormat.php \Drupal\Core\Datetime\Entity\DateFormat
  3. 8.9.x core/modules/config_translation/src/FormElement/DateFormat.php \Drupal\config_translation\FormElement\DateFormat
  4. 8.9.x core/lib/Drupal/Core/Datetime/Entity/DateFormat.php \Drupal\Core\Datetime\Entity\DateFormat
  5. 11.x core/modules/config_translation/src/FormElement/DateFormat.php \Drupal\config_translation\FormElement\DateFormat
  6. 11.x core/lib/Drupal/Core/Datetime/Entity/DateFormat.php \Drupal\Core\Datetime\Entity\DateFormat

Defines the date format element for the configuration translation interface.

Hierarchy

Expanded class hierarchy of DateFormat

File

core/modules/config_translation/src/FormElement/DateFormat.php, line 10

Namespace

Drupal\config_translation\FormElement
View source
class DateFormat extends FormElementBase {
    
    /**
     * {@inheritdoc}
     */
    public function getTranslationElement(LanguageInterface $translation_language, $source_config, $translation_config) {
        
        /** @var \Drupal\Core\Datetime\DateFormatterInterface $date_formatter */
        $date_formatter = \Drupal::service('date.formatter');
        $description = $this->t('A user-defined date format. See the <a href="https://www.php.net/manual/datetime.format.php#refsect1-datetime.format-parameters">PHP manual</a> for available options.');
        $format = $this->t('Displayed as %date_format', [
            '%date_format' => $date_formatter->format(\Drupal::time()->getRequestTime(), 'custom', $translation_config),
        ]);
        return [
            '#type' => 'textfield',
            '#description' => $description,
            '#field_suffix' => ' <small data-drupal-date-formatter="preview">' . $format . '</small>',
            '#attributes' => [
                'data-drupal-date-formatter' => 'source',
            ],
            '#attached' => [
                'drupalSettings' => [
                    'dateFormats' => $date_formatter->getSampleDateFormats($translation_language->getId()),
                ],
                'library' => [
                    'system/drupal.system.date',
                ],
            ],
        ] + parent::getTranslationElement($translation_language, $source_config, $translation_config);
    }

}

Members

Title Sort descending Modifiers Object type Summary Overriden Title Overrides
DateFormat::getTranslationElement public function Returns the translation form element for a given configuration definition. Overrides FormElementBase::getTranslationElement
FormElementBase::$definition protected property The data definition of the element this form element is for.
FormElementBase::$element protected property The schema element this form is for.
FormElementBase::create public static function Creates a form element instance from a schema definition. Overrides ElementInterface::create
FormElementBase::getSourceElement protected function Returns the source element for a given configuration definition. 2
FormElementBase::getTranslationBuild public function Builds a render array containing the source and translation form elements. Overrides ElementInterface::getTranslationBuild
FormElementBase::setConfig public function Sets configuration based on a nested form value array. Overrides ElementInterface::setConfig 1
FormElementBase::__construct public function Constructs a FormElementBase.
StringTranslationTrait::$stringTranslation protected property The string translation service. 3
StringTranslationTrait::formatPlural protected function Formats a string containing a count of items.
StringTranslationTrait::getNumberOfPlurals protected function Returns the number of plurals supported by a given language.
StringTranslationTrait::getStringTranslation protected function Gets the string translation service.
StringTranslationTrait::setStringTranslation public function Sets the string translation service to use. 2
StringTranslationTrait::t protected function Translates a string to the current language or to a given language.

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.