diff options
Diffstat (limited to 'include')
-rw-r--r-- | include/functions_category.inc.php | 18 |
1 files changed, 8 insertions, 10 deletions
diff --git a/include/functions_category.inc.php b/include/functions_category.inc.php index f66d8bded..807920947 100644 --- a/include/functions_category.inc.php +++ b/include/functions_category.inc.php @@ -425,27 +425,25 @@ function initialize_category( $calling_page = 'category' ) // construction $clauses = array(); - $textfields = array('file', 'name', 'comment', 'keywords', 'author'); - foreach ($textfields as $textfield) - { - if (isset($search['fields'][$textfield])) + // Author Search + if (isset($search['fields']['author'])) { $local_clauses = array(); - foreach ($search['fields'][$textfield]['words'] as $word) + foreach ($search['fields']['author']['words'] as $word) { - array_push($local_clauses, $textfield." LIKE '%".$word."%'"); + array_push($local_clauses, "author LIKE '%".$word."%'"); } // adds brackets around where clauses array_walk($local_clauses,create_function('&$s','$s="(".$s.")";')); array_push($clauses, - implode(' '.$search['fields'][$textfield]['mode'].' ', + implode(' '.$search['fields']['author']['mode'].' ', $local_clauses)); } - } + // All words search (author included) if (isset($search['fields']['allwords'])) { - $fields = array('file', 'name', 'comment', 'keywords'); + $textfields = array('file', 'name', 'comment', 'keywords', 'author'); // in the OR mode, request bust be : // ((field1 LIKE '%word1%' OR field2 LIKE '%word1%') // OR (field1 LIKE '%word2%' OR field2 LIKE '%word2%')) @@ -457,7 +455,7 @@ function initialize_category( $calling_page = 'category' ) foreach ($search['fields']['allwords']['words'] as $word) { $field_clauses = array(); - foreach ($fields as $field) + foreach ($textfields as $field) { array_push($field_clauses, $field." LIKE '%".$word."%'"); } |