aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorVincent Petry <vincent@nextcloud.com>2022-10-14 14:48:10 +0200
committerGitHub <noreply@github.com>2022-10-14 14:48:10 +0200
commit2cef188b41fd544cbcfe8d279c0afbf6cf4b5a10 (patch)
tree32ab2b66f90c6ba2b39483554417b90ceb05e692
parent0ac2a9036d8cc88b5f882aa8e3e2f10f472a588a (diff)
parentf8453df98e7a6c802238ba73e5a7adc7000a9095 (diff)
downloadnextcloud-server-2cef188b41fd544cbcfe8d279c0afbf6cf4b5a10.tar.gz
nextcloud-server-2cef188b41fd544cbcfe8d279c0afbf6cf4b5a10.zip
Merge pull request #34569 from nextcloud/filterOutBackupStatus
Filter out backup user status (those beginning with _ as userId)
-rw-r--r--apps/user_status/lib/Db/UserStatusMapper.php13
1 files changed, 9 insertions, 4 deletions
diff --git a/apps/user_status/lib/Db/UserStatusMapper.php b/apps/user_status/lib/Db/UserStatusMapper.php
index 4f48ea46818..d40c6a29860 100644
--- a/apps/user_status/lib/Db/UserStatusMapper.php
+++ b/apps/user_status/lib/Db/UserStatusMapper.php
@@ -76,10 +76,15 @@ class UserStatusMapper extends QBMapper {
->select('*')
->from($this->tableName)
->orderBy('status_timestamp', 'DESC')
- ->where($qb->expr()->notIn('status', $qb->createNamedParameter([IUserStatus::ONLINE, IUserStatus::AWAY, IUserStatus::OFFLINE], IQueryBuilder::PARAM_STR_ARRAY)))
- ->orWhere($qb->expr()->isNotNull('message_id'))
- ->orWhere($qb->expr()->isNotNull('custom_icon'))
- ->orWhere($qb->expr()->isNotNull('custom_message'));
+ ->where($qb->expr()->andX(
+ $qb->expr()->orX(
+ $qb->expr()->notIn('status', $qb->createNamedParameter([IUserStatus::ONLINE, IUserStatus::AWAY, IUserStatus::OFFLINE], IQueryBuilder::PARAM_STR_ARRAY)),
+ $qb->expr()->isNotNull('message_id'),
+ $qb->expr()->isNotNull('custom_icon'),
+ $qb->expr()->isNotNull('custom_message'),
+ ),
+ $qb->expr()->notLike('user_id', $qb->createNamedParameter($this->db->escapeLikeParameter('_') . '%'))
+ ));
if ($limit !== null) {
$qb->setMaxResults($limit);