diff options
author | Dries Buytaert <dries@buytaert.net> | 2010-12-02 23:58:21 +0000 |
---|---|---|
committer | Dries Buytaert <dries@buytaert.net> | 2010-12-02 23:58:21 +0000 |
commit | aee64c551a51e8c1b9555abc6dc9af9fcd7f5842 (patch) | |
tree | 8c51d0532b1e151cf5a7bfb880491943741dd979 /modules/node/node.module | |
parent | d4a368964a73561db54bdcfcc3f587b95525dd2d (diff) | |
download | brdo-aee64c551a51e8c1b9555abc6dc9af9fcd7f5842.tar.gz brdo-aee64c551a51e8c1b9555abc6dc9af9fcd7f5842.tar.bz2 |
- Patch #950460 by Gábor Hojtsy, drunken monkey, jhodgdon: language selection in advanced search filters broken.
Diffstat (limited to 'modules/node/node.module')
-rw-r--r-- | modules/node/node.module | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/modules/node/node.module b/modules/node/node.module index 47173cc04..8535a3d3f 100644 --- a/modules/node/node.module +++ b/modules/node/node.module @@ -2692,7 +2692,9 @@ function node_form_search_form_alter(&$form, $form_state) { // Languages: $language_options = array(); foreach (language_list('language') as $key => $entity) { - $language_options[$key] = $entity->name; + if ($entity->enabled) { + $language_options[$key] = $entity->name; + } } if (count($language_options) > 1) { $form['advanced']['language'] = array( @@ -2728,8 +2730,11 @@ function node_search_validate($form, &$form_state) { if (isset($form_state['values']['term']) && is_array($form_state['values']['term']) && count($form_state['values']['term'])) { $keys = search_expression_insert($keys, 'term', implode(',', $form_state['values']['term'])); } - if (isset($form_state['values']['language']) && is_array($form_state['values']['language']) && count($form_state['values']['language'])) { - $keys = search_expression_insert($keys, 'language', implode(',', array_filter($form_state['values']['language']))); + if (isset($form_state['values']['language']) && is_array($form_state['values']['language'])) { + $languages = array_filter($form_state['values']['language']); + if (count($languages)) { + $keys = search_expression_insert($keys, 'language', implode(',', $languages)); + } } if ($form_state['values']['or'] != '') { if (preg_match_all('/ ("[^"]+"|[^" ]+)/i', ' ' . $form_state['values']['or'], $matches)) { |