TermReferenceTree.php 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. <?php
  2. namespace Drupal\term_reference_tree\Plugin\Field\FieldFormatter;
  3. use Drupal\Core\Field\FormatterBase;
  4. use Drupal\Core\Field\FieldItemListInterface;
  5. use Drupal\Core\Form\FormStateInterface;
  6. /**
  7. * Plugin implementation of the thumbnail field formatter.
  8. *
  9. * @FieldFormatter(
  10. * id = "term_reference_tree",
  11. * label = @Translation("Term Reference Tree"),
  12. * field_types = {
  13. * "entity_reference"
  14. * }
  15. * )
  16. */
  17. class TermReferenceTree extends FormatterBase {
  18. /**
  19. * {@inheritdoc}
  20. */
  21. public function viewElements(FieldItemListInterface $items, $langcode) {
  22. $element[] = array(
  23. '#theme' => 'term_tree_list',
  24. '#data' => $items->getValue(),
  25. '#attached' => ['library' => ['term_reference_tree/term_reference_tree_css']],
  26. );
  27. return $element;
  28. }
  29. /**
  30. * {@inheritdoc}
  31. */
  32. public static function defaultSettings() {
  33. return parent::defaultSettings();
  34. }
  35. /**
  36. * {@inheritdoc}
  37. */
  38. public function settingsForm(array $form, FormStateInterface $form_state) {
  39. return parent::settingsForm($form, $form_state);
  40. }
  41. /**
  42. * {@inheritdoc}
  43. */
  44. public function settingsSummary() {
  45. return [];
  46. }
  47. }