aboutsummaryrefslogtreecommitdiff
path: root/src/services/entity_normalizer/entity_normalizer.service.js
diff options
context:
space:
mode:
authorHJ <30-hj@users.noreply.git.pleroma.social>2022-11-21 19:23:41 +0000
committerHJ <30-hj@users.noreply.git.pleroma.social>2022-11-21 19:23:41 +0000
commit8a87d82b7baf6cd8c4d1f33ee04d9fa1a25ae825 (patch)
tree64726778724e1f6bbcad76dddd8bdda443e73714 /src/services/entity_normalizer/entity_normalizer.service.js
parent6263ad7571b82ed7333a831a69a59c4192455b1d (diff)
parent131d310703c568c9b5900587d049a8b5dd9477d8 (diff)
Merge branch 'fine_grained_moderation_privileges' into 'develop'
Add privileges Closes #1177 See merge request pleroma/pleroma-fe!1583
Diffstat (limited to 'src/services/entity_normalizer/entity_normalizer.service.js')
-rw-r--r--src/services/entity_normalizer/entity_normalizer.service.js28
1 files changed, 28 insertions, 0 deletions
diff --git a/src/services/entity_normalizer/entity_normalizer.service.js b/src/services/entity_normalizer/entity_normalizer.service.js
index 23061eba..ea138177 100644
--- a/src/services/entity_normalizer/entity_normalizer.service.js
+++ b/src/services/entity_normalizer/entity_normalizer.service.js
@@ -124,6 +124,34 @@ export const parseUser = (data) => {
} else {
output.role = 'member'
}
+
+ if (data.pleroma.privileges) {
+ output.privileges = data.pleroma.privileges
+ } else if (data.pleroma.is_admin) {
+ output.privileges = [
+ 'users_read',
+ 'users_manage_invites',
+ 'users_manage_activation_state',
+ 'users_manage_tags',
+ 'users_manage_credentials',
+ 'users_delete',
+ 'messages_read',
+ 'messages_delete',
+ 'instances_delete',
+ 'reports_manage_reports',
+ 'moderation_log_read',
+ 'announcements_manage_announcements',
+ 'emoji_manage_emoji',
+ 'statistics_read'
+ ]
+ } else if (data.pleroma.is_moderator) {
+ output.privileges = [
+ 'messages_delete',
+ 'reports_manage_reports'
+ ]
+ } else {
+ output.privileges = []
+ }
}
if (data.source) {