From faee1e01dcf282b64e854175cdd2f16ec8dbd2a5 Mon Sep 17 00:00:00 2001 From: Laura Hausmann Date: Thu, 8 Feb 2024 01:09:58 +0100 Subject: [PATCH] [backend/masto-client] Respect account_id query parameter when searching for notes --- Iceshrimp.Backend/Controllers/Mastodon/SearchController.cs | 1 + Iceshrimp.Backend/Core/Extensions/QueryableExtensions.cs | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/Iceshrimp.Backend/Controllers/Mastodon/SearchController.cs b/Iceshrimp.Backend/Controllers/Mastodon/SearchController.cs index 510a169d..93a61745 100644 --- a/Iceshrimp.Backend/Controllers/Mastodon/SearchController.cs +++ b/Iceshrimp.Backend/Controllers/Mastodon/SearchController.cs @@ -137,6 +137,7 @@ public class SearchController( .IncludeCommonProperties() .Where(p => p.TextContainsCaseInsensitive(search.Query!) && (!search.Following || p.User.IsFollowedBy(user))) + .FilterByUser(search.UserId) .EnsureVisibleFor(user) .FilterHiddenListMembers(user) .FilterBlocked(user) diff --git a/Iceshrimp.Backend/Core/Extensions/QueryableExtensions.cs b/Iceshrimp.Backend/Core/Extensions/QueryableExtensions.cs index bec98ea3..d9f25f87 100644 --- a/Iceshrimp.Backend/Core/Extensions/QueryableExtensions.cs +++ b/Iceshrimp.Backend/Core/Extensions/QueryableExtensions.cs @@ -80,8 +80,8 @@ public static class NoteQueryableExtensions { return query.Where(note => note.User == user); } - public static IQueryable FilterByUser(this IQueryable query, string userId) { - return query.Where(note => note.UserId == userId); + public static IQueryable FilterByUser(this IQueryable query, string? userId) { + return userId != null ? query.Where(note => note.UserId == userId) : query; } public static IQueryable EnsureVisibleFor(this IQueryable query, User? user) {