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 (
|
import (
|
||||||
"encoding/json"
|
"encoding/json"
|
||||||
"fmt"
|
"fmt"
|
||||||
|
"strings"
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
"codeflow.dananglin.me.uk/apollo/enbas/internal/utilities"
|
"codeflow.dananglin.me.uk/apollo/enbas/internal/utilities"
|
||||||
|
@ -105,5 +106,22 @@ type Notification struct {
|
||||||
}
|
}
|
||||||
|
|
||||||
func (n Notification) Display(noColor bool) string {
|
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