This repository has been archived on 2025-01-19. You can view files and clone it, but cannot push or open issues or pull requests.
drupalcampbristol/vendor/chi-teck/drupal-code-generator/templates/d8/plugin/entity-reference-selection.twig

69 lines
1.4 KiB
Twig
Raw Normal View History

2018-11-23 12:29:20 +00:00
<?php
namespace Drupal\{{ machine_name }}\Plugin\EntityReferenceSelection;
{% sort %}
{% if configurable %}
use Drupal\Core\Form\FormStateInterface;
{% endif %}
use {{ base_class_full }};
{% endsort %}
/**
* Plugin description.
*
* @EntityReferenceSelection(
* id = "{{ plugin_id }}",
* label = @Translation("{{ plugin_label }}"),
* group = "{{ plugin_id }}",
* entity_types = {"{{ entity_type }}"},
* weight = 0
* )
*/
class {{ class }} extends {{ base_class }} {
{% if configurable %}
/**
* {@inheritdoc}
*/
public function defaultConfiguration() {
$default_configuration = [
'foo' => 'bar',
];
return $default_configuration + parent::defaultConfiguration();
}
/**
* {@inheritdoc}
*/
public function buildConfigurationForm(array $form, FormStateInterface $form_state) {
$form = parent::buildConfigurationForm($form, $form_state);
$form['foo'] = [
'#type' => 'textfield',
'#title' => $this->t('Foo'),
'#default_value' => $this->configuration['foo'],
];
return $form;
}
{% endif %}
/**
* {@inheritdoc}
*/
protected function buildEntityQuery($match = NULL, $match_operator = 'CONTAINS') {
$query = parent::buildEntityQuery($match, $match_operator);
// @DCG
// Here you can apply addition conditions, sorting, etc to the query.
// Also see self::entityQueryAlter().
$query->condition('field_example', 123);
return $query;
}
}