Newer
Older
namespace Drupal\facets\Plugin\facets\widget;
use Drupal\Core\Form\FormStateInterface;
use Drupal\Core\StringTranslation\StringTranslationTrait;
use Drupal\facets\FacetInterface;
use Drupal\facets\Form\CheckboxWidgetForm;
use Drupal\facets\Widget\WidgetInterface;
* @FacetsWidget(
* label = @Translation("List of checkboxes"),
* description = @Translation("A configurable widget that shows a list of checkboxes"),
class CheckboxWidget implements WidgetInterface {
use StringTranslationTrait;
/**
* {@inheritdoc}
*/
public function build(FacetInterface $facet) {
$form_builder = \Drupal::getContainer()->get('form_builder');
$form_object = new CheckboxWidgetForm($facet);
Joris Vercammen
committed
return $form_builder->getForm($form_object);
public function buildConfigurationForm(array $form, FormStateInterface $form_state, $config) {
$form['show_numbers'] = [
'#type' => 'checkbox',
'#title' => $this->t('Show the amount of results'),
Joris Vercammen
committed
if (!is_null($config)) {
$widget_configs = $config->get('widget_configs');
if (isset($widget_configs['show_numbers'])) {
$form['show_numbers']['#default_value'] = $widget_configs['show_numbers'];
/**
* {@inheritdoc}
*/
public function getQueryType($query_types) {
return $query_types['string'];
}