public function InventoryFormatter::viewElements in farmOS 2.x
Builds a renderable array for a field value.
Parameters
\Drupal\Core\Field\FieldItemListInterface $items: The field values to be rendered.
string $langcode: The language that should be used to render the field.
Return value
array A renderable array for $items, as an array of child elements keyed by consecutive numeric indexes starting from 0.
Overrides FormatterInterface::viewElements
File
- modules/
core/ inventory/ src/ Plugin/ Field/ FieldFormatter/ InventoryFormatter.php, line 24
Class
- InventoryFormatter
- Plugin implementation of the 'inventory' formatter.
Namespace
Drupal\farm_inventory\Plugin\Field\FieldFormatterCode
public function viewElements(FieldItemListInterface $items, $langcode) {
$elements = [];
foreach ($items as $delta => $item) {
$summary = $item->value;
if (!empty($item->units)) {
$summary .= ' ' . $item->units;
}
if (!empty($item->measure)) {
$measures = quantity_measures();
if (!empty($measures[$item->measure]['label'])) {
$summary .= ' (' . $measures[$item->measure]['label'] . ')';
}
}
$elements[$delta]['value'] = [
'#markup' => $summary,
];
}
return $elements;
}