aboutsummaryrefslogtreecommitdiffstats
path: root/lib/private/Files/Cache/QuerySearchHelper.php
diff options
context:
space:
mode:
authorBenjamin Gaussorgues <benjamin.gaussorgues@nextcloud.com>2023-11-10 10:42:20 +0100
committerGitHub <noreply@github.com>2023-11-10 10:42:20 +0100
commitfa761b51ccff0be55f9c22208d45c5e5a8b5b427 (patch)
tree9589adc503c2cb68e6bc89974c6c5a7337d1e6d6 /lib/private/Files/Cache/QuerySearchHelper.php
parenta66dbcdfc1e3126e5a4efbe8655c902c3fbedf91 (diff)
parentddb8b68b55d07e18a4e3e472febafb4a3f21f439 (diff)
downloadnextcloud-server-fa761b51ccff0be55f9c22208d45c5e5a8b5b427.tar.gz
nextcloud-server-fa761b51ccff0be55f9c22208d45c5e5a8b5b427.zip
Merge pull request #40618 from nextcloud/feat/39162/advanced_search
Advanced search: backend allows multiples terms to search
Diffstat (limited to 'lib/private/Files/Cache/QuerySearchHelper.php')
-rw-r--r--lib/private/Files/Cache/QuerySearchHelper.php8
1 files changed, 8 insertions, 0 deletions
diff --git a/lib/private/Files/Cache/QuerySearchHelper.php b/lib/private/Files/Cache/QuerySearchHelper.php
index f8e5d1608f7..6aa230c842f 100644
--- a/lib/private/Files/Cache/QuerySearchHelper.php
+++ b/lib/private/Files/Cache/QuerySearchHelper.php
@@ -134,6 +134,11 @@ class QuerySearchHelper {
));
}
+
+ protected function equipQueryForShares(CacheQueryBuilder $query): void {
+ $query->join('file', 'share', 's', $query->expr()->eq('file.fileid', 's.file_source'));
+ }
+
/**
* Perform a file system search in multiple caches
*
@@ -172,6 +177,9 @@ class QuerySearchHelper {
if (in_array('tagname', $requestedFields) || in_array('favorite', $requestedFields)) {
$this->equipQueryForDavTags($query, $this->requireUser($searchQuery));
}
+ if (in_array('owner', $requestedFields) || in_array('share_with', $requestedFields) || in_array('share_type', $requestedFields)) {
+ $this->equipQueryForShares($query);
+ }
$metadataQuery = $query->selectMetadata();