Implement 'categories' on group profile, first step

This commit is contained in:
Wolfgang Huß 2022-09-16 05:25:31 +02:00
parent e570d0773a
commit 4f68d9c7c3
3 changed files with 38 additions and 11 deletions

View File

@ -383,6 +383,7 @@
"regional": "Regionale Gruppe" "regional": "Regionale Gruppe"
}, },
"actionRadius": "Aktionsradius", "actionRadius": "Aktionsradius",
"categories": "Thema ::: Themen",
"foundation": "Gründung", "foundation": "Gründung",
"goal": "Ziel der Gruppe", "goal": "Ziel der Gruppe",
"group-created": "Die Gruppe wurde angelegt!", "group-created": "Die Gruppe wurde angelegt!",
@ -396,7 +397,7 @@
"message": "Eine Gruppe zu verlassen ist möglicherweise nicht rückgängig zu machen!<br>Gruppe <b>„{name}“</b> verlassen!", "message": "Eine Gruppe zu verlassen ist möglicherweise nicht rückgängig zu machen!<br>Gruppe <b>„{name}“</b> verlassen!",
"title": "Möchtest du wirklich die Gruppe verlassen?" "title": "Möchtest du wirklich die Gruppe verlassen?"
}, },
"membersCount": "Mitglieder", "membersCount": "Mitglied ::: Mitglieder",
"membersListTitle": "Gruppenmitglieder", "membersListTitle": "Gruppenmitglieder",
"newGroup": "Erstelle eine neue Gruppe", "newGroup": "Erstelle eine neue Gruppe",
"role": "Deine Rolle in der Gruppe", "role": "Deine Rolle in der Gruppe",

View File

@ -383,6 +383,7 @@
"regional": "Regional Group" "regional": "Regional Group"
}, },
"actionRadius": "Action radius", "actionRadius": "Action radius",
"categories": "Topic ::: Topics",
"foundation": "Foundation", "foundation": "Foundation",
"goal": "Goal of group", "goal": "Goal of group",
"group-created": "The group was created!", "group-created": "The group was created!",
@ -396,7 +397,7 @@
"message": "Leaving a group may be irreversible!<br>Leave group <b>“{name}”</b>!", "message": "Leaving a group may be irreversible!<br>Leave group <b>“{name}”</b>!",
"title": "Do you really want to leave the group?" "title": "Do you really want to leave the group?"
}, },
"membersCount": "Members", "membersCount": "Member ::: Members",
"membersListTitle": "Group Members", "membersListTitle": "Group Members",
"newGroup": "Create a new Group", "newGroup": "Create a new Group",
"role": "Your role in the group", "role": "Your role in the group",

View File

@ -53,7 +53,7 @@
<!-- Group members count --> <!-- Group members count -->
<ds-flex-item> <ds-flex-item>
<client-only> <client-only>
<ds-number :label="$t('group.membersCount')"> <ds-number :label="$t('group.membersCount', {}, groupMembers.length)">
<count-to <count-to
slot="count" slot="count"
:start-val="membersCountStartValue" :start-val="membersCountStartValue"
@ -117,7 +117,7 @@
</ds-text> </ds-text>
<div class="chip" align="center"> <div class="chip" align="center">
<ds-chip color="primary"> <ds-chip color="primary">
{{ group ? $t('group.roles.' + group.myRole) : '' }} {{ group && group.myRole ? $t('group.roles.' + group.myRole) : '' }}
</ds-chip> </ds-chip>
</div> </div>
</template> </template>
@ -127,7 +127,7 @@
</ds-text> </ds-text>
<div class="chip" align="center"> <div class="chip" align="center">
<ds-chip color="primary"> <ds-chip color="primary">
{{ group ? $t('group.types.' + group.groupType) : '' }} {{ group && group.groupType ? $t('group.types.' + group.groupType) : '' }}
</ds-chip> </ds-chip>
</div> </div>
<!-- Group action radius --> <!-- Group action radius -->
@ -136,22 +136,46 @@
</ds-text> </ds-text>
<div class="chip" align="center"> <div class="chip" align="center">
<ds-chip color="primary"> <ds-chip color="primary">
{{ group ? $t('group.actionRadii.' + group.actionRadius) : '' }} {{
group && group.actionRadius ? $t('group.actionRadii.' + group.actionRadius) : ''
}}
</ds-chip> </ds-chip>
</div> </div>
</ds-space> </ds-space>
<template v-if="group.about"> <hr v-if="(group && group.about) || categoriesActive" />
<hr /> <ds-space margin-top="small" margin-bottom="small">
<!-- Group goal --> <!-- Group goal -->
<ds-space margin-top="small" margin-bottom="small"> <template v-if="group && group.about">
<ds-text class="centered-text hyphenate-text" color="soft" size="small"> <ds-text class="centered-text hyphenate-text" color="soft" size="small">
{{ $t('group.goal') }} {{ $t('group.goal') }}
</ds-text> </ds-text>
<div class="chip" align="center"> <div class="chip" align="center">
<ds-chip>{{ group ? group.about : '' }}</ds-chip> <ds-chip>{{ group ? group.about : '' }}</ds-chip>
</div> </div>
</ds-space> </template>
</template> <!-- Group categories -->
<template v-if="categoriesActive">
<ds-text class="centered-text hyphenate-text" color="soft" size="small">
{{
$t(
'group.categories',
{},
group && group.categories ? group.categories.length : 0,
)
}}
</ds-text>
<div class="categories">
<ds-space margin="xx-large" />
<ds-space margin="xx-small" />
<!-- <hc-category
v-for="category in post.categories"
:key="category.id"
:icon="category.icon"
:name="$t(`contribution.category.name.${category.slug}`)"
/> -->
</div>
</template>
</ds-space>
</base-card> </base-card>
<ds-space /> <ds-space />
<ds-heading tag="h3" soft style="text-align: center; margin-bottom: 10px"> <ds-heading tag="h3" soft style="text-align: center; margin-bottom: 10px">
@ -327,6 +351,7 @@ export default {
data() { data() {
// const filter = tabToFilterMapping({ tab: 'post', id: this.$route.params.id }) // const filter = tabToFilterMapping({ tab: 'post', id: this.$route.params.id })
return { return {
categoriesActive: this.$env.CATEGORIES_ACTIVE,
Group: [], Group: [],
GroupMembers: [], GroupMembers: [],
posts: [], posts: [],