From deaea100c37698893e97cf9cab159a3d220ac3cd Mon Sep 17 00:00:00 2001 From: kim <89579420+NyaaaWhatsUpDoc@users.noreply.github.com> Date: Sat, 11 Nov 2023 10:15:04 +0000 Subject: [bugfix] support endless polls, and misskey's' method of inferring expiry in closed polls (#2349) --- internal/typeutils/internaltofrontend.go | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'internal/typeutils/internaltofrontend.go') 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, -- cgit v1.2.3