When AJAX reloads a geofield map, look for new WKT in $form_state['input'].

This commit is contained in:
Michael Stenta 2020-02-02 15:31:42 -05:00
parent c3ca0cc041
commit 3984b8d8dd
1 changed files with 6 additions and 2 deletions

View File

@ -163,9 +163,13 @@ function farm_map_geofield_field_widget_form(&$form, &$form_state, $field, $inst
$instance['widget']['type'] = 'geofield_wkt';
$element = geofield_field_widget_form($form, $form_state, $field, $instance, $langcode, $items, $delta, $element);
// Get the geometry (as WKT).
// Get the geometry (as WKT), from form state input (if available), or from
// the saved field value.
$wkt = '';
if (!empty($items[$delta]['geom'])) {
if (!empty($form_state['input'][$field['field_name']][$langcode][$delta]['geom'])) {
$wkt = $form_state['input'][$field['field_name']][$langcode][$delta]['geom'];
}
elseif (!empty($items[$delta]['geom'])) {
$wkt = $items[$delta]['geom'];
}