From aefc38c5a32674adc89d94a871673eb28b85173f Mon Sep 17 00:00:00 2001 From: LittleSheep Date: Sat, 21 Jun 2025 11:46:08 +0800 Subject: [PATCH] :bug: Fixing the post truncate --- DysonNetwork.Sphere/Post/Post.cs | 2 +- DysonNetwork.Sphere/Post/PostService.cs | 15 ++++++++------- 2 files changed, 9 insertions(+), 8 deletions(-) diff --git a/DysonNetwork.Sphere/Post/Post.cs b/DysonNetwork.Sphere/Post/Post.cs index 0a107bd..c21d039 100644 --- a/DysonNetwork.Sphere/Post/Post.cs +++ b/DysonNetwork.Sphere/Post/Post.cs @@ -66,7 +66,7 @@ public class Post : ModelBase, IIdentifiedResource, IActivity public ICollection Collections { get; set; } = new List(); [JsonIgnore] public bool Empty => Content == null && Attachments.Count == 0 && ForwardedPostId == null; - [NotMapped] public bool IsTruncated = false; + [NotMapped] public bool IsTruncated { get; set; } = false; public string ResourceIdentifier => $"post/{Id}"; diff --git a/DysonNetwork.Sphere/Post/PostService.cs b/DysonNetwork.Sphere/Post/PostService.cs index bafd0d0..c3d7bdb 100644 --- a/DysonNetwork.Sphere/Post/PostService.cs +++ b/DysonNetwork.Sphere/Post/PostService.cs @@ -20,9 +20,10 @@ public class PostService( { private const string PostFileUsageIdentifier = "post"; - public static List TruncatePostContent(List input) + private static List TruncatePostContent(List input) { const int maxLength = 256; + const int embedMaxLength = 80; foreach (var item in input) { if (item.Content?.Length > maxLength) @@ -31,17 +32,17 @@ public class PostService( item.IsTruncated = true; } - // Truncate replied post content - if (item.RepliedPost?.Content?.Length > maxLength) + // Truncate replied post content with shorter embed length + if (item.RepliedPost?.Content?.Length > embedMaxLength) { - item.RepliedPost.Content = item.RepliedPost.Content[..maxLength]; + item.RepliedPost.Content = item.RepliedPost.Content[..embedMaxLength]; item.RepliedPost.IsTruncated = true; } - // Truncate forwarded post content - if (item.ForwardedPost?.Content?.Length > maxLength) + // Truncate forwarded post content with shorter embed length + if (item.ForwardedPost?.Content?.Length > embedMaxLength) { - item.ForwardedPost.Content = item.ForwardedPost.Content[..maxLength]; + item.ForwardedPost.Content = item.ForwardedPost.Content[..embedMaxLength]; item.ForwardedPost.IsTruncated = true; } }