From 8662c8da044cd4e5bf6b28998cbbee08dc547f05 Mon Sep 17 00:00:00 2001 From: Alexey Golub Date: Wed, 12 Jul 2017 21:28:10 +0300 Subject: [PATCH] Show message edits --- DiscordChatExporter/Models/Message.cs | 5 ++++- DiscordChatExporter/Services/DiscordApiService.cs | 3 ++- DiscordChatExporter/Services/ExportService.cs | 10 +++++++++- DiscordChatExporter/Services/ExportTemplate.html | 6 ++++++ 4 files changed, 21 insertions(+), 3 deletions(-) diff --git a/DiscordChatExporter/Models/Message.cs b/DiscordChatExporter/Models/Message.cs index 4f1e1f14..3bfaa6a6 100644 --- a/DiscordChatExporter/Models/Message.cs +++ b/DiscordChatExporter/Models/Message.cs @@ -10,16 +10,19 @@ namespace DiscordChatExporter.Models public DateTime TimeStamp { get; } + public DateTime? EditedTimeStamp { get; } + public User Author { get; } public string Content { get; } public IReadOnlyList Attachments { get; } - public Message(string id, DateTime timeStamp, User author, string content, IEnumerable attachments) + public Message(string id, DateTime timeStamp, DateTime? editedTimeStamp, User author, string content, IEnumerable attachments) { Id = id; TimeStamp = timeStamp; + EditedTimeStamp = editedTimeStamp; Author = author; Content = content; Attachments = attachments.ToArray(); diff --git a/DiscordChatExporter/Services/DiscordApiService.cs b/DiscordChatExporter/Services/DiscordApiService.cs index 2a9469cc..319eac31 100644 --- a/DiscordChatExporter/Services/DiscordApiService.cs +++ b/DiscordChatExporter/Services/DiscordApiService.cs @@ -21,6 +21,7 @@ namespace DiscordChatExporter.Services // Get basic data string id = messageJson.Value("id"); var timeStamp = messageJson.Value("timestamp"); + var editedTimeStamp = messageJson.Value("edited_timestamp"); string content = messageJson.Value("content"); // Get author @@ -44,7 +45,7 @@ namespace DiscordChatExporter.Services } var author = new User(authorId, authorName, authorAvatarHash); - var message = new Message(id, timeStamp, author, content, attachments); + var message = new Message(id, timeStamp, editedTimeStamp, author, content, attachments); yield return message; } diff --git a/DiscordChatExporter/Services/ExportService.cs b/DiscordChatExporter/Services/ExportService.cs index 18659b48..0cee8933 100644 --- a/DiscordChatExporter/Services/ExportService.cs +++ b/DiscordChatExporter/Services/ExportService.cs @@ -155,7 +155,15 @@ namespace DiscordChatExporter.Services if (message.Content.IsNotBlank()) { string content = FormatMessageContent(message.Content); - messageBodyHtml.AppendChild(HtmlNode.CreateNode($"
{content}
")); + var contentHtml = messageBodyHtml.AppendChild(HtmlNode.CreateNode($"
{content}
")); + + // Is edited + if (message.EditedTimeStamp != null) + { + contentHtml.AppendChild( + HtmlNode.CreateNode( + $"(edited)")); + } } // Attachments diff --git a/DiscordChatExporter/Services/ExportTemplate.html b/DiscordChatExporter/Services/ExportTemplate.html index 3befc29d..e03a7923 100644 --- a/DiscordChatExporter/Services/ExportTemplate.html +++ b/DiscordChatExporter/Services/ExportTemplate.html @@ -62,6 +62,12 @@ font-size: 0.8em; font-weight: 200; } + span.msg-edited { + margin-left: 5px; + color: #b7bcbf; + font-size: 0.8em; + font-weight: 200; + } div.msg-content { padding-top: 5px; color: #939799;