about summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorReto Brunner <reto@labrat.space>2020-06-26 09:25:53 +0200
committerReto Brunner <reto@labrat.space>2020-06-26 09:25:53 +0200
commit8f1c6c46ff1de2d94377c0cf20fdc8bbdba59fef (patch)
tree5ebbdb98a2f28419c6cdaf193c5dc76ebaea5c45
parent91db250272502f9d1f1f388fa59f5782fd103815 (diff)
downloadaerc-8f1c6c46ff1de2d94377c0cf20fdc8bbdba59fef.tar.gz
Fix dates in reply/forward commands.
The data was passed around as a string for some reason, which led to time
precision loss and wrong dates being displayed.
Simply pass the time as is to fix that.
-rw-r--r--commands/msg/forward.go2
-rw-r--r--commands/msg/reply.go2
-rw-r--r--lib/templates/template.go5
-rw-r--r--models/models.go2
4 files changed, 5 insertions, 6 deletions
diff --git a/commands/msg/forward.go b/commands/msg/forward.go
index 28abbed..5f4da5c 100644
--- a/commands/msg/forward.go
+++ b/commands/msg/forward.go
@@ -77,7 +77,7 @@ func (forward) Execute(aerc *widgets.Aerc, args []string) error {
 	addTab := func() (*widgets.Composer, error) {
 		if template != "" {
 			original.From = models.FormatAddresses(msg.Envelope.From)
-			original.Date = msg.Envelope.Date.Format("Mon Jan 2, 2006 at 3:04 PM")
+			original.Date = msg.Envelope.Date
 		}
 
 		composer, err := widgets.NewComposer(aerc, acct, aerc.Config(), acct.AccountConfig(),
diff --git a/commands/msg/reply.go b/commands/msg/reply.go
index 28ce245..1deab31 100644
--- a/commands/msg/reply.go
+++ b/commands/msg/reply.go
@@ -133,7 +133,7 @@ func (reply) Execute(aerc *widgets.Aerc, args []string) error {
 	addTab := func() error {
 		if template != "" {
 			original.From = models.FormatAddresses(msg.Envelope.From)
-			original.Date = msg.Envelope.Date.Format("Mon Jan 2, 2006 at 3:04 PM")
+			original.Date = msg.Envelope.Date
 		}
 
 		composer, err := widgets.NewComposer(aerc, acct, aerc.Config(),
diff --git a/lib/templates/template.go b/lib/templates/template.go
index d16ac1f..4346111 100644
--- a/lib/templates/template.go
+++ b/lib/templates/template.go
@@ -46,7 +46,7 @@ func TestTemplateData() TemplateData {
 	}
 
 	original := models.OriginalMail{
-		Date:     time.Now().Format("Mon Jan 2, 2006 at 3:04 PM"),
+		Date:     time.Now(),
 		From:     "John Doe <john@example.com>",
 		Text:     "This is only a test text",
 		MIMEType: "text/plain",
@@ -56,7 +56,6 @@ func TestTemplateData() TemplateData {
 }
 
 func ParseTemplateData(defaults map[string]string, original models.OriginalMail) TemplateData {
-	originalDate, _ := time.Parse("Mon Jan 2, 2006 at 3:04 PM", original.Date)
 	td := TemplateData{
 		To:               parseAddressList(defaults["To"]),
 		Cc:               parseAddressList(defaults["Cc"]),
@@ -66,7 +65,7 @@ func ParseTemplateData(defaults map[string]string, original models.OriginalMail)
 		Subject:          defaults["Subject"],
 		OriginalText:     original.Text,
 		OriginalFrom:     parseAddressList(original.From),
-		OriginalDate:     originalDate,
+		OriginalDate:     original.Date,
 		OriginalMIMEType: original.MIMEType,
 	}
 	return td
diff --git a/models/models.go b/models/models.go
index 7654cf0..d61b774 100644
--- a/models/models.go
+++ b/models/models.go
@@ -170,7 +170,7 @@ func FormatAddresses(addrs []*Address) string {
 
 // OriginalMail is helper struct used for reply/forward
 type OriginalMail struct {
-	Date     string
+	Date     time.Time
 	From     string
 	Text     string
 	MIMEType string