add missing ' AND ' in query string

This commit is contained in:
Uwe Steinmann 2021-05-05 13:44:02 +02:00
parent edd60363f3
commit 1e08ea06e9

View File

@ -79,11 +79,11 @@ class SeedDMS_SQliteFTS_Search {
if(!empty($fields['owner'])) { if(!empty($fields['owner'])) {
if(is_string($fields['owner'])) { if(is_string($fields['owner'])) {
if($querystr) if($querystr)
$querystr .= ' '; $querystr .= ' AND ';
$querystr .= 'owner:'.$fields['owner']; $querystr .= 'owner:'.$fields['owner'];
} elseif(is_array($fields['owner'])) { } elseif(is_array($fields['owner'])) {
if($querystr) if($querystr)
$querystr .= ' '; $querystr .= ' AND ';
$querystr .= '(owner:'; $querystr .= '(owner:';
$querystr .= implode(' OR owner:', $fields['owner']); $querystr .= implode(' OR owner:', $fields['owner']);
$querystr .= ')'; $querystr .= ')';
@ -91,14 +91,14 @@ class SeedDMS_SQliteFTS_Search {
} }
if(!empty($fields['category'])) { if(!empty($fields['category'])) {
if($querystr) if($querystr)
$querystr .= ' '; $querystr .= ' AND ';
$querystr .= '(category:'; $querystr .= '(category:';
$querystr .= implode(' OR category:', $fields['category']); $querystr .= implode(' OR category:', $fields['category']);
$querystr .= ')'; $querystr .= ')';
} }
if(!empty($fields['status'])) { if(!empty($fields['status'])) {
if($querystr) if($querystr)
$querystr .= ' '; $querystr .= ' AND ';
$status = array_map(function($v){return $v+10;}, $fields['status']); $status = array_map(function($v){return $v+10;}, $fields['status']);
$querystr .= '(status:'; $querystr .= '(status:';
$querystr .= implode(' OR status:', $status); $querystr .= implode(' OR status:', $status);
@ -106,21 +106,21 @@ class SeedDMS_SQliteFTS_Search {
} }
if(!empty($fields['user'])) { if(!empty($fields['user'])) {
if($querystr) if($querystr)
$querystr .= ' '; $querystr .= ' AND ';
$querystr .= '(users:'; $querystr .= '(users:';
$querystr .= implode(' OR users:', $fields['user']); $querystr .= implode(' OR users:', $fields['user']);
$querystr .= ')'; $querystr .= ')';
} }
if(!empty($fields['rootFolder']) && $fields['rootFolder']->getFolderList()) { if(!empty($fields['rootFolder']) && $fields['rootFolder']->getFolderList()) {
if($querystr) if($querystr)
$querystr .= ' '; $querystr .= ' AND ';
$querystr .= '(path:'; $querystr .= '(path:';
$querystr .= str_replace(':', 'x', $fields['rootFolder']->getFolderList().$fields['rootFolder']->getID().':'); $querystr .= str_replace(':', 'x', $fields['rootFolder']->getFolderList().$fields['rootFolder']->getID().':');
$querystr .= ')'; $querystr .= ')';
} }
if(!empty($fields['startFolder']) && $fields['startFolder']->getFolderList()) { if(!empty($fields['startFolder']) && $fields['startFolder']->getFolderList()) {
if($querystr) if($querystr)
$querystr .= ' '; $querystr .= ' AND ';
$querystr .= '(path:'; $querystr .= '(path:';
$querystr .= str_replace(':', 'x', $fields['startFolder']->getFolderList().$fields['startFolder']->getID().':'); $querystr .= str_replace(':', 'x', $fields['startFolder']->getFolderList().$fields['startFolder']->getID().':');
$querystr .= ')'; $querystr .= ')';