public function SettingsForm::buildForm in Leaflet MapBox 8
Form constructor.
Parameters
array $form: An associative array containing the structure of the form.
\Drupal\Core\Form\FormStateInterface $form_state: The current state of the form.
Return value
array The form structure.
Overrides ConfigFormBase::buildForm
File
- src/
Form/ SettingsForm.php, line 20
Class
Namespace
Drupal\leaflet_mapbox\FormCode
public function buildForm(array $form, FormStateInterface $form_state) {
$config = $this
->config('leaflet_mapbox.settings');
$form['label'] = array(
'#type' => 'textfield',
'#title' => t('Map label'),
'#required' => TRUE,
'#default_value' => $config
->get('label'),
'#description' => t('Give your map a name, this will be the name shown on the display options form.'),
);
$form['api_version'] = array(
'#type' => 'select',
'#title' => t('API version'),
'#required' => TRUE,
'#default_value' => $config
->get('api_version'),
'#options' => array(
'3' => t('3 (Mapbox Studio Classic)'),
'4' => t('4 (Mapbox Studio)'),
),
);
$form['code'] = array(
'#type' => 'textfield',
'#title' => t('Map code'),
'#default_value' => $config
->get('code'),
'#description' => t('This code is obtained from Mapbox by clicking on the mapbox.js button after publishing your map'),
'#states' => array(
'visible' => array(
':input[name="api_version"]' => array(
'value' => '3',
),
),
'required' => array(
':input[name="api_version"]' => array(
'value' => '3',
),
),
),
);
$form['style_url'] = array(
'#type' => 'textfield',
'#title' => t('Style URL'),
'#default_value' => $config
->get('style_url'),
'#description' => t('Copy and paste the style URL. Example: %url.', array(
'%url' => 'mapbox://styles/johndoe/erl4zrwto008ob3f2ijepsbszg',
)),
'#states' => array(
'visible' => array(
':input[name="api_version"]' => array(
'value' => '4',
),
),
'required' => array(
':input[name="api_version"]' => array(
'value' => '4',
),
),
),
);
$form['token'] = array(
'#type' => 'textfield',
'#title' => t('Map access token'),
'#required' => TRUE,
'#default_value' => $config
->get('token'),
'#description' => t('You will find this in the Mapbox user account settings'),
);
$form['zoomlevel'] = array(
'#type' => 'textfield',
'#title' => t('Zoom Level'),
'#required' => TRUE,
'#default_value' => $config
->get('zoomlevel'),
'#description' => t('You must clear the site caches after changing this value or wait for the caches to expire before this change shows'),
);
$form['description'] = array(
'#type' => 'textarea',
'#title' => t('Map description'),
'#default_value' => $config
->get('description'),
);
return parent::buildForm($form, $form_state);
// TODO: Change the autogenerated stub
}