mirror of
https://github.com/mattermost/mattermost.git
synced 2025-02-25 18:55:24 -06:00
PLT-5080 (Server): Channel-Admin level permissions (#4874)
Adds permissions for manage/delete public/private channels at the Channel Admin level.
This commit is contained in:
committed by
Christopher Speller
parent
03e1d0aac3
commit
ca61b4bed9
@@ -171,6 +171,42 @@ func UpdateUserToTeamAdmin(user *model.User, team *model.Team) {
|
||||
utils.EnableDebugLogForTest()
|
||||
}
|
||||
|
||||
func MakeUserChannelAdmin(user *model.User, channel *model.Channel) {
|
||||
utils.DisableDebugLogForTest()
|
||||
|
||||
if cmr := <-Srv.Store.Channel().GetMember(channel.Id, user.Id); cmr.Err == nil {
|
||||
cm := cmr.Data.(model.ChannelMember)
|
||||
cm.Roles = "channel_admin channel_user"
|
||||
if sr := <-Srv.Store.Channel().UpdateMember(&cm); sr.Err != nil {
|
||||
utils.EnableDebugLogForTest()
|
||||
panic(sr.Err)
|
||||
}
|
||||
} else {
|
||||
utils.EnableDebugLogForTest()
|
||||
panic(cmr.Err)
|
||||
}
|
||||
|
||||
utils.EnableDebugLogForTest()
|
||||
}
|
||||
|
||||
func MakeUserChannelUser(user *model.User, channel *model.Channel) {
|
||||
utils.DisableDebugLogForTest()
|
||||
|
||||
if cmr := <-Srv.Store.Channel().GetMember(channel.Id, user.Id); cmr.Err == nil {
|
||||
cm := cmr.Data.(model.ChannelMember)
|
||||
cm.Roles = "channel_user"
|
||||
if sr := <-Srv.Store.Channel().UpdateMember(&cm); sr.Err != nil {
|
||||
utils.EnableDebugLogForTest()
|
||||
panic(sr.Err)
|
||||
}
|
||||
} else {
|
||||
utils.EnableDebugLogForTest()
|
||||
panic(cmr.Err)
|
||||
}
|
||||
|
||||
utils.EnableDebugLogForTest()
|
||||
}
|
||||
|
||||
func (me *TestHelper) CreateChannel(client *model.Client, team *model.Team) *model.Channel {
|
||||
return me.createChannel(client, team, model.CHANNEL_OPEN)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user