diff options
Diffstat (limited to 'internal/typeutils/util.go')
-rw-r--r-- | internal/typeutils/util.go | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/internal/typeutils/util.go b/internal/typeutils/util.go index 40001e913..d11cccb2c 100644 --- a/internal/typeutils/util.go +++ b/internal/typeutils/util.go @@ -32,6 +32,7 @@ type statusInteractions struct { Muted bool Bookmarked bool Reblogged bool + Pinned bool } func (c *converter) interactionsWithStatusForAccount(ctx context.Context, s *gtsmodel.Status, requestingAccount *gtsmodel.Account) (*statusInteractions, error) { @@ -61,6 +62,12 @@ func (c *converter) interactionsWithStatusForAccount(ctx context.Context, s *gts return nil, fmt.Errorf("error checking if requesting account has bookmarked status: %s", err) } si.Bookmarked = bookmarked + + // The only time 'pinned' should be true is if the + // requesting account is looking at its OWN status. + if s.AccountID == requestingAccount.ID { + si.Pinned = !s.PinnedAt.IsZero() + } } return si, nil } |