public function GeocoderWidget::settingsForm in Geocoder 8
Returns a form to configure settings for the widget.
Invoked from \Drupal\field_ui\Form\EntityDisplayFormBase to allow administrators to configure the widget. The field_ui module takes care of handling submitted form values.
Parameters
array $form: The form where the settings form is being included in.
\Drupal\Core\Form\FormStateInterface $form_state: The current state of the form.
Return value
array The form definition for the widget settings.
Overrides WidgetBase::settingsForm
File
- src/
Plugin/ Field/ FieldWidget/ GeocoderWidget.php, line 42 - Contains \Drupal\geocoder\Plugin\Field\FieldWidget\GeocoderWidget.
Class
- GeocoderWidget
- Plugin implementation of the 'geocoder_default' widget.
Namespace
Drupal\geocoder\Plugin\Field\FieldWidgetCode
public function settingsForm(array $form, FormStateInterface $form_state) {
$elements = parent::settingsForm($form, $form_state);
$entityFieldDefinitions = \Drupal::entityManager()
->getFieldDefinitions($this->fieldDefinition->entity_type, $this->fieldDefinition->bundle);
$options = array();
foreach ($entityFieldDefinitions as $id => $definition) {
if ($definition
->getType() == 'geofield') {
$options[$id] = $definition
->getLabel();
}
}
$elements['destination_field'] = array(
'#type' => 'select',
'#title' => $this
->t('Destination Geo Field'),
'#default_value' => $this
->getSetting('destination_field'),
'#required' => TRUE,
'#options' => $options,
);
$elements['placeholder'] = array(
'#type' => 'textfield',
'#title' => t('Placeholder'),
'#default_value' => $this
->getSetting('placeholder'),
'#description' => t('Text that will be shown inside the field until a value is entered. This hint is usually a sample value or a brief description of the expected format.'),
);
return $elements;
}