function openlayers_presets_ui_presets_manage_add_submit in Openlayers 6
Form submit for preset add form
File
- modules/
openlayers_presets_ui/ includes/ openlayers_presets_ui.ui.inc, line 633 - This file holds the functions for the openlayers presets ui
Code
function openlayers_presets_ui_presets_manage_add_submit($form, &$form_state) {
// Check for cancel
if ($form_state['clicked_button']['#id'] == 'edit-openlayers-cancel') {
$form_state['redirect'] = 'admin/settings/openlayers/presets/list';
}
// Only save if save button is pressed
if ($form_state['clicked_button']['#id'] == 'edit-openlayers-save') {
// Merge with original map data to account for data
// that cannot be accounted for UI
if (!empty($form_state['values']['default_map'])) {
// Convert form, but keep empty values, so merging is subtractive
$map = _openlayers_presets_ui_convert_form_to_map($form_state['values'], FALSE);
$map = _openlayers_presets_ui_merge_maps($map, $form_state['values']['default_map']);
}
else {
$map = _openlayers_presets_ui_convert_form_to_map($form_state['values']);
}
// Create preset array
$preset = array(
'preset_name' => $form_state['values']['preset_name'],
'preset_title' => $form_state['values']['preset_title'],
'preset_description' => $form_state['values']['preset_description'],
'preset_data' => $map,
);
// Save preset
$success = openlayers_save_preset($preset);
// Redirect to edit page
if ($success) {
drupal_set_message(t('Map saved.'));
$form_state['redirect'] = 'admin/settings/openlayers/presets/' . $preset['preset_name'] . '/edit';
}
else {
form_set_error('openlayers', t('Error trying to save map'));
}
}
}