From 351aae658fb11f323de8769466f18eca27055560 Mon Sep 17 00:00:00 2001 From: plegall Date: Wed, 19 Jan 2005 23:52:59 +0000 Subject: - back to revision 1.63 + add author in fields list for allwords search git-svn-id: http://piwigo.org/svn/trunk@710 68402e56-0260-453c-a942-63ccdbb3a9ee --- include/functions_category.inc.php | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) (limited to 'include/functions_category.inc.php') diff --git a/include/functions_category.inc.php b/include/functions_category.inc.php index 807920947..d52f24d71 100644 --- a/include/functions_category.inc.php +++ b/include/functions_category.inc.php @@ -425,25 +425,27 @@ function initialize_category( $calling_page = 'category' ) // construction $clauses = array(); - // Author Search - if (isset($search['fields']['author'])) + $textfields = array('file', 'name', 'comment', 'keywords', 'author'); + foreach ($textfields as $textfield) + { + if (isset($search['fields'][$textfield])) { $local_clauses = array(); - foreach ($search['fields']['author']['words'] as $word) + foreach ($search['fields'][$textfield]['words'] as $word) { - array_push($local_clauses, "author LIKE '%".$word."%'"); + array_push($local_clauses, $textfield." LIKE '%".$word."%'"); } // adds brackets around where clauses array_walk($local_clauses,create_function('&$s','$s="(".$s.")";')); array_push($clauses, - implode(' '.$search['fields']['author']['mode'].' ', + implode(' '.$search['fields'][$textfield]['mode'].' ', $local_clauses)); } + } - // All words search (author included) if (isset($search['fields']['allwords'])) { - $textfields = array('file', 'name', 'comment', 'keywords', 'author'); + $fields = 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%')) @@ -455,7 +457,7 @@ function initialize_category( $calling_page = 'category' ) foreach ($search['fields']['allwords']['words'] as $word) { $field_clauses = array(); - foreach ($textfields as $field) + foreach ($fields as $field) { array_push($field_clauses, $field." LIKE '%".$word."%'"); } -- cgit v1.2.3