function better_exposed_filters_exposed_form_plugin::_bef_get_settings in Better Exposed Filters 7.3
Returns an array of default or current existing values for BEF settings.
This helps us as we add new options and prevents a lot of.
if (isset($settings['new_settings'])) { ... }
as there will be a default value at all positions in the settings array. Also updates legacy settings to their new locations via _bef_update_legacy_settings().
Return value
array Multi-dimensional settings array.
4 calls to better_exposed_filters_exposed_form_plugin::_bef_get_settings()
- better_exposed_filters_exposed_form_plugin::exposed_form_alter in ./
better_exposed_filters_exposed_form_plugin.inc - Tweak the exposed filter form to show Better Exposed Filter options.
- better_exposed_filters_exposed_form_plugin::options_form in ./
better_exposed_filters_exposed_form_plugin.inc - Provide a form to edit options for this plugin.
- better_exposed_filters_exposed_form_plugin::pre_render in ./
better_exposed_filters_exposed_form_plugin.inc - Pre render callback to append the 'no values found' text if input required options is enabled.
- better_exposed_filters_exposed_form_plugin::query in ./
better_exposed_filters_exposed_form_plugin.inc - Query callback, intervenes if no filters are applied and input is required.
File
- ./
better_exposed_filters_exposed_form_plugin.inc, line 1963 - Provides an Better Exposed Filters exposed form plugin for View 3.x.
Class
- better_exposed_filters_exposed_form_plugin
- Better exposed filter form plugin class.
Code
function _bef_get_settings() {
// General, sort, pagers, etc.
$defaults = array(
'general' => array(
'input_required' => FALSE,
'text_input_required' => array(
'text_input_required' => array(
'value' => t('Select any filter and click on Apply to see results'),
'format' => filter_default_format(),
),
),
'allow_secondary' => FALSE,
'secondary_label' => t('Advanced options'),
'secondary_collapse_override' => 0,
),
'sort' => array(
'bef_format' => 'default',
'advanced' => array(
'collapsible' => FALSE,
'collapsible_label' => '',
'combine' => FALSE,
'combine_param' => 'sort_bef_combine',
'combine_rewrite' => '',
'reset' => FALSE,
'reset_label' => '',
'is_secondary' => FALSE,
'autosubmit' => FALSE,
),
),
'pager' => array(
'bef_format' => 'default',
'is_secondary' => FALSE,
),
);
// Update legacy settings in the exposed form settings form. This
// keep us from losing settings when an option is put into an
// 'advanced options' fieldset.
$current = $this
->_bef_update_legacy_settings($this->options['bef']);
// Collect existing values or use defaults.
$settings = $this
->_bef_set_defaults($defaults, $current);
// Filter default values.
$filter_defaults = array(
'bef_format' => 'default',
'more_options' => array(
'bef_select_all_none' => FALSE,
'bef_select_all_none_nested' => FALSE,
'bef_collapsible' => FALSE,
'is_secondary' => FALSE,
'bef_filter_description' => '',
'any_label' => '',
'bef_term_description' => FALSE,
'autosubmit' => FALSE,
'tokens' => array(
'list' => array(),
'available' => array(),
),
'rewrite' => array(
'filter_rewrite_values' => '',
),
'datepicker_options' => '',
),
'slider_options' => array(
'bef_slider_min' => 0,
'bef_slider_max' => 99999,
'bef_slider_step' => 1,
'bef_slider_animate' => '',
'bef_slider_orientation' => 'horizontal',
),
);
// Go through each exposed filter and collect settings.
foreach ($this->display->handler
->get_handlers('filter') as $label => $filter) {
if (!$filter->options['exposed']) {
continue;
}
// Get existing values or use defaults.
$filter_current = isset($this->options['bef'][$label]) ? $this->options['bef'][$label] : array();
$settings[$label] = $this
->_bef_set_defaults($filter_defaults, $filter_current);
}
return $settings;
}