diff options
author | 2023-11-11 10:15:04 +0000 | |
---|---|---|
committer | 2023-11-11 10:15:04 +0000 | |
commit | deaea100c37698893e97cf9cab159a3d220ac3cd (patch) | |
tree | f48abc96964652d1701d91c88a00174c8f1b0196 /internal/typeutils/internaltofrontend.go | |
parent | [feature] Media attachment placeholders (#2331) (diff) | |
download | gotosocial-deaea100c37698893e97cf9cab159a3d220ac3cd.tar.xz |
[bugfix] support endless polls, and misskey's' method of inferring expiry in closed polls (#2349)
Diffstat (limited to 'internal/typeutils/internaltofrontend.go')
-rw-r--r-- | internal/typeutils/internaltofrontend.go | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/internal/typeutils/internaltofrontend.go b/internal/typeutils/internaltofrontend.go index a7bcddac6..1a2c321f5 100644 --- a/internal/typeutils/internaltofrontend.go +++ b/internal/typeutils/internaltofrontend.go @@ -1367,6 +1367,7 @@ func (c *Converter) PollToAPIPoll(ctx context.Context, requester *gtsmodel.Accou voted *bool ownChoices *[]int isAuthor bool + expiresAt string emojis []apimodel.Emoji ) @@ -1428,6 +1429,11 @@ func (c *Converter) PollToAPIPoll(ctx context.Context, requester *gtsmodel.Accou } } + if !poll.ExpiresAt.IsZero() { + // Calculate poll expiry string (if set). + expiresAt = util.FormatISO8601(poll.ExpiresAt) + } + // TODO: emojis used in poll options. // For now init to empty slice to serialize as `[]`. // In future inherit from parent status. @@ -1435,7 +1441,7 @@ func (c *Converter) PollToAPIPoll(ctx context.Context, requester *gtsmodel.Accou return &apimodel.Poll{ ID: poll.ID, - ExpiresAt: util.FormatISO8601(poll.ExpiresAt), + ExpiresAt: expiresAt, Expired: poll.Closed(), Multiple: (*poll.Multiple), VotesCount: totalVotes, |