From ca6c7b8e5f84d6f10450373e959ec7d31307e006 Mon Sep 17 00:00:00 2001 From: Alys Date: Sun, 1 Oct 2017 22:15:44 +1000 Subject: [PATCH] various fixes: group leader's name at top of edit drop-down; Members List; etc (#9117) * fix text describing location of subscription/gem gift box * disable Copy As To-Do in Tavern, guilds, party because it's not working * change members label on group pages to Member List * remove outdated info about seeing number of Gems available to buy * allow Danger Zone to be seen by players without local authentication Also add an hr because the Danger Zone heading was crammed up against the button above it. * put current group leader's name at top of Leader change drop-down --- .../client/components/chat/chatMessages.vue | 18 ++++++++++-------- website/client/components/groups/group.vue | 2 +- .../components/groups/groupFormModal.vue | 13 ++++++++++++- website/client/components/settings/site.vue | 13 +++++++------ website/common/locales/en/groups.json | 1 + website/common/locales/en/subscriber.json | 4 ++-- 6 files changed, 33 insertions(+), 18 deletions(-) diff --git a/website/client/components/chat/chatMessages.vue b/website/client/components/chat/chatMessages.vue index 9396e2e809..40532a5e0c 100644 --- a/website/client/components/chat/chatMessages.vue +++ b/website/client/components/chat/chatMessages.vue @@ -36,10 +36,11 @@ .svg-icon(v-html="icons.like") span(v-if='!msg.likes[user._id]') {{ $t('like') }} span(v-if='msg.likes[user._id]') {{ $t('liked') }} - span.action(v-if='!inbox', @click='copyAsTodo(msg)') - .svg-icon(v-html="icons.copy") - | {{$t('copyAsTodo')}} - // @TODO make copyAsTodo work in the inbox + // @TODO make copyAsTodo work in Tavern, guilds, party (inbox can be done later) + span.action(v-if='!inbox', @click='copyAsTodo(msg)') + .svg-icon(v-html="icons.copy") + | {{$t('copyAsTodo')}} + // @TODO make copyAsTodo work in the inbox span.action(v-if='!inbox && user.flags.communityGuidelinesAccepted', @click='report(msg)') .svg-icon(v-html="icons.report") | {{$t('report')}} @@ -72,10 +73,11 @@ .svg-icon(v-html="icons.like") span(v-if='!msg.likes[user._id]') {{ $t('like') }} span(v-if='msg.likes[user._id]') {{ $t('liked') }} - span.action(v-if='!inbox', @click='copyAsTodo(msg)') - .svg-icon(v-html="icons.copy") - | {{$t('copyAsTodo')}} - // @TODO make copyAsTodo work in the inbox + // @TODO make copyAsTodo work in Tavern, guilds, party (inbox can be done later) + span.action(v-if='!inbox', @click='copyAsTodo(msg)') + .svg-icon(v-html="icons.copy") + | {{$t('copyAsTodo')}} + // @TODO make copyAsTodo work in the inbox span.action(v-if='user.flags.communityGuidelinesAccepted', @click='report(msg)') span.action(v-if='!inbox && user.flags.communityGuidelinesAccepted', @click='report(msg)') .svg-icon(v-html="icons.report") diff --git a/website/client/components/groups/group.vue b/website/client/components/groups/group.vue index 8423983972..6ab7c7d95e 100644 --- a/website/client/components/groups/group.vue +++ b/website/client/components/groups/group.vue @@ -18,7 +18,7 @@ .svg-icon.shield(v-html="icons.silverGuildBadgeIcon", v-if='group.memberCount > 100 && group.memberCount < 999') .svg-icon.shield(v-html="icons.bronzeGuildBadgeIcon", v-if='group.memberCount < 100') span.number {{ group.memberCount | abbrNum }} - div(v-once) {{ $t('members') }} + div(v-once) {{ $t('memberList') }} .col-4(v-if='!isParty') .item-with-icon .svg-icon.gem(v-html="icons.gem") diff --git a/website/client/components/groups/groupFormModal.vue b/website/client/components/groups/groupFormModal.vue index 3b81c0bb2b..bb68fd0e4a 100644 --- a/website/client/components/groups/groupFormModal.vue +++ b/website/client/components/groups/groupFormModal.vue @@ -9,7 +9,7 @@ label strong(v-once) {{$t('guildOrPartyLeader')}} * select.form-control(v-model="workingGroup.newLeader") - option(v-for='member in members', :value="member._id") {{ member.profile.name }} + option(v-for='potentialLeader in potentialLeaders', :value="potentialLeader._id") {{ potentialLeader.name }} .form-group(v-if='!this.workingGroup.id') label @@ -316,6 +316,17 @@ export default { isParty () { return this.workingGroup.type === 'party'; }, + potentialLeaders () { + let leaders = [{ _id: this.user._id, name: this.user.profile.name }]; + // @TODO consider pushing all recent posters to the top of the list if they are guild members - more likely to be the ones the leader wants to see (and then ignore them in the while below) + let i = 0; + while (this.members[i]) { + let memb = this.members[i]; + i++; + if (memb._id !== this.user._id) leaders.push({_id: memb._id, name: memb.profile.name}); + } + return leaders; + }, }, watch: { editingGroup () { diff --git a/website/client/components/settings/site.vue b/website/client/components/settings/site.vue index 73691dfb1c..b94527b153 100644 --- a/website/client/components/settings/site.vue +++ b/website/client/components/settings/site.vue @@ -169,14 +169,15 @@ .form-group input.form-control(type='password', :placeholder="$t('confirmPass')", v-model='passwordUpdates.confirmPassword') button.btn.btn-primary(type='submit', @click='changeUser("password", passwordUpdates)') {{ $t('submit') }} + hr + div + h5 {{ $t('dangerZone') }} div - h5 {{ $t('dangerZone') }} - div - button.btn.btn-danger(@click='openResetModal()', - popover-trigger='mouseenter', popover-placement='right', v-b-popover.hover.auto="$t('resetAccPop')") {{ $t('resetAccount') }} - button.btn.btn-danger(@click='openDeleteModal()', - popover-trigger='mouseenter', v-b-popover.hover.auto="$t('deleteAccPop')") {{ $t('deleteAccount') }} + button.btn.btn-danger(@click='openResetModal()', + popover-trigger='mouseenter', popover-placement='right', v-b-popover.hover.auto="$t('resetAccPop')") {{ $t('resetAccount') }} + button.btn.btn-danger(@click='openDeleteModal()', + popover-trigger='mouseenter', v-b-popover.hover.auto="$t('deleteAccPop')") {{ $t('deleteAccount') }}