checkpoint: initial design for notifications; need to think about the way forward
This commit is contained in:
parent
c2957c179d
commit
3a857fda4a
1 changed files with 19 additions and 1 deletions
|
@ -7,6 +7,7 @@ package model
|
|||
import (
|
||||
"encoding/json"
|
||||
"fmt"
|
||||
"strings"
|
||||
"time"
|
||||
|
||||
"codeflow.dananglin.me.uk/apollo/enbas/internal/utilities"
|
||||
|
@ -105,5 +106,22 @@ type Notification struct {
|
|||
}
|
||||
|
||||
func (n Notification) Display(noColor bool) string {
|
||||
return fmt.Sprintf(n.Type.MessageFormat(), utilities.DisplayNameFormat(noColor, n.Account.DisplayName) + " (@" + n.Account.Acct + ")")
|
||||
var builder strings.Builder
|
||||
|
||||
separator := "────────────────────────────────────────────────────────────────────────────────"
|
||||
|
||||
fmt.Fprintf(&builder,
|
||||
n.Type.MessageFormat(),
|
||||
utilities.DisplayNameFormat(noColor, n.Account.DisplayName)+" (@"+n.Account.Acct+")",
|
||||
)
|
||||
|
||||
if n.Status != nil {
|
||||
builder.WriteString("\n\n" + utilities.DisplayNameFormat(noColor, n.Status.Account.DisplayName) + " (@" + n.Status.Account.Acct + ")\n")
|
||||
builder.WriteString(utilities.WrapLines(utilities.ConvertHTMLToText(n.Status.Content), "\n", 80) + "\n\n")
|
||||
builder.WriteString(utilities.FieldFormat(noColor, "ID:") + " " + n.Status.ID + "\t" + utilities.FieldFormat(noColor, "Created at:") + " " + utilities.FormatTime(n.Status.CreatedAt) + "\n")
|
||||
}
|
||||
|
||||
builder.WriteString(separator + "\n")
|
||||
|
||||
return builder.String()
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue