You are here

public function GroupChannelFormatter::viewElements in Rocket.Chat 8.2

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/rocket_chat_group/src/Plugin/Field/FieldFormatter/GroupChannelFormatter.php, line 40

Class

GroupChannelFormatter
Class GroupChannelFormatter

Namespace

Drupal\rocket_chat_group\Plugin\Field\FieldFormatter

Code

public function viewElements(FieldItemListInterface $items, $langcode) {
  $elements = [];
  $elements2 = [];
  foreach ($items as $delta => $item) {
    $view_value = $this
      ->viewValue($item);
    $elements2[$delta] = $view_value;
  }

  /** @var \Drupal\rocket_chat_group\Plugin\Field\FieldType\GroupChannel $item */
  foreach ($items as $key => $item) {
    $channelName = $item->channelName;

    //$item->value;//$item->getValue['channelName'];
    if (empty($channelName)) {
      $channelName = "";
    }
    else {
      $channelName = "#" . $channelName;
    }
    $elements[$key]['#type'] = "text_format";
    $elements[$key]['#title'] = $this
      ->t("Channel");
    $elements[$key]['#base_type'] = "text_field";
    $elements[$key]['#format'] = "plain_text";
    $elements[$key]["#context"]['value'] = $channelName;
  }
  return $elements;
}