Function Reference: geodir_uninstall_settings

Summary

Add uninstall settings for GeoDirectory plugins.

Parameters

$settings
(array) (required) Array of GeoDirectory general settings.

Default: None

Return Values

(array)
  • Array of settings.

Change Log

Since: 1.6.9

Filters

‘geodir_plugins_uninstall_settings’ [Line: 2423]

‘geodir_uninstall_settings’ [Line: 2450]

Source File

geodir_uninstall_settings() is located in geodirectory-admin/admin_hooks_actions.php [Line: 2417]

Source Code

function geodir_uninstall_settings($general_settings) {
    $settings   = array();
    $settings[] = array('type' => 'title', 'id' => 'uninstall_settings', 'name' => __('Uninstall Settings', 'geodirectory'));
    $settings[] = array('type' => 'sectionstart', 'id' => 'uninstall_settings_main', 'name' => __('Remove Data on Uninstall?', 'geodirectory' ));
    
    $plugins    = get_plugins();
    $un_plugins = apply_filters('geodir_plugins_uninstall_settings', array());
    
    if (!empty($plugins) && !empty($un_plugins)) {
        foreach ($plugins as $plugin => $data) {
            $plugin_name = plugin_basename(dirname($plugin));
            
            if (in_array($plugin_name, $un_plugins)) {
                $settings[] = array(
                    'type' => 'checkbox',
                    'id' => 'geodir_un_' . $plugin_name,
                    'name' => $data['Name'],
                    'desc' => __('Remove all data when deleted?', 'geodirectory'),
                    'std' => '0'
                );
            }
        }
    }
        
    $settings[] = array('type' => 'sectionend', 'id' => 'uninstall_settings_main');
    
    /**
     * Filter the uninstall settings array.
     *
     * @since 1.6.9
     *
     * @param array $settings The settings array.
     */
    $settings = apply_filters('geodir_uninstall_settings', $settings);
    
    if (!empty($settings) && count($settings) > 3) {
        return array_merge($general_settings, $settings);
    }
    
    return $general_settings;
}