diff options
author | 2023-11-22 16:27:32 +0100 | |
---|---|---|
committer | 2023-11-22 16:27:32 +0100 | |
commit | 71e0aaee3c17df722c3474b335a807718184cce2 (patch) | |
tree | 8c0d70564aeadf6d41f1b2bf8995f06c593d88e1 | |
parent | [chore]: Bump github.com/go-jose/go-jose/v3 from 3.0.0 to 3.0.1 (#2375) (diff) | |
download | gotosocial-71e0aaee3c17df722c3474b335a807718184cce2.tar.xz |
[bugfix/chore] id poll options properly (#2379)
* aria-labels for polls, id poll options properly
* my bad, aria labels are for interactive elements
-rw-r--r-- | internal/api/model/poll.go | 3 | ||||
-rw-r--r-- | internal/typeutils/internaltofrontend.go | 1 | ||||
-rw-r--r-- | web/template/poll.tmpl | 4 |
3 files changed, 6 insertions, 2 deletions
diff --git a/internal/api/model/poll.go b/internal/api/model/poll.go index 7eddb66ef..3eb801998 100644 --- a/internal/api/model/poll.go +++ b/internal/api/model/poll.go @@ -113,6 +113,9 @@ type PollVoteRequest struct { type WebPollOption struct { PollOption + // ID of the parent poll. + PollID string + // Emojis contained on parent poll. Emojis []Emoji diff --git a/internal/typeutils/internaltofrontend.go b/internal/typeutils/internaltofrontend.go index 0668d44bb..cd53d9ae6 100644 --- a/internal/typeutils/internaltofrontend.go +++ b/internal/typeutils/internaltofrontend.go @@ -709,6 +709,7 @@ func (c *Converter) StatusToWebStatus( webPollOption := apimodel.WebPollOption{ PollOption: option, + PollID: poll.ID, Emojis: webStatus.Emojis, LanguageTag: webStatus.LanguageTag, VoteShare: voteShare, diff --git a/web/template/poll.tmpl b/web/template/poll.tmpl index bfc31a9dc..7aa323e4f 100644 --- a/web/template/poll.tmpl +++ b/web/template/poll.tmpl @@ -38,8 +38,8 @@ <ul class="poll-options"> {{- range $index, $pollOption := .WebPollOptions }} <li class="poll-option"> - <label aria-hidden="true" for="option-{{- increment $index -}}" lang="{{- .LanguageTag.TagStr -}}">{{- emojify .Emojis (noescape $pollOption.Title) -}}</label> - <meter aria-hidden="true" id="option-{{- increment $index -}}" min="0" max="100" value="{{- $pollOption.VoteShare -}}">{{- $pollOption.VoteShare -}}%</meter> + <label aria-hidden="true" for="poll-{{- $pollOption.PollID -}}-option-{{- increment $index -}}" lang="{{- .LanguageTag.TagStr -}}">{{- emojify .Emojis (noescape $pollOption.Title) -}}</label> + <meter aria-hidden="true" id="poll-{{- $pollOption.PollID -}}-option-{{- increment $index -}}" min="0" max="100" value="{{- $pollOption.VoteShare -}}">{{- $pollOption.VoteShare -}}%</meter> <div class="sr-only">Option {{ increment $index }}: <span lang="{{ .LanguageTag.TagStr }}">{{ emojify .Emojis (noescape $pollOption.Title) -}}</span></div> <div class="poll-vote-summary"> <span class="poll-vote-share">{{- $pollOption.VoteShareStr -}}%</span> |