diff options
author | ThibG <thib@sitedethib.com> | 2019-09-28 19:41:36 +0200 |
---|---|---|
committer | Thibaut Girka <thib@sitedethib.com> | 2019-09-30 15:58:29 +0200 |
commit | 98cc81c0e28144eda90a2d18198e7708b5e3d4b7 (patch) | |
tree | 919da94e841430c6dbf18319f2af4b4874d5caaa | |
parent | 8a63d659acea217abc3dbfc5b9b277ac77f648df (diff) |
[Glitch] Fix vote checkmark in poll results
Port b0cda7a504655f6ced33802af67cabb6f3e46e19 to glitch-soc Signed-off-by: Thibaut Girka <thib@sitedethib.com>
-rw-r--r-- | app/javascript/flavours/glitch/components/poll.js | 13 | ||||
-rw-r--r-- | app/javascript/flavours/glitch/styles/polls.scss | 6 |
2 files changed, 10 insertions, 9 deletions
diff --git a/app/javascript/flavours/glitch/components/poll.js b/app/javascript/flavours/glitch/components/poll.js index e6cc809e0..2128bff61 100644 --- a/app/javascript/flavours/glitch/components/poll.js +++ b/app/javascript/flavours/glitch/components/poll.js @@ -14,6 +14,7 @@ import Icon from 'flavours/glitch/components/icon'; const messages = defineMessages({ closed: { id: 'poll.closed', defaultMessage: 'Closed' }, + voted: { id: 'poll.voted', defaultMessage: 'You voted for this answer', description: 'Tooltip of the "voted" checkmark in polls' }, }); const makeEmojiMap = record => record.get('emojis').reduce((obj, emoji) => { @@ -100,11 +101,11 @@ class Poll extends ImmutablePureComponent { }; renderOption (option, optionIndex, showResults) { - const { poll, disabled } = this.props; - const percent = poll.get('votes_count') === 0 ? 0 : (option.get('votes_count') / poll.get('votes_count')) * 100; - const leading = poll.get('options').filterNot(other => other.get('title') === option.get('title')).every(other => option.get('votes_count') > other.get('votes_count')); - const active = !!this.state.selected[`${optionIndex}`]; - const voted = option.get('voted') || (poll.get('own_votes') && poll.get('own_votes').includes(optionIndex)); + const { poll, disabled, intl } = this.props; + const percent = poll.get('votes_count') === 0 ? 0 : (option.get('votes_count') / poll.get('votes_count')) * 100; + const leading = poll.get('options').filterNot(other => other.get('title') === option.get('title')).every(other => option.get('votes_count') > other.get('votes_count')); + const active = !!this.state.selected[`${optionIndex}`]; + const voted = option.get('voted') || (poll.get('own_votes') && poll.get('own_votes').includes(optionIndex)); let titleEmojified = option.get('title_emojified'); if (!titleEmojified) { @@ -134,7 +135,7 @@ class Poll extends ImmutablePureComponent { {!showResults && <span className={classNames('poll__input', { checkbox: poll.get('multiple'), active })} />} {showResults && <span className='poll__number'> - {!!voted && <Icon id='check' className='poll__vote__mark' />} + {!!voted && <Icon id='check' className='poll__vote__mark' title={intl.formatMessage(messages.voted)} />} {Math.round(percent)}% </span>} diff --git a/app/javascript/flavours/glitch/styles/polls.scss b/app/javascript/flavours/glitch/styles/polls.scss index d1f69cd69..95d8e510c 100644 --- a/app/javascript/flavours/glitch/styles/polls.scss +++ b/app/javascript/flavours/glitch/styles/polls.scss @@ -102,18 +102,18 @@ &__number { display: inline-block; - width: 48px; + width: 52px; font-weight: 700; padding: 0 10px; + padding-left: 8px; text-align: right; margin-top: auto; margin-bottom: auto; - flex: 0 0 48px; + flex: 0 0 52px; } &__vote__mark { float: left; - color: $valid-value-color; line-height: 18px; } |