You are here

public function CurrentVisitorMapBlock::blockForm in IP Geolocation Views & Maps 8

Overrides BlockPluginTrait::blockForm

File

src/Plugin/Block/CurrentVisitorMapBlock.php, line 99

Class

CurrentVisitorMapBlock
IPGV&M: Set my location .

Namespace

Drupal\ip_geoloc\Plugin\Block

Code

public function blockForm($form, FormStateInterface $form_state) {
  $form = parent::blockForm($form, $form_state);

  // Retrieve existing configuration for this block.
  $config = $this
    ->getConfiguration();

  // Add fields for block configuration.
  $form['ip_geoloc_current_visitor_map_div_id'] = [
    '#type' => 'textfield',
    '#title' => t('Map div CSS id'),
    '#default_value' => $config['ip_geoloc_current_visitor_map_div_id'] ? $config['ip_geoloc_current_visitor_map_div_id'] : 'ip-geoloc-block-current-visitor-map',
    '#description' => $this
      ->t('The map container div id to allow multiple instances of the block'),
  ];
  $form['ip_geoloc_current_visitor_map_div_style'] = [
    '#type' => 'textfield',
    '#title' => t('CSS style attribute(s) applied to the HTML DIV element that is placeholding the map'),
    '#default_value' => $config['ip_geoloc_current_visitor_map_div_style'] ? $config['ip_geoloc_current_visitor_map_div_style'] : IP_GEOLOC_MAP_DIV_DEFAULT_STYLE,
    '#description' => $this
      ->t('The default %default_style results in a map of 300 pixels high, with a width bounded by the element that contains it. Do not enter quotes or equal signs.', [
      '%default_style' => IP_GEOLOC_MAP_DIV_DEFAULT_STYLE,
    ]),
  ];
  $form['ip_geoloc_current_visitor_map_options'] = [
    '#type' => 'textfield',
    '#size' => 120,
    '#title' => $this
      ->t('Map options'),
    '#default_value' => $config['ip_geoloc_current_visitor_map_options'] ? $config['ip_geoloc_current_visitor_map_options'] : IP_GEOLOC_CURRENT_VISITOR_MAP_OPTIONS,
    '#description' => $this
      ->t("The default %default_options produces a street map zoomed in to level 15. A list of map options can be found <a href='!google_map_docs'>here</a>. Remember to separate options with comma's, not semi-colons, and make sure your quotes match.", [
      '%default_options' => IP_GEOLOC_CURRENT_VISITOR_MAP_OPTIONS,
      '!google_map_docs' => IP_GEOLOC_DOC_GOOGLE_MAP_OPTIONS,
    ]),
  ];
  return $form;
}