diff --git a/better_exposed_filters_exposed_form_plugin.inc b/better_exposed_filters_exposed_form_plugin.inc
index d65787d..52e3db9 100644
--- a/better_exposed_filters_exposed_form_plugin.inc
+++ b/better_exposed_filters_exposed_form_plugin.inc
@@ -548,7 +548,7 @@ Title Desc|Z -> A Leave the replacement value blank to remove an option al
/*
* Handle exposed sort elements.
*/
- if (isset($settings['sort']) && !empty($form['sort_by']) && !empty($form['sort_order'])) {
+ if (isset($settings['sort']) && !empty($form['sort_by'])) {
$show_apply = TRUE;
// If selected, collect all sort-related form elements and put them
@@ -558,7 +558,7 @@ Title Desc|Z -> A Leave the replacement value blank to remove an option al
$sort_elems = array();
// Check for combined sort_by and sort_order.
- if ($settings['sort']['advanced']['combine']) {
+ if ($settings['sort']['advanced']['combine'] && !empty($form['sort_order'])) {
// Combine sort_by and sort_order into a single element.
$form['sort_bef_combine'] = array(
'#type' => 'radios',
@@ -676,17 +676,21 @@ Title Desc|Z -> A Leave the replacement value blank to remove an option al
$form['sort_by']['#prefix'] = '
';
$form['sort_by']['#suffix'] = '
';
- $form['sort_order']['#type'] = 'radios';
- if (empty($form['sort_order']['#process'])) {
- $form['sort_order']['#process'] = array();
+ if (!empty($form['sort_order'])) {
+ $form['sort_order']['#type'] = 'radios';
+ if (empty($form['sort_order']['#process'])) {
+ $form['sort_order']['#process'] = array();
+ }
+ array_unshift($form['sort_order']['#process'], 'form_process_radios');
+ $form['sort_order']['#prefix'] = '';
+ $form['sort_order']['#suffix'] = '
';
}
- array_unshift($form['sort_order']['#process'], 'form_process_radios');
- $form['sort_order']['#prefix'] = '';
- $form['sort_order']['#suffix'] = '
';
}
elseif ('bef_links' == $settings['sort']['bef_format']) {
$form['sort_by']['#theme'] = 'select_as_links';
- $form['sort_order']['#theme'] = 'select_as_links';
+ if (!empty($form['sort_order'])) {
+ $form['sort_order']['#theme'] = 'select_as_links';
+ }
// Exposed form displayed as blocks can appear on pages other than the
// view results appear on. This can cause problems with
@@ -694,13 +698,18 @@ Title Desc|Z -> A Leave the replacement value blank to remove an option al
// a hint for theme functions to correct this.
if (!empty($this->display->display_options['exposed_block'])) {
$form['sort_by']['#bef_path'] = $this->display->display_options['path'];
- $form['sort_order']['#bef_path'] = $this->display->display_options['path'];
+ if (!empty($form['sort_order'])) {
+ $form['sort_order']['#bef_path'] = $this->display->display_options['path'];
+ }
}
}
if ($collapse) {
$sort_elems[] = 'sort_by';
- $sort_elems[] = 'sort_order';
+
+ if (!empty($form['sort_order'])) {
+ $sort_elems[] = 'sort_order';
+ }
}
// Add reset sort option if selected.