Compare commits

..

3 commits

3 changed files with 26 additions and 6 deletions

View file

@ -32,7 +32,7 @@ func (p Printer) PrintAccount(account model.Account, relationship *model.Account
builder.WriteString("\n\n" + p.headerFormat("METADATA:")) builder.WriteString("\n\n" + p.headerFormat("METADATA:"))
for _, field := range account.Fields { for _, field := range account.Fields {
builder.WriteString("\n" + p.fieldFormat(field.Name) + ": " + field.Value) builder.WriteString("\n" + p.fieldFormat(field.Name) + ": " + utilities.ConvertHTMLToText(field.Value))
} }
builder.WriteString("\n\n" + p.headerFormat("ACCOUNT URL:")) builder.WriteString("\n\n" + p.headerFormat("ACCOUNT URL:"))

View file

@ -14,6 +14,7 @@ import (
const ( const (
minTerminalWidth = 40 minTerminalWidth = 40
noMediaDescription = "This media has no description."
) )
type theme struct { type theme struct {

View file

@ -22,6 +22,24 @@ func (p Printer) PrintStatus(status model.Status) {
builder.WriteString("\n\n" + p.headerFormat("CONTENT:")) builder.WriteString("\n\n" + p.headerFormat("CONTENT:"))
builder.WriteString(utilities.WrapLines(utilities.ConvertHTMLToText(status.Content), "\n", p.maxTerminalWidth)) builder.WriteString(utilities.WrapLines(utilities.ConvertHTMLToText(status.Content), "\n", p.maxTerminalWidth))
// Details of media attachments (if any).
if len(status.MediaAttachments) > 0 {
builder.WriteString("\n\n" + p.headerFormat("MEDIA ATTACHMENTS:"))
for ind, media := range status.MediaAttachments {
builder.WriteString("\n\n[" + strconv.Itoa(ind) + "] " + p.fieldFormat("ID:") + " " + media.ID)
builder.WriteString("\n " + p.fieldFormat("Type:") + " " + media.Type)
description := media.Description
if description == "" {
description = noMediaDescription
}
builder.WriteString("\n " + p.fieldFormat("Description:") + " " + description)
builder.WriteString("\n " + p.fieldFormat("Media URL:") + " " + media.URL)
}
}
// If a poll exists in a status, write the contents to the builder. // If a poll exists in a status, write the contents to the builder.
if status.Poll != nil { if status.Poll != nil {
builder.WriteString(p.pollOptions(*status.Poll)) builder.WriteString(p.pollOptions(*status.Poll))
@ -82,11 +100,12 @@ func (p Printer) PrintStatusList(list model.StatusList) {
for _, media := range status.MediaAttachments { for _, media := range status.MediaAttachments {
builder.WriteString("\n\n" + p.imageIcon + " Media (" + media.ID + ")" + "\n ") builder.WriteString("\n\n" + p.imageIcon + " Media (" + media.ID + ")" + "\n ")
if media.Description == "" { description := media.Description
builder.WriteString("This media has no description.") if description == "" {
} else { description = noMediaDescription
builder.WriteString(utilities.WrapLines(media.Description, "\n ", p.maxTerminalWidth-3))
} }
builder.WriteString(utilities.WrapLines(description, "\n ", p.maxTerminalWidth-3))
} }
builder.WriteString( builder.WriteString(