/** * Gets entity browser IDs that use routes. * * @return array * Array of browser IDs. */ protected function getBrowserIDsWithRoute() { // Get all display plugins which provides the type. $display_plugins = $this->displayManager->getDefinitions(); $ids = array(); foreach ($display_plugins as $id => $definition) { if (!empty($definition['uses_route'])) { $ids[$id] = $id; } } return $this->browserQuery->condition('status', TRUE)->condition("display", $ids, 'IN')->execute(); }
/** * {@inheritdoc} */ public function buildForm(array $form, FormStateInterface $form_state) { $cached_values = $form_state->getTemporaryValue('wizard'); /** @var \Drupal\entity_browser\EntityBrowserInterface $entity_browser */ $entity_browser = $cached_values['entity_browser']; $displays = []; foreach ($this->displayManager->getDefinitions() as $plugin_id => $plugin_definition) { $displays[$plugin_id] = $plugin_definition['label']; } $form['display'] = ['#type' => 'select', '#title' => $this->t('Display plugin'), '#default_value' => $entity_browser->get('display') ? $entity_browser->getDisplay()->getPluginId() : NULL, '#options' => $displays, '#required' => TRUE]; $widget_selectors = []; foreach ($this->widgetSelectorManager->getDefinitions() as $plugin_id => $plugin_definition) { $widget_selectors[$plugin_id] = $plugin_definition['label']; } $form['widget_selector'] = ['#type' => 'select', '#title' => $this->t('Widget selector plugin'), '#default_value' => $entity_browser->get('widget_selector') ? $entity_browser->getWidgetSelector()->getPluginId() : NULL, '#options' => $widget_selectors, '#required' => TRUE]; $selection_display = []; foreach ($this->selectionDisplayManager->getDefinitions() as $plugin_id => $plugin_definition) { $selection_display[$plugin_id] = $plugin_definition['label']; } $form['selection_display'] = ['#type' => 'select', '#title' => $this->t('Selection display plugin'), '#default_value' => $entity_browser->get('selection_display') ? $entity_browser->getSelectionDisplay()->getPluginId() : NULL, '#options' => $selection_display, '#required' => TRUE]; return $form; }