You are here

function geofield_ymap_element_process in Geofield Yandex Maps 7

Element process callback.

1 string reference to 'geofield_ymap_element_process'
geofield_ymap_element_info in ./geofield_ymap.element.inc
Implements hook_element_info().

File

./geofield_ymap.element.inc, line 25

Code

function geofield_ymap_element_process($element, &$form_state, $form) {
  $element['#tree'] = TRUE;
  if (isset($element['#value']['center'])) {
    $element['#map_center'] = $element['#value']['center'];
  }
  if (isset($element['#value']['zoom'])) {
    $element['#map_zoom'] = $element['#value']['zoom'];
  }
  $objects = $element['#map_objects'];
  if ($objects && is_array($objects)) {
    $objects = _geofield_ymap_json_encode($element['#map_objects']);
  }
  $element['objects'] = array(
    '#type' => 'hidden',
    '#default_value' => $objects,
  );
  unset($element['#map_objects']);
  $element['center'] = array(
    '#type' => 'hidden',
    '#default_value' => is_array($element['#map_center']) ? implode(',', $element['#map_center']) : $element['#map_center'],
  );
  $element['zoom'] = array(
    '#type' => 'hidden',
    '#default_value' => $element['#map_zoom'],
  );
  return $element;
}