| @@ -39,24 +39,6 @@ namespace Discord.Rest | |||||
| var args = new TextChannelProperties(); | var args = new TextChannelProperties(); | ||||
| func(args); | func(args); | ||||
| var overwrites = new List<API.Overwrite>(); | |||||
| if (args.UserOverwrites.IsSpecified) | |||||
| overwrites.AddRange(args.UserOverwrites.Value.Select(x => new API.Overwrite() | |||||
| { | |||||
| TargetId = x.Key, | |||||
| TargetType = PermissionTarget.User, | |||||
| Allow = x.Value.AllowValue, | |||||
| Deny = x.Value.DenyValue, | |||||
| })); | |||||
| if (args.RoleOverwrites.IsSpecified) | |||||
| overwrites.AddRange(args.RoleOverwrites.Value.Select(x => new API.Overwrite() | |||||
| { | |||||
| TargetId = x.Key, | |||||
| TargetType = PermissionTarget.Role, | |||||
| Allow = x.Value.AllowValue, | |||||
| Deny = x.Value.DenyValue, | |||||
| })); | |||||
| var apiArgs = new API.Rest.ModifyTextChannelParams | var apiArgs = new API.Rest.ModifyTextChannelParams | ||||
| { | { | ||||
| Name = args.Name, | Name = args.Name, | ||||
| @@ -65,7 +47,15 @@ namespace Discord.Rest | |||||
| Topic = args.Topic, | Topic = args.Topic, | ||||
| IsNsfw = args.IsNsfw, | IsNsfw = args.IsNsfw, | ||||
| SlowModeInterval = args.SlowModeInterval, | SlowModeInterval = args.SlowModeInterval, | ||||
| Overwrites = overwrites.Count != 0 ? Optional.Create(overwrites.ToArray()) : Optional.Create<API.Overwrite[]>(), | |||||
| Overwrites = args.PermissionOverwrites.IsSpecified | |||||
| ? args.PermissionOverwrites.Value.Select(overwrite => new API.Overwrite | |||||
| { | |||||
| TargetId = overwrite.TargetId, | |||||
| TargetType = overwrite.TargetType, | |||||
| Allow = overwrite.Permissions.AllowValue, | |||||
| Deny = overwrite.Permissions.DenyValue | |||||
| }).ToArray() | |||||
| : Optional.Create<API.Overwrite[]>(), | |||||
| }; | }; | ||||
| return await client.ApiClient.ModifyGuildChannelAsync(channel.Id, apiArgs, options).ConfigureAwait(false); | return await client.ApiClient.ModifyGuildChannelAsync(channel.Id, apiArgs, options).ConfigureAwait(false); | ||||
| } | } | ||||