mirror of
https://github.com/TeamOctolings/Octobot.git
synced 2025-04-20 00:43:36 +03:00
Fix some commands being allowed to run in the wrong contexts or without the correct permissions
Signed-off-by: Octol1ttle <l1ttleofficial@outlook.com>
This commit is contained in:
parent
477f884b45
commit
514815fb41
6 changed files with 28 additions and 0 deletions
|
@ -8,6 +8,7 @@ using Remora.Commands.Groups;
|
||||||
using Remora.Discord.API.Abstractions.Objects;
|
using Remora.Discord.API.Abstractions.Objects;
|
||||||
using Remora.Discord.API.Abstractions.Rest;
|
using Remora.Discord.API.Abstractions.Rest;
|
||||||
using Remora.Discord.API.Objects;
|
using Remora.Discord.API.Objects;
|
||||||
|
using Remora.Discord.Commands.Attributes;
|
||||||
using Remora.Discord.Commands.Conditions;
|
using Remora.Discord.Commands.Conditions;
|
||||||
using Remora.Discord.Commands.Contexts;
|
using Remora.Discord.Commands.Contexts;
|
||||||
using Remora.Discord.Commands.Feedback.Services;
|
using Remora.Discord.Commands.Feedback.Services;
|
||||||
|
@ -58,6 +59,8 @@ public class BanCommandGroup : CommandGroup {
|
||||||
/// </returns>
|
/// </returns>
|
||||||
/// <seealso cref="UnbanUserAsync" />
|
/// <seealso cref="UnbanUserAsync" />
|
||||||
[Command("ban", "бан")]
|
[Command("ban", "бан")]
|
||||||
|
[DiscordDefaultMemberPermissions(DiscordPermission.BanMembers)]
|
||||||
|
[DiscordDefaultDMPermission(false)]
|
||||||
[RequireContext(ChannelContext.Guild)]
|
[RequireContext(ChannelContext.Guild)]
|
||||||
[RequireDiscordPermission(DiscordPermission.BanMembers)]
|
[RequireDiscordPermission(DiscordPermission.BanMembers)]
|
||||||
[RequireBotDiscordPermissions(DiscordPermission.BanMembers)]
|
[RequireBotDiscordPermissions(DiscordPermission.BanMembers)]
|
||||||
|
@ -196,6 +199,8 @@ public class BanCommandGroup : CommandGroup {
|
||||||
/// <seealso cref="BanUserAsync" />
|
/// <seealso cref="BanUserAsync" />
|
||||||
/// <seealso cref="GuildUpdateService.TickGuildAsync"/>
|
/// <seealso cref="GuildUpdateService.TickGuildAsync"/>
|
||||||
[Command("unban")]
|
[Command("unban")]
|
||||||
|
[DiscordDefaultMemberPermissions(DiscordPermission.BanMembers)]
|
||||||
|
[DiscordDefaultDMPermission(false)]
|
||||||
[RequireContext(ChannelContext.Guild)]
|
[RequireContext(ChannelContext.Guild)]
|
||||||
[RequireDiscordPermission(DiscordPermission.BanMembers)]
|
[RequireDiscordPermission(DiscordPermission.BanMembers)]
|
||||||
[RequireBotDiscordPermissions(DiscordPermission.BanMembers)]
|
[RequireBotDiscordPermissions(DiscordPermission.BanMembers)]
|
||||||
|
|
|
@ -48,6 +48,8 @@ public class ClearCommandGroup : CommandGroup {
|
||||||
/// were cleared and vice-versa.
|
/// were cleared and vice-versa.
|
||||||
/// </returns>
|
/// </returns>
|
||||||
[Command("clear", "очистить")]
|
[Command("clear", "очистить")]
|
||||||
|
[DiscordDefaultMemberPermissions(DiscordPermission.ManageMessages)]
|
||||||
|
[DiscordDefaultDMPermission(false)]
|
||||||
[RequireContext(ChannelContext.Guild)]
|
[RequireContext(ChannelContext.Guild)]
|
||||||
[RequireDiscordPermission(DiscordPermission.ManageMessages)]
|
[RequireDiscordPermission(DiscordPermission.ManageMessages)]
|
||||||
[RequireBotDiscordPermissions(DiscordPermission.ManageMessages)]
|
[RequireBotDiscordPermissions(DiscordPermission.ManageMessages)]
|
||||||
|
|
|
@ -7,6 +7,7 @@ using Remora.Commands.Groups;
|
||||||
using Remora.Discord.API.Abstractions.Objects;
|
using Remora.Discord.API.Abstractions.Objects;
|
||||||
using Remora.Discord.API.Abstractions.Rest;
|
using Remora.Discord.API.Abstractions.Rest;
|
||||||
using Remora.Discord.API.Objects;
|
using Remora.Discord.API.Objects;
|
||||||
|
using Remora.Discord.Commands.Attributes;
|
||||||
using Remora.Discord.Commands.Conditions;
|
using Remora.Discord.Commands.Conditions;
|
||||||
using Remora.Discord.Commands.Contexts;
|
using Remora.Discord.Commands.Contexts;
|
||||||
using Remora.Discord.Commands.Feedback.Services;
|
using Remora.Discord.Commands.Feedback.Services;
|
||||||
|
@ -54,6 +55,8 @@ public class KickCommandGroup : CommandGroup {
|
||||||
/// was kicked and vice-versa.
|
/// was kicked and vice-versa.
|
||||||
/// </returns>
|
/// </returns>
|
||||||
[Command("kick", "кик")]
|
[Command("kick", "кик")]
|
||||||
|
[DiscordDefaultMemberPermissions(DiscordPermission.KickMembers)]
|
||||||
|
[DiscordDefaultDMPermission(false)]
|
||||||
[RequireContext(ChannelContext.Guild)]
|
[RequireContext(ChannelContext.Guild)]
|
||||||
[RequireDiscordPermission(DiscordPermission.KickMembers)]
|
[RequireDiscordPermission(DiscordPermission.KickMembers)]
|
||||||
[RequireBotDiscordPermissions(DiscordPermission.KickMembers)]
|
[RequireBotDiscordPermissions(DiscordPermission.KickMembers)]
|
||||||
|
|
|
@ -8,6 +8,7 @@ using Remora.Commands.Groups;
|
||||||
using Remora.Discord.API.Abstractions.Objects;
|
using Remora.Discord.API.Abstractions.Objects;
|
||||||
using Remora.Discord.API.Abstractions.Rest;
|
using Remora.Discord.API.Abstractions.Rest;
|
||||||
using Remora.Discord.API.Objects;
|
using Remora.Discord.API.Objects;
|
||||||
|
using Remora.Discord.Commands.Attributes;
|
||||||
using Remora.Discord.Commands.Conditions;
|
using Remora.Discord.Commands.Conditions;
|
||||||
using Remora.Discord.Commands.Contexts;
|
using Remora.Discord.Commands.Contexts;
|
||||||
using Remora.Discord.Commands.Feedback.Services;
|
using Remora.Discord.Commands.Feedback.Services;
|
||||||
|
@ -58,6 +59,8 @@ public class MuteCommandGroup : CommandGroup {
|
||||||
/// </returns>
|
/// </returns>
|
||||||
/// <seealso cref="UnmuteUserAsync" />
|
/// <seealso cref="UnmuteUserAsync" />
|
||||||
[Command("mute", "мут")]
|
[Command("mute", "мут")]
|
||||||
|
[DiscordDefaultMemberPermissions(DiscordPermission.ModerateMembers)]
|
||||||
|
[DiscordDefaultDMPermission(false)]
|
||||||
[RequireContext(ChannelContext.Guild)]
|
[RequireContext(ChannelContext.Guild)]
|
||||||
[RequireDiscordPermission(DiscordPermission.ModerateMembers)]
|
[RequireDiscordPermission(DiscordPermission.ModerateMembers)]
|
||||||
[RequireBotDiscordPermissions(DiscordPermission.ModerateMembers)]
|
[RequireBotDiscordPermissions(DiscordPermission.ModerateMembers)]
|
||||||
|
@ -172,6 +175,8 @@ public class MuteCommandGroup : CommandGroup {
|
||||||
/// <seealso cref="MuteUserAsync" />
|
/// <seealso cref="MuteUserAsync" />
|
||||||
/// <seealso cref="GuildUpdateService.TickGuildAsync"/>
|
/// <seealso cref="GuildUpdateService.TickGuildAsync"/>
|
||||||
[Command("unmute", "размут")]
|
[Command("unmute", "размут")]
|
||||||
|
[DiscordDefaultMemberPermissions(DiscordPermission.ModerateMembers)]
|
||||||
|
[DiscordDefaultDMPermission(false)]
|
||||||
[RequireContext(ChannelContext.Guild)]
|
[RequireContext(ChannelContext.Guild)]
|
||||||
[RequireDiscordPermission(DiscordPermission.ModerateMembers)]
|
[RequireDiscordPermission(DiscordPermission.ModerateMembers)]
|
||||||
[RequireBotDiscordPermissions(DiscordPermission.ModerateMembers)]
|
[RequireBotDiscordPermissions(DiscordPermission.ModerateMembers)]
|
||||||
|
|
|
@ -5,6 +5,7 @@ using JetBrains.Annotations;
|
||||||
using Remora.Commands.Attributes;
|
using Remora.Commands.Attributes;
|
||||||
using Remora.Commands.Groups;
|
using Remora.Commands.Groups;
|
||||||
using Remora.Discord.API.Abstractions.Rest;
|
using Remora.Discord.API.Abstractions.Rest;
|
||||||
|
using Remora.Discord.Commands.Attributes;
|
||||||
using Remora.Discord.Commands.Contexts;
|
using Remora.Discord.Commands.Contexts;
|
||||||
using Remora.Discord.Commands.Feedback.Services;
|
using Remora.Discord.Commands.Feedback.Services;
|
||||||
using Remora.Discord.Extensions.Embeds;
|
using Remora.Discord.Extensions.Embeds;
|
||||||
|
@ -39,6 +40,7 @@ public class RemindCommandGroup : CommandGroup {
|
||||||
/// <param name="message">The text of the reminder.</param>
|
/// <param name="message">The text of the reminder.</param>
|
||||||
/// <returns>A feedback sending result which may or may not have succeeded.</returns>
|
/// <returns>A feedback sending result which may or may not have succeeded.</returns>
|
||||||
[Command("remind")]
|
[Command("remind")]
|
||||||
|
[DiscordDefaultDMPermission(false)]
|
||||||
[Description("Create a reminder")]
|
[Description("Create a reminder")]
|
||||||
[UsedImplicitly]
|
[UsedImplicitly]
|
||||||
public async Task<Result> AddReminderAsync(
|
public async Task<Result> AddReminderAsync(
|
||||||
|
|
|
@ -6,7 +6,10 @@ using Boyfriend.Services;
|
||||||
using JetBrains.Annotations;
|
using JetBrains.Annotations;
|
||||||
using Remora.Commands.Attributes;
|
using Remora.Commands.Attributes;
|
||||||
using Remora.Commands.Groups;
|
using Remora.Commands.Groups;
|
||||||
|
using Remora.Discord.API.Abstractions.Objects;
|
||||||
using Remora.Discord.API.Abstractions.Rest;
|
using Remora.Discord.API.Abstractions.Rest;
|
||||||
|
using Remora.Discord.Commands.Attributes;
|
||||||
|
using Remora.Discord.Commands.Conditions;
|
||||||
using Remora.Discord.Commands.Contexts;
|
using Remora.Discord.Commands.Contexts;
|
||||||
using Remora.Discord.Commands.Feedback.Services;
|
using Remora.Discord.Commands.Feedback.Services;
|
||||||
using Remora.Discord.Extensions.Embeds;
|
using Remora.Discord.Extensions.Embeds;
|
||||||
|
@ -57,6 +60,10 @@ public class SettingsCommandGroup : CommandGroup {
|
||||||
/// A feedback sending result which may or may not have succeeded.
|
/// A feedback sending result which may or may not have succeeded.
|
||||||
/// </returns>
|
/// </returns>
|
||||||
[Command("settingslist")]
|
[Command("settingslist")]
|
||||||
|
[DiscordDefaultMemberPermissions(DiscordPermission.ManageGuild)]
|
||||||
|
[DiscordDefaultDMPermission(false)]
|
||||||
|
[RequireContext(ChannelContext.Guild)]
|
||||||
|
[RequireDiscordPermission(DiscordPermission.ManageGuild)]
|
||||||
[Description("Shows settings list for this server")]
|
[Description("Shows settings list for this server")]
|
||||||
[UsedImplicitly]
|
[UsedImplicitly]
|
||||||
public async Task<Result> ListSettingsAsync() {
|
public async Task<Result> ListSettingsAsync() {
|
||||||
|
@ -95,6 +102,10 @@ public class SettingsCommandGroup : CommandGroup {
|
||||||
/// <param name="value">The new value of the setting.</param>
|
/// <param name="value">The new value of the setting.</param>
|
||||||
/// <returns>A feedback sending result which may or may not have succeeded.</returns>
|
/// <returns>A feedback sending result which may or may not have succeeded.</returns>
|
||||||
[Command("settings")]
|
[Command("settings")]
|
||||||
|
[DiscordDefaultMemberPermissions(DiscordPermission.ManageGuild)]
|
||||||
|
[DiscordDefaultDMPermission(false)]
|
||||||
|
[RequireContext(ChannelContext.Guild)]
|
||||||
|
[RequireDiscordPermission(DiscordPermission.ManageGuild)]
|
||||||
[Description("Change settings for this server")]
|
[Description("Change settings for this server")]
|
||||||
[UsedImplicitly]
|
[UsedImplicitly]
|
||||||
public async Task<Result> EditSettingsAsync(
|
public async Task<Result> EditSettingsAsync(
|
||||||
|
|
Loading…
Add table
Reference in a new issue