From 9070fe7fa3a3cb31775261d14381272bceee5414 Mon Sep 17 00:00:00 2001 From: LittleSheep Date: Fri, 15 Aug 2025 02:22:11 +0800 Subject: [PATCH] :sparkles: Post controller has media filter --- DysonNetwork.Sphere/Post/PostController.cs | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/DysonNetwork.Sphere/Post/PostController.cs b/DysonNetwork.Sphere/Post/PostController.cs index 678e8aa..6f1e3c1 100644 --- a/DysonNetwork.Sphere/Post/PostController.cs +++ b/DysonNetwork.Sphere/Post/PostController.cs @@ -45,7 +45,8 @@ public class PostController( [FromQuery(Name = "tags")] List? tags = null, [FromQuery(Name = "query")] string? queryTerm = null, [FromQuery(Name = "vector")] bool queryVector = false, - [FromQuery(Name = "replies")] bool includeReplies = false + [FromQuery(Name = "replies")] bool includeReplies = false, + [FromQuery(Name = "media")] bool onlyMedia = false ) { HttpContext.Items.TryGetValue("CurrentUser", out var currentUserValue); @@ -77,6 +78,8 @@ public class PostController( query = query.Where(p => p.Tags.Any(c => tags.Contains(c.Slug))); if (!includeReplies) query = query.Where(e => e.RepliedPostId == null); + if (onlyMedia) + query = query.Where(e => e.Attachments.Count > 0); if (!string.IsNullOrWhiteSpace(queryTerm)) {