mirror of
https://github.com/Tyrrrz/DiscordChatExporter.git
synced 2025-05-30 06:25:22 -04:00
parent
df811d0b1a
commit
e4f0b8193f
6 changed files with 36 additions and 8 deletions
|
@ -47,7 +47,7 @@ namespace DiscordChatExporter.Cli.ViewModels
|
||||||
var mentionables = await _dataService.GetMentionablesAsync(token, guild.Id, messages);
|
var mentionables = await _dataService.GetMentionablesAsync(token, guild.Id, messages);
|
||||||
|
|
||||||
// Create log
|
// Create log
|
||||||
var log = new ChatLog(guild, channel, messageGroups, mentionables);
|
var log = new ChatLog(guild, channel, from, to, messageGroups, mentionables);
|
||||||
|
|
||||||
// Export
|
// Export
|
||||||
_exportService.Export(format, filePath, log);
|
_exportService.Export(format, filePath, log);
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
using System.Collections.Generic;
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
using System.Linq;
|
using System.Linq;
|
||||||
|
|
||||||
namespace DiscordChatExporter.Core.Models
|
namespace DiscordChatExporter.Core.Models
|
||||||
|
@ -9,17 +10,23 @@ namespace DiscordChatExporter.Core.Models
|
||||||
|
|
||||||
public Channel Channel { get; }
|
public Channel Channel { get; }
|
||||||
|
|
||||||
|
public DateTime? From { get; }
|
||||||
|
|
||||||
|
public DateTime? To { get; }
|
||||||
|
|
||||||
public IReadOnlyList<MessageGroup> MessageGroups { get; }
|
public IReadOnlyList<MessageGroup> MessageGroups { get; }
|
||||||
|
|
||||||
public int TotalMessageCount => MessageGroups.Sum(g => g.Messages.Count);
|
public int TotalMessageCount => MessageGroups.Sum(g => g.Messages.Count);
|
||||||
|
|
||||||
public Mentionables Mentionables { get; }
|
public Mentionables Mentionables { get; }
|
||||||
|
|
||||||
public ChatLog(Guild guild, Channel channel, IReadOnlyList<MessageGroup> messageGroups,
|
public ChatLog(Guild guild, Channel channel, DateTime? from, DateTime? to,
|
||||||
Mentionables mentionables)
|
IReadOnlyList<MessageGroup> messageGroups, Mentionables mentionables)
|
||||||
{
|
{
|
||||||
Guild = guild;
|
Guild = guild;
|
||||||
Channel = channel;
|
Channel = channel;
|
||||||
|
From = from;
|
||||||
|
To = to;
|
||||||
MessageGroups = messageGroups;
|
MessageGroups = messageGroups;
|
||||||
Mentionables = mentionables;
|
Mentionables = mentionables;
|
||||||
}
|
}
|
||||||
|
|
|
@ -17,8 +17,24 @@
|
||||||
<div class="info__metadata">
|
<div class="info__metadata">
|
||||||
<div class="info__guild-name">{{ Guild.Name | HtmlEncode }}</div>
|
<div class="info__guild-name">{{ Guild.Name | HtmlEncode }}</div>
|
||||||
<div class="info__channel-name">{{ Channel.Name | HtmlEncode }}</div>
|
<div class="info__channel-name">{{ Channel.Name | HtmlEncode }}</div>
|
||||||
<div class="info__channel-topic">{{ Channel.Topic | HtmlEncode }}</div>
|
|
||||||
|
{{ if Channel.Topic }}
|
||||||
|
<div class="info__channel-topic">{{ Channel.Topic | HtmlEncode }}</div>
|
||||||
|
{{ end }}
|
||||||
|
|
||||||
<div class="info__channel-message-count">{{ TotalMessageCount | Format "N0" }} messages</div>
|
<div class="info__channel-message-count">{{ TotalMessageCount | Format "N0" }} messages</div>
|
||||||
|
|
||||||
|
{{ if From || To }}
|
||||||
|
<div class="info__channel-date-range">
|
||||||
|
{{ if From && To }}
|
||||||
|
Between {{ From | FormatDate }} and {{ To | FormatDate }}
|
||||||
|
{{ else if From }}
|
||||||
|
After {{ From | FormatDate }}
|
||||||
|
{{ else if To }}
|
||||||
|
Before {{ To | FormatDate }}
|
||||||
|
{{ end }}
|
||||||
|
</div>
|
||||||
|
{{ end }}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
|
@ -65,8 +65,8 @@ img {
|
||||||
}
|
}
|
||||||
|
|
||||||
.info__guild-icon {
|
.info__guild-icon {
|
||||||
max-width: 64px;
|
max-width: 88px;
|
||||||
max-height: 64px;
|
max-height: 88px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.info__metadata {
|
.info__metadata {
|
||||||
|
@ -90,6 +90,10 @@ img {
|
||||||
margin-top: 2px;
|
margin-top: 2px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.info__channel-date-range {
|
||||||
|
margin-top: 2px;
|
||||||
|
}
|
||||||
|
|
||||||
/* === CHATLOG === */
|
/* === CHATLOG === */
|
||||||
|
|
||||||
.chatlog {
|
.chatlog {
|
||||||
|
|
|
@ -3,6 +3,7 @@ Guild: {{ Guild.Name }}
|
||||||
Channel: {{ Channel.Name }}
|
Channel: {{ Channel.Name }}
|
||||||
Topic: {{ Channel.Topic }}
|
Topic: {{ Channel.Topic }}
|
||||||
Messages: {{ TotalMessageCount | Format "N0" }}
|
Messages: {{ TotalMessageCount | Format "N0" }}
|
||||||
|
Range: {{ if From }}{{ From | FormatDate }} {{ end }}{{ if From || To }}->{{ end }}{{ if To }} {{ To | FormatDate }}{{ end }}
|
||||||
==============================================================
|
==============================================================
|
||||||
|
|
||||||
{{~ for group in MessageGroups ~}}
|
{{~ for group in MessageGroups ~}}
|
||||||
|
|
|
@ -237,7 +237,7 @@ namespace DiscordChatExporter.Gui.ViewModels
|
||||||
var mentionables = await _dataService.GetMentionablesAsync(token, guild.Id, messages);
|
var mentionables = await _dataService.GetMentionablesAsync(token, guild.Id, messages);
|
||||||
|
|
||||||
// Create log
|
// Create log
|
||||||
var log = new ChatLog(guild, channel, messageGroups, mentionables);
|
var log = new ChatLog(guild, channel, from, to, messageGroups, mentionables);
|
||||||
|
|
||||||
// Export
|
// Export
|
||||||
_exportService.Export(format, filePath, log);
|
_exportService.Export(format, filePath, log);
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue