public function Cluster::optionsForm in Openlayers 7.3
@TODO What is this return? If it is the form, why is form by reference?
Overrides Base::optionsForm
File
- src/
Plugin/ Source/ Cluster/ Cluster.php, line 23 - Source: Cluster.
Class
- Cluster
- Class Cluster.
Namespace
Drupal\openlayers\Plugin\Source\ClusterCode
public function optionsForm(array &$form, array &$form_state) {
$form['options']['source'] = array(
'#type' => 'select',
'#title' => t('Source'),
'#empty_option' => t('- Select a Source -'),
'#default_value' => $this
->getOption('source', ''),
'#description' => t('Select the source.'),
'#options' => Openlayers::loadAllAsOptions('Source'),
'#required' => TRUE,
);
$form['options']['distance'] = array(
'#type' => 'textfield',
'#title' => t('Cluster distance'),
'#default_value' => isset($form_state['item']->options['distance']) ? $form_state['item']->options['distance'] : 50,
'#description' => t('Cluster distance.'),
);
$zoomDistance = $this
->getOption('zoomDistance', array());
$zoomDistance = array_map(function ($v, $k) {
return $k . ':' . $v;
}, $zoomDistance, array_keys($zoomDistance));
$form['options']['zoomDistance'] = array(
'#title' => t('Set cluster distance per zoom level'),
'#description' => t('Define a zoom level / cluster distance per line. Use the notation zoom:distance. If no value is given for a zoom level it falls back to the default distance.'),
'#type' => 'textarea',
'#default_value' => implode(PHP_EOL, array_values($zoomDistance)),
);
}