TimeZoneItem.php 616 B

123456789101112131415161718192021222324
  1. <?php
  2. namespace Drupal\user;
  3. use Drupal\Core\Field\FieldDefinitionInterface;
  4. use Drupal\Core\Field\Plugin\Field\FieldType\StringItem;
  5. use Drupal\user\Entity\User;
  6. /**
  7. * Defines a custom field item class for the 'timezone' user entity field.
  8. */
  9. class TimeZoneItem extends StringItem {
  10. /**
  11. * {@inheritdoc}
  12. */
  13. public static function generateSampleValue(FieldDefinitionInterface $field_definition) {
  14. $timezones = User::getAllowedTimezones();
  15. // We need to vary the selected timezones since we're generating a sample.
  16. $key = rand(0, count($timezones) - 1);
  17. return $timezones[$key];
  18. }
  19. }