farm-2.x-dev/modules/asset/structure/farm_structure.module
modules/asset/structure/farm_structure.module
<?php /** * @file * Structure asset module. */ use Drupal\Core\Entity\ContentEntityInterface; use Drupal\Core\Field\FieldStorageDefinitionInterface; /** * Structure type options helper. * * @return array * Returns an array of structure types for use in form select options. */ function farm_structure_type_options() { /** @var \Drupal\farm_structure\Entity\FarmStructureTypeInterface[] $types */ $types = \Drupal::entityTypeManager()->getStorage('structure_type')->loadMultiple(); $options = []; foreach ($types as $id => $type) { $options[$id] = $type->getLabel(); } return $options; } /** * Allowed values callback function for the structure type field. * * @param \Drupal\Core\Field\FieldStorageDefinitionInterface $definition * The field definition. * @param \Drupal\Core\Entity\ContentEntityInterface|null $entity * The entity being created if applicable. * @param bool $cacheable * Boolean indicating if the allowed values can be cached. Defaults to TRUE. * * @return array * Returns an array of allowed values for use in form select options. */ function farm_structure_type_field_allowed_values(FieldStorageDefinitionInterface $definition, ContentEntityInterface $entity = NULL, bool &$cacheable = TRUE) { return farm_structure_type_options(); }