_nicemap_layer_style_form

nicemap/nicemap_admin.inc, line 103

Versions
6
_nicemap_layer_style_form(&$form, $wms_layers, $default_layers, $default_styles, $default_weights, $default_bg)

Layer and style settings form, used also by the view form.

Code

<?php
function _nicemap_layer_style_form(&$form, $wms_layers, $default_layers, $default_styles, $default_weights, $default_bg) {
  $form['display'] = array(
    '#title' => t('Display options'),
    '#type' => 'fieldset',
  );
  $form['display']['nicemap_bgcolor'] = array(
    '#title' => t('Background color'),
    '#type' => 'textfield',
    '#size' => 6,
    '#maxlength' => 6,
    '#description' => t('Enter an RGB hex value or leave blank to use a transparent background.'),
    '#default_value' => $default_bg,
  );

  $layers = $styles = array();
  foreach ($wms_layers as $layer => $info) {
    $layers[$layer] = $info['title'];
    $styles[$layer] = $info['styles'];
  }

  $weight_options = array();
  for ($i = -5; $i <= 5; $i++) {
    $weight_options[$i] = $i;
  }

  $form['nicemap_defaults'] = array(
    '#tree' => true,
    '#theme' => 'nicemap_settings_layers',
    '#type' => 'fieldset',
    '#title' => t('Layers display options'),
    'layers' => array(),
    'styles' => array(),
    'weights' => array(),
  );

  foreach ($layers as $layer => $name) {
    $form['nicemap_defaults']['layers'][$layer] = array(
      '#type' => 'checkbox',
      '#title' => $name,
      '#default_value' => isset($default_layers[$layer]) ? $default_layers[$layer] : 0,
    );
    $form['nicemap_defaults']['styles'][$layer] = array(
      '#type' => 'select',
      '#options' => $styles[$layer],
      '#default_value' => isset($default_styles[$layer]) ? $default_styles[$layer] : $styles[$layer][0],
    );
    $form['nicemap_defaults']['weights'][$layer] = array(
      '#type' => 'select',
      '#options' => $weight_options,
      '#default_value' => isset($default_weights[$layer]) ? $default_weights[$layer] : 0,
      '#attributes' => array('class' => 'layer-weight'),
    );
  }
}
?>