diff --git a/webapp/components/CategoriesSelect/CategoriesSelect.vue b/webapp/components/CategoriesSelect/CategoriesSelect.vue index b7d71de2d..48852d009 100644 --- a/webapp/components/CategoriesSelect/CategoriesSelect.vue +++ b/webapp/components/CategoriesSelect/CategoriesSelect.vue @@ -17,6 +17,7 @@ diff --git a/webapp/components/Group/GroupForm.vue b/webapp/components/Group/GroupForm.vue new file mode 100644 index 000000000..d79349fda --- /dev/null +++ b/webapp/components/Group/GroupForm.vue @@ -0,0 +1,150 @@ + + + diff --git a/webapp/components/Group/GroupLink.vue b/webapp/components/Group/GroupLink.vue new file mode 100644 index 000000000..4fcc7983d --- /dev/null +++ b/webapp/components/Group/GroupLink.vue @@ -0,0 +1,15 @@ + + diff --git a/webapp/components/Group/GroupMember.vue b/webapp/components/Group/GroupMember.vue new file mode 100644 index 000000000..f522ee795 --- /dev/null +++ b/webapp/components/Group/GroupMember.vue @@ -0,0 +1,56 @@ + + diff --git a/webapp/components/Group/GroupTeaser.vue b/webapp/components/Group/GroupTeaser.vue new file mode 100644 index 000000000..33a50dca7 --- /dev/null +++ b/webapp/components/Group/GroupTeaser.vue @@ -0,0 +1,27 @@ + + diff --git a/webapp/constants/groups.js b/webapp/constants/groups.js index b4a6063f1..3abf0d12a 100644 --- a/webapp/constants/groups.js +++ b/webapp/constants/groups.js @@ -1,2 +1,4 @@ // this file is duplicated in `backend/src/constants/group.js` and `webapp/constants/group.js` +export const NAME_LENGTH_MIN = 3 +export const NAME_LENGTH_MAX = 50 export const DESCRIPTION_WITHOUT_HTML_LENGTH_MIN = 100 // with removed HTML tags diff --git a/webapp/locales/de.json b/webapp/locales/de.json index 9bbfb2c77..d799f00cb 100644 --- a/webapp/locales/de.json +++ b/webapp/locales/de.json @@ -374,6 +374,13 @@ "follow": "Folgen", "following": "Folge Ich" }, + "group": { + "group-created": "Die Gruppe wurde angelegt!", + "group-updated": "Die Gruppendaten wurden geändert!", + "newGroup": "Erstelle eine neue Gruppe", + "save": "Neue Gruppe anlegen", + "update": "Änderung speichern" + }, "hashtags-filter": { "clearSearch": "Suche löschen", "hashtag-search": "Suche nach #{hashtag}", @@ -751,6 +758,7 @@ "unmute": "Stummschaltung aufheben", "unmuted": "{name} ist nicht mehr stummgeschaltet" }, + "myGroups": "Meine Gruppen", "name": "Einstellungen", "notifications": { "name": "Benachrichtigungen", diff --git a/webapp/locales/en.json b/webapp/locales/en.json index 2ed13e832..af3bc0813 100644 --- a/webapp/locales/en.json +++ b/webapp/locales/en.json @@ -374,6 +374,13 @@ "follow": "Follow", "following": "Following" }, + "group": { + "group-created": "The group was created!", + "group-updated": "The group data has been changed.", + "newGroup": "Create a new Group", + "save": "Create new group", + "update": "Save change" + }, "hashtags-filter": { "clearSearch": "Clear search", "hashtag-search": "Searching for #{hashtag}", @@ -751,6 +758,7 @@ "unmute": "Unmute user", "unmuted": "{name} is unmuted again" }, + "myGroups": "My Groups", "name": "Settings", "notifications": { "name": "Notifications", diff --git a/webapp/pages/group/create.vue b/webapp/pages/group/create.vue new file mode 100644 index 000000000..1c95fffbc --- /dev/null +++ b/webapp/pages/group/create.vue @@ -0,0 +1,46 @@ + + + diff --git a/webapp/pages/group/edit/_id.vue b/webapp/pages/group/edit/_id.vue new file mode 100644 index 000000000..804905e94 --- /dev/null +++ b/webapp/pages/group/edit/_id.vue @@ -0,0 +1,63 @@ + + + diff --git a/webapp/pages/group/edit/_id/index.vue b/webapp/pages/group/edit/_id/index.vue new file mode 100644 index 000000000..7930f92fc --- /dev/null +++ b/webapp/pages/group/edit/_id/index.vue @@ -0,0 +1,40 @@ + + + diff --git a/webapp/pages/group/edit/_id/members.vue b/webapp/pages/group/edit/_id/members.vue new file mode 100644 index 000000000..3902137f0 --- /dev/null +++ b/webapp/pages/group/edit/_id/members.vue @@ -0,0 +1,16 @@ + + + diff --git a/webapp/pages/my-groups.vue b/webapp/pages/my-groups.vue new file mode 100644 index 000000000..49efa4aa1 --- /dev/null +++ b/webapp/pages/my-groups.vue @@ -0,0 +1,44 @@ + + diff --git a/webapp/pages/settings.vue b/webapp/pages/settings.vue index 360f1e969..660449fb6 100644 --- a/webapp/pages/settings.vue +++ b/webapp/pages/settings.vue @@ -39,6 +39,10 @@ export default { name: this.$t('settings.social-media.name'), path: `/settings/my-social-media`, }, + { + name: this.$t('settings.myGroups'), + path: `/my-groups`, + }, { name: this.$t('settings.muted-users.name'), path: `/settings/muted-users`,