only lower id roles can be modfified, add new hub endpoints
This commit is contained in:
+35
-3
@@ -157,6 +157,7 @@ const (
|
||||
PermissionMuteUser
|
||||
PermissionUserAddRole
|
||||
PermissionUserRemoveRole
|
||||
PermissionUserSelfRoleRemove
|
||||
|
||||
// Role permissions
|
||||
PermissionCreateRole
|
||||
@@ -165,9 +166,6 @@ const (
|
||||
PermissionSetRoleColor
|
||||
PermissionSetRolePermissions
|
||||
|
||||
PermissionSelfRoleRemove
|
||||
PermissionOnlySelfRoleRemove
|
||||
|
||||
// Channel permissions
|
||||
PermissionAddChannel
|
||||
PermissionRemoveChannel
|
||||
@@ -178,6 +176,40 @@ const (
|
||||
PermissionSetChannelPermittedReadHistoryRoles
|
||||
)
|
||||
|
||||
var permissionRegistry = map[string]Permissions{
|
||||
"set_hub_name": PermissionSetHubName,
|
||||
"set_hub_icon": PermissionSetHubIcon,
|
||||
"set_hub_bg": PermissionSetHubBg,
|
||||
"set_hub_color": PermissionSetHubColor,
|
||||
"remove_hub": PermissionRemoveHub,
|
||||
"set_user_color_allowed": PermissionSetUserColorAllowed,
|
||||
"invite_user": PermissionInviteUser,
|
||||
"remove_user": PermissionRemoveUser,
|
||||
"rename_user": PermissionRenameUser,
|
||||
"self_rename": PermissionSelfRename,
|
||||
"mute_user": PermissionMuteUser,
|
||||
"user_add_role": PermissionUserAddRole,
|
||||
"user_remove_role": PermissionUserRemoveRole,
|
||||
"create_role": PermissionCreateRole,
|
||||
"remove_role": PermissionRemoveRole,
|
||||
"set_role_name": PermissionSetRoleName,
|
||||
"set_role_color": PermissionSetRoleColor,
|
||||
"set_role_permissions": PermissionSetRolePermissions,
|
||||
"self_role_remove": PermissionUserSelfRoleRemove,
|
||||
"add_channel": PermissionAddChannel,
|
||||
"remove_channel": PermissionRemoveChannel,
|
||||
"set_channel_name": PermissionSetChannelName,
|
||||
"set_channel_icon": PermissionSetChannelIcon,
|
||||
"set_channel_permitted_visible": PermissionSetChannelPermittedVisibleRoles,
|
||||
"set_channel_permitted_send": PermissionSetChannelPermittedSendMessageRoles,
|
||||
"set_channel_permitted_read": PermissionSetChannelPermittedReadHistoryRoles,
|
||||
}
|
||||
|
||||
func PermissionLookup(permission string) (Permissions, bool) {
|
||||
p, ok := permissionRegistry[permission]
|
||||
return p, ok
|
||||
}
|
||||
|
||||
func (p *Permissions) Grant(permissions Permissions) {
|
||||
*p |= permissions
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user