You are here

function geofield_map_zoom_level_validate in Geofield 7.2

Validate geofield_map_max_zoom to prevent errors when rendering a map with a defined maxZoom lower than the defined minZoom.

1 string reference to 'geofield_map_zoom_level_validate'
geofield_map_settings_form in modules/geofield_map/geofield_map.module

File

modules/geofield_map/geofield_map.module, line 400

Code

function geofield_map_zoom_level_validate($element, &$form_state) {

  // Get to the actual values in a form tree.
  $parents = $element['#parents'];
  $values = $form_state['values'];
  for ($i = 0; $i < count($parents) - 1; $i++) {
    $values = $values[$parents[$i]];
  }

  // Check the max zoom level.
  $min_zoom = $values['geofield_map_min_zoom'];
  $max_zoom = $values['geofield_map_max_zoom'];
  if ($max_zoom && $max_zoom < $min_zoom) {
    form_error($element, t('Max zoom level should be 0 or above the minimum zoom level'));
  }
}