mirror of
https://github.com/Piwigo/Piwigo.git
synced 2026-06-02 04:15:05 +02:00
- Author included in "all words" search
git-svn-id: http://piwigo.org/svn/trunk@707 68402e56-0260-453c-a942-63ccdbb3a9ee
This commit is contained in:
@@ -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."%'");
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user