Function Reference: geodir_handle_option_form_submit
Summary
Handles data posted from GeoDirectory settings form.
Global Values
- $geodir_settings
- (array) (required) Geodirectory settings array.
- Default: None
Package
GeoDirectory
Parameters
- $current_tab
- (string) (required) The current settings tab name.
- Default: None
Change Log
Since: 1.0.0
Actions
‘geodir_before_update_options’ [Line: 407]
‘geodir_update_options’ [Line: 419]
‘geodir_update_options_.$current_tab’ [Line: 430]
Source File
geodir_handle_option_form_submit() is located in geodirectory-admin/admin_functions.php [Line: 383]
Source Code
function geodir_handle_option_form_submit($current_tab) { global $geodir_settings; if (file_exists(dirname(__FILE__) . '/option-pages/' . $current_tab . '_array.php')) { /** * Contains settings array for current tab. * * @since 1.0.0 * @package GeoDirectory */ include_once('option-pages/' . $current_tab . '_array.php'); } if (isset($_POST) && $_POST && isset($_REQUEST['page']) && $_REQUEST['page'] == 'geodirectory') : if (!wp_verify_nonce($_REQUEST['_wpnonce'], 'geodir-settings')) die(__('Action failed. Please refresh the page and retry.', 'geodirectory')); if (!wp_verify_nonce($_REQUEST['_wpnonce-' . $current_tab], 'geodir-settings-' . $current_tab)) die(__('Action failed. Please refresh the page and retry.', 'geodirectory')); /** * Fires before updating geodirectory admin settings. * * @since 1.4.2 * * @param string $current_tab Current tab in geodirectory settings. * @param array $geodir_settings Array of geodirectory settings. */ do_action('geodir_before_update_options', $current_tab, $geodir_settings); if (!empty($geodir_settings[$current_tab])) geodir_update_options($geodir_settings[$current_tab]); /** * Called after GeoDirectory options settings are updated. * * @since 1.0.0 * @param array $geodir_settings The array of GeoDirectory settings. * @see 'geodir_before_update_options' */ do_action('geodir_update_options', $geodir_settings); /** * Called after GeoDirectory options settings are updated. * * Provides tab specific settings. * * @since 1.0.0 * @param string $current_tab The current settings tab name. * @param array $geodir_settings[$current_tab] The array of settings for the current settings tab. */ do_action('geodir_update_options_' . $current_tab, $geodir_settings[$current_tab]); flush_rewrite_rules(false); $current_tab = isset($_REQUEST['tab']) ? $_REQUEST['tab'] : ''; $redirect_url = admin_url('admin.php?page=geodirectory&tab=' . $current_tab . '&active_tab=' . $_REQUEST['active_tab'] . '&msg=success'); wp_redirect($redirect_url); exit(); endif; }