134 lines
9.0 KiB
Markdown
Raw Normal View History

---
title : "Communities"
description: ""
lead: ""
date: 2020-10-06T08:48:23+00:00
lastmod: 2020-10-06T08:48:23+00:00
draft: false
images: []
menu:
dev:
parent: "chat"
toc: true
---
## Enabling communities
**Key source files**
- [`ui/app/AppLayouts/Profile/Sections/AdvancedContainer.qml`](https://github.com/status-im/status-desktop/blob/358091a8eb19f36c9843b42d61473e35ea87d05b/ui/app/AppLayouts/Profile/Sections/AdvancedContainer.qml#L101)
- [`ui/app/AppMain.qml`](https://github.com/status-im/status-desktop/blob/358091a8eb19f36c9843b42d61473e35ea87d05b/ui/app/AppMain.qml#L398)
- [`ui/app/AppLayouts/Chat/ContactsColumn/AddChat.qml`](https://github.com/status-im/status-desktop/blob/358091a8eb19f36c9843b42d61473e35ea87d05b/ui/app/AppLayouts/Chat/ContactsColumn/AddChat.qml#L55)
## General
### Joining a community
#### join community popup
- [`ui/app/AppLayouts/Chat/ContactsColumn/AddChat.qml`](https://github.com/status-im/status-desktop/blob/358091a8eb19f36c9843b42d61473e35ea87d05b/ui/app/AppLayouts/Chat/ContactsColumn/AddChat.qml#L55)
- [`ui/app/AppLayouts/Chat/ContactsColumn.qml`](https://github.com/status-im/status-desktop/blob/358091a8eb19f36c9843b42d61473e35ea87d05b/ui/app/AppLayouts/Chat/ContactsColumn.qml#L58)
- [`ui/app/AppLayouts/Chat/CommunityComponents/CommunitiesPopup.qml`](https://github.com/status-im/status-desktop/blob/358091a8eb19f36c9843b42d61473e35ea87d05b/ui/app/AppLayouts/Chat/CommunityComponents/CommunitiesPopup.qml#L10)
#### listing communities
- [`ui/app/AppLayouts/Chat/CommunityComponents/CommunitiesPopup.qml`](https://github.com/status-im/status-desktop/blob/358091a8eb19f36c9843b42d61473e35ea87d05b/ui/app/AppLayouts/Chat/CommunityComponents/CommunitiesPopup.qml#L138)
- [`src/app/chat/view.nim`](https://github.com/status-im/status-desktop/blob/358091a8eb19f36c9843b42d61473e35ea87d05b/src/app/chat/view.nim#L166)
- [`src/app/chat/views/community_list.nim`](https://github.com/status-im/status-desktop/blob/358091a8eb19f36c9843b42d61473e35ea87d05b/src/app/chat/views/community_list.nim#L40)
- [`src/app/chat/views/communities.nim`](https://github.com/status-im/status-desktop/blob/358091a8eb19f36c9843b42d61473e35ea87d05b/src/app/chat/views/communities.nim#L109)
- [`src/status/chat.nim#](https://github.com/status-im/status-desktop/blob/358091a8eb19f36c9843b42d61473e35ea87d05b/src/status/chat.nim#L441)
- [`src/status/libstatus/chat.nim`](https://github.com/status-im/status-desktop/blob/358091a8eb19f36c9843b42d61473e35ea87d05b/src/status/libstatus/chat.nim#L272)
#### selecting a community
- [`ui/app/AppLayouts/Chat/CommunityComponents/CommunitiesPopup.qml`](https://github.com/status-im/status-desktop/blob/358091a8eb19f36c9843b42d61473e35ea87d05b/ui/app/AppLayouts/Chat/CommunityComponents/CommunitiesPopup.qml#L212)
- [`src/app/chat/view.nim`](https://github.com/status-im/status-desktop/blob/358091a8eb19f36c9843b42d61473e35ea87d05b/src/app/chat/view.nim#L166)
#### joining a community
### Creating a community
- [`ui/app/AppLayouts/Chat/ContactsColumn.qml`](https://github.com/status-im/status-desktop/blob/358091a8eb19f36c9843b42d61473e35ea87d05b/ui/app/AppLayouts/Chat/ContactsColumn.qml#L67)
#### uploading a thumbnail image
#### setting community color
#### setting membership requirement
### Leaving a community
## Manage Community
### Creating Channels
2021-05-18 09:31:18 -04:00
### Categories
2021-05-18 14:38:49 -04:00
Channels within a community might be organized in categories. Only the community admin might create/edit/delete a category. Creating a channel in a category works by calling `wakuext_reorderCommunityChat` after the chat is created, then the `Chat` is immediatly assigned a `categoryId`.
#### Creating Categories
2021-05-18 09:31:18 -04:00
2021-05-18 14:38:49 -04:00
**Key source files**
- [`src/app/chat/views/category_list.nim`](https://github.com/status-im/status-desktop/blob/3f56db35bac7cc3b0f3769ef1afbd5060b10d03f/src/app/chat/views/category_list.nim#L58-L62)
- [`src/app/chat/views/communities.nim`](https://github.com/status-im/status-desktop/blob/3f56db35bac7cc3b0f3769ef1afbd5060b10d03f/src/app/chat/views/communities.nim#L247-L256)
- [`src/app/chat/views/community_item`](https://github.com/status-im/status-desktop/blob/489e5f42b6de5dca706eb690bd65d5c19ee1dfd8/src/app/chat/views/community_item.nim#L156-L159)
- [`src/app/chat/views/community_list.nim`](https://github.com/status-im/status-desktop/blob/489e5f42b6de5dca706eb690bd65d5c19ee1dfd8/src/app/chat/views/community_list.nim#L132-L134)
- [`src/status/chat.nim`](https://github.com/status-im/status-desktop/blob/489e5f42b6de5dca706eb690bd65d5c19ee1dfd8/src/status/chat.nim#L472-L473)
- [`src/status/libstatus/chat.nim`](https://github.com/status-im/status-desktop/blob/489e5f42b6de5dca706eb690bd65d5c19ee1dfd8/src/status/libstatus/chat.nim#L317-L331)
- [`src/status/signals/messages.nim`](https://github.com/status-im/status-desktop/blob/489e5f42b6de5dca706eb690bd65d5c19ee1dfd8/src/status/signals/messages.nim#L200-L215)
- [`ui/app/AppLayouts/Chat/CommunityComponents/CategoryList.qml`](https://github.com/status-im/status-desktop/blob/3f56db35bac7cc3b0f3769ef1afbd5060b10d03f/ui/app/AppLayouts/Chat/CommunityComponents/CategoryList.qml)
- [`ui/app/AppLayouts/Chat/CommunityComponents/CreateCategoryPopup.qml`](https://github.com/status-im/status-desktop/blob/e5b42b3fb568b955fb05fbf34673aec0eb5adda8/ui/app/AppLayouts/Chat/CommunityComponents/CreateCategoryPopup.qml)
- [`ui/app/AppLayouts/Chat/CommunityColumn.qml`](https://github.com/status-im/status-desktop/blob/489e5f42b6de5dca706eb690bd65d5c19ee1dfd8/ui/app/AppLayouts/Chat/CommunityColumn.qml)
2021-05-18 09:31:18 -04:00
2021-05-18 14:38:49 -04:00
**PR**
- status-desktop: [feat: create community categories #2564](https://github.com/status-im/status-desktop/pull/2564)
- status-go: [Community categories #2228](https://github.com/status-im/status-go/pull/2228)
2021-05-18 09:31:18 -04:00
2021-05-18 14:38:49 -04:00
**Notes**
An admin can create a category and add channels to it as long as those categories have not been assigned before (`categoryId == ""`).
2021-05-18 09:31:18 -04:00
2021-05-18 14:38:49 -04:00
#### Editing Categories
2021-05-18 09:31:18 -04:00
2021-05-18 14:38:49 -04:00
**Key source files**
- [`src/app/chat/views/communities.nim`](https://github.com/status-im/status-desktop/blob/aea1321b0e9684e67ed4552182544e80c5e70709/src/app/chat/views/communities.nim#L259-L266)
- [`src/app/chat/views/community_item.nim`](https://github.com/status-im/status-desktop/blob/aea1321b0e9684e67ed4552182544e80c5e70709/src/app/chat/views/community_item.nim#L182-L187)
- [`src/status/chat.nim`](https://github.com/status-im/status-desktop/blob/aea1321b0e9684e67ed4552182544e80c5e70709/src/status/chat.nim#L475-L476)
- [`src/status/libstatus/chat.nim`](https://github.com/status-im/status-desktop/blob/aea1321b0e9684e67ed4552182544e80c5e70709/src/status/libstatus/chat.nim#L334-L343)
- [`ui/app/AppLayouts/Chat/CommunityComponents/CategoryList.qml`](https://github.com/status-im/status-desktop/blob/3f56db35bac7cc3b0f3769ef1afbd5060b10d03f/ui/app/AppLayouts/Chat/CommunityComponents/CategoryList.qml)
- [`ui/app/AppLayouts/Chat/CommunityComponents/CreateCategoryPopup.qml`](https://github.com/status-im/status-desktop/blob/e5b42b3fb568b955fb05fbf34673aec0eb5adda8/ui/app/AppLayouts/Chat/CommunityComponents/CreateCategoryPopup.qml)
2021-05-18 09:31:18 -04:00
2021-05-18 14:38:49 -04:00
**PR**
- status-desktop: [feat: edit community categories #2569](https://github.com/status-im/status-desktop/pull/2569)
- status-go: [Community categories #2228](https://github.com/status-im/status-go/pull/2228)
**Notes**
Editing categories reuses the same modal popup used to create categories, the difference being that it's prefilled with information from the selected category, and has the `isEdit` attribute set to true, which determines the UI behavior for editing the category as well as knowing the right slot to call.
#### Delete Categories
**Key source files**
- [`src/app/chat/views/community_item.nim`](https://github.com/status-im/status-desktop/blob/489e5f42b6de5dca706eb690bd65d5c19ee1dfd8/src/app/chat/views/community_item.nim#L161-L166)
- [`src/app/chat/views/community_list.nim`](https://github.com/status-im/status-desktop/blob/489e5f42b6de5dca706eb690bd65d5c19ee1dfd8/src/app/chat/views/community_list.nim#L148-L154)
- [`src/status/chat.nim`](https://github.com/status-im/status-desktop/blob/489e5f42b6de5dca706eb690bd65d5c19ee1dfd8/src/status/chat.nim#L475-L476)
- [`src/status/libstatus/chat.nim`](https://github.com/status-im/status-desktop/blob/489e5f42b6de5dca706eb690bd65d5c19ee1dfd8/src/status/libstatus/chat.nim#L344-L351)
- [`ui/app/AppLayouts/Chat/CommunityComponents/CategoryList.qml`](https://github.com/status-im/status-desktop/blob/3f56db35bac7cc3b0f3769ef1afbd5060b10d03f/ui/app/AppLayouts/Chat/CommunityComponents/CategoryList.qml)
- [`ui/app/AppLayouts/Chat/CommunityComponents/CreateCategoryPopup.qml`](https://github.com/status-im/status-desktop/blob/e5b42b3fb568b955fb05fbf34673aec0eb5adda8/ui/app/AppLayouts/Chat/CommunityComponents/CreateCategoryPopup.qml)
**PR**
- status-desktop: [feat: edit community categories #2569](https://github.com/status-im/status-desktop/pull/2569)
- status-go: [Community categories #2228](https://github.com/status-im/status-go/pull/2228)
**Notes**
Deleting a category will remove the `categoryId` from any chat assigned to the category being deleted.
2021-05-18 09:31:18 -04:00
### Transfer ownership
### Share Community
### See Members
### Kick Member
### Invite People
### Back up Community
## Context menu on the nav bar
## Initial Community