Updated discord.net. More work on permissions

This commit is contained in:
Kwoth 2016-09-23 10:23:54 +02:00
parent 1a2d1398a7
commit 7181c2a607
48 changed files with 460 additions and 227 deletions

@ -1 +1 @@
Subproject commit b51408def863ee5f4273478efa65eb50e4008487 Subproject commit 72131e69f8ab39c4ed3c5002ed602c72ae83b506

View File

@ -4,9 +4,9 @@ using System.Runtime.CompilerServices;
namespace NadekoBot.Attributes namespace NadekoBot.Attributes
{ {
public class LocalizedDescriptionAttribute : DescriptionAttribute public class LocalizedRemarksAttribute : RemarksAttribute
{ {
public LocalizedDescriptionAttribute([CallerMemberName] string memberName="") : base(Localization.LoadCommandString(memberName.ToLowerInvariant()+"_desc")) public LocalizedRemarksAttribute([CallerMemberName] string memberName="") : base(Localization.LoadCommandString(memberName.ToLowerInvariant()+"_desc"))
{ {
} }

View File

@ -60,7 +60,7 @@ namespace NadekoBot.Modules.Administration
// Environment.Exit(0); // Environment.Exit(0);
//} //}
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
[RequirePermission(GuildPermission.Administrator)] [RequirePermission(GuildPermission.Administrator)]
public async Task Delmsgoncmd(IUserMessage umsg) public async Task Delmsgoncmd(IUserMessage umsg)
@ -80,7 +80,7 @@ namespace NadekoBot.Modules.Administration
await channel.SendMessageAsync("❗`Stopped automatic deletion of successfull command invokations.`"); await channel.SendMessageAsync("❗`Stopped automatic deletion of successfull command invokations.`");
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
[RequirePermission(GuildPermission.ManageRoles)] [RequirePermission(GuildPermission.ManageRoles)]
public async Task Setrole(IUserMessage umsg, IGuildUser usr, [Remainder] IRole role) public async Task Setrole(IUserMessage umsg, IGuildUser usr, [Remainder] IRole role)
@ -98,7 +98,7 @@ namespace NadekoBot.Modules.Administration
} }
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
[RequirePermission(GuildPermission.ManageRoles)] [RequirePermission(GuildPermission.ManageRoles)]
public async Task Removerole(IUserMessage umsg, IGuildUser usr, [Remainder] IRole role) public async Task Removerole(IUserMessage umsg, IGuildUser usr, [Remainder] IRole role)
@ -115,7 +115,7 @@ namespace NadekoBot.Modules.Administration
} }
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
[RequirePermission(GuildPermission.ManageRoles)] [RequirePermission(GuildPermission.ManageRoles)]
public async Task RenameRole(IUserMessage umsg, IRole roleToEdit, string newname) public async Task RenameRole(IUserMessage umsg, IRole roleToEdit, string newname)
@ -137,7 +137,7 @@ namespace NadekoBot.Modules.Administration
} }
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
[RequirePermission(GuildPermission.ManageRoles)] [RequirePermission(GuildPermission.ManageRoles)]
public async Task RemoveAllRoles(IUserMessage umsg, [Remainder] IGuildUser user) public async Task RemoveAllRoles(IUserMessage umsg, [Remainder] IGuildUser user)
@ -155,7 +155,7 @@ namespace NadekoBot.Modules.Administration
} }
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
[RequirePermission(GuildPermission.ManageRoles)] [RequirePermission(GuildPermission.ManageRoles)]
public async Task CreateRole(IUserMessage umsg, [Remainder] string roleName = null) public async Task CreateRole(IUserMessage umsg, [Remainder] string roleName = null)
@ -176,7 +176,7 @@ namespace NadekoBot.Modules.Administration
} }
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
[RequirePermission(GuildPermission.ManageRoles)] [RequirePermission(GuildPermission.ManageRoles)]
public async Task RoleColor(IUserMessage umsg, params string[] args) public async Task RoleColor(IUserMessage umsg, params string[] args)
@ -214,7 +214,7 @@ namespace NadekoBot.Modules.Administration
} }
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
[RequirePermission(GuildPermission.BanMembers)] [RequirePermission(GuildPermission.BanMembers)]
public async Task Ban(IUserMessage umsg, IGuildUser user) public async Task Ban(IUserMessage umsg, IGuildUser user)
@ -241,7 +241,7 @@ namespace NadekoBot.Modules.Administration
} }
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
[RequirePermission(GuildPermission.BanMembers)] [RequirePermission(GuildPermission.BanMembers)]
public async Task Softban(IUserMessage umsg, IGuildUser user, [Remainder] string msg = null) public async Task Softban(IUserMessage umsg, IGuildUser user, [Remainder] string msg = null)
@ -267,7 +267,7 @@ namespace NadekoBot.Modules.Administration
} }
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Kick(IUserMessage umsg, IGuildUser user, [Remainder] string msg = null) public async Task Kick(IUserMessage umsg, IGuildUser user, [Remainder] string msg = null)
{ {
@ -295,7 +295,7 @@ namespace NadekoBot.Modules.Administration
} }
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
[RequirePermission(GuildPermission.MuteMembers)] [RequirePermission(GuildPermission.MuteMembers)]
public async Task Mute(IUserMessage umsg, params IGuildUser[] users) public async Task Mute(IUserMessage umsg, params IGuildUser[] users)
@ -318,7 +318,7 @@ namespace NadekoBot.Modules.Administration
} }
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
[RequirePermission(GuildPermission.MuteMembers)] [RequirePermission(GuildPermission.MuteMembers)]
public async Task Unmute(IUserMessage umsg, params IGuildUser[] users) public async Task Unmute(IUserMessage umsg, params IGuildUser[] users)
@ -341,7 +341,7 @@ namespace NadekoBot.Modules.Administration
} }
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
[RequirePermission(GuildPermission.DeafenMembers)] [RequirePermission(GuildPermission.DeafenMembers)]
public async Task Deafen(IUserMessage umsg, params IGuildUser[] users) public async Task Deafen(IUserMessage umsg, params IGuildUser[] users)
@ -364,7 +364,7 @@ namespace NadekoBot.Modules.Administration
} }
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
[RequirePermission(GuildPermission.DeafenMembers)] [RequirePermission(GuildPermission.DeafenMembers)]
public async Task UnDeafen(IUserMessage umsg, params IGuildUser[] users) public async Task UnDeafen(IUserMessage umsg, params IGuildUser[] users)
@ -387,7 +387,7 @@ namespace NadekoBot.Modules.Administration
} }
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
[RequirePermission(GuildPermission.ManageChannels)] [RequirePermission(GuildPermission.ManageChannels)]
public async Task DelVoiChanl(IUserMessage umsg, [Remainder] IVoiceChannel voiceChannel) public async Task DelVoiChanl(IUserMessage umsg, [Remainder] IVoiceChannel voiceChannel)
@ -396,7 +396,7 @@ namespace NadekoBot.Modules.Administration
await umsg.Channel.SendMessageAsync($"Removed channel **{voiceChannel.Name}**.").ConfigureAwait(false); await umsg.Channel.SendMessageAsync($"Removed channel **{voiceChannel.Name}**.").ConfigureAwait(false);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
[RequirePermission(GuildPermission.ManageChannels)] [RequirePermission(GuildPermission.ManageChannels)]
public async Task CreatVoiChanl(IUserMessage umsg, [Remainder] string channelName) public async Task CreatVoiChanl(IUserMessage umsg, [Remainder] string channelName)
@ -406,7 +406,7 @@ namespace NadekoBot.Modules.Administration
await channel.SendMessageAsync($"Created voice channel **{ch.Name}**, id `{ch.Id}`.").ConfigureAwait(false); await channel.SendMessageAsync($"Created voice channel **{ch.Name}**, id `{ch.Id}`.").ConfigureAwait(false);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
[RequirePermission(GuildPermission.ManageChannels)] [RequirePermission(GuildPermission.ManageChannels)]
public async Task DelTxtChanl(IUserMessage umsg, [Remainder] ITextChannel channel) public async Task DelTxtChanl(IUserMessage umsg, [Remainder] ITextChannel channel)
@ -415,7 +415,7 @@ namespace NadekoBot.Modules.Administration
await channel.SendMessageAsync($"Removed text channel **{channel.Name}**, id `{channel.Id}`.").ConfigureAwait(false); await channel.SendMessageAsync($"Removed text channel **{channel.Name}**, id `{channel.Id}`.").ConfigureAwait(false);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
[RequirePermission(GuildPermission.ManageChannels)] [RequirePermission(GuildPermission.ManageChannels)]
public async Task CreaTxtChanl(IUserMessage umsg, [Remainder] string channelName) public async Task CreaTxtChanl(IUserMessage umsg, [Remainder] string channelName)
@ -425,7 +425,7 @@ namespace NadekoBot.Modules.Administration
await channel.SendMessageAsync($"Added text channel **{txtCh.Name}**, id `{txtCh.Id}`.").ConfigureAwait(false); await channel.SendMessageAsync($"Added text channel **{txtCh.Name}**, id `{txtCh.Id}`.").ConfigureAwait(false);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
[RequirePermission(GuildPermission.ManageChannels)] [RequirePermission(GuildPermission.ManageChannels)]
public async Task SetTopic(IUserMessage umsg, [Remainder] string topic = null) public async Task SetTopic(IUserMessage umsg, [Remainder] string topic = null)
@ -436,7 +436,7 @@ namespace NadekoBot.Modules.Administration
await channel.SendMessageAsync(":ok: **New channel topic set.**").ConfigureAwait(false); await channel.SendMessageAsync(":ok: **New channel topic set.**").ConfigureAwait(false);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
[RequirePermission(GuildPermission.ManageChannels)] [RequirePermission(GuildPermission.ManageChannels)]
public async Task SetChanlName(IUserMessage umsg, [Remainder] string name) public async Task SetChanlName(IUserMessage umsg, [Remainder] string name)
@ -449,7 +449,7 @@ namespace NadekoBot.Modules.Administration
//delets her own messages, no perm required //delets her own messages, no perm required
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Prune(IUserMessage umsg) public async Task Prune(IUserMessage umsg)
{ {
@ -462,7 +462,7 @@ namespace NadekoBot.Modules.Administration
} }
// prune x // prune x
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
[RequirePermission(ChannelPermission.ManageMessages)] [RequirePermission(ChannelPermission.ManageMessages)]
public async Task Prune(IUserMessage msg, int count) public async Task Prune(IUserMessage msg, int count)
@ -481,7 +481,7 @@ namespace NadekoBot.Modules.Administration
} }
//prune @user [x] //prune @user [x]
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Prune(IUserMessage msg, IGuildUser user, int count = 100) public async Task Prune(IUserMessage msg, IGuildUser user, int count = 100)
{ {
@ -635,7 +635,7 @@ namespace NadekoBot.Modules.Administration
//} //}
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
[RequirePermission(GuildPermission.MentionEveryone)] [RequirePermission(GuildPermission.MentionEveryone)]
public async Task MentionRole(IUserMessage umsg, params IRole[] roles) public async Task MentionRole(IUserMessage umsg, params IRole[] roles)
@ -660,7 +660,7 @@ namespace NadekoBot.Modules.Administration
await channel.SendMessageAsync(send).ConfigureAwait(false); await channel.SendMessageAsync(send).ConfigureAwait(false);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Donators(IUserMessage umsg) public async Task Donators(IUserMessage umsg)
{ {
@ -676,7 +676,7 @@ namespace NadekoBot.Modules.Administration
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Donadd(IUserMessage umsg, IUser donator, int amount) public async Task Donadd(IUserMessage umsg, IUser donator, int amount)
{ {

View File

@ -42,7 +42,7 @@ namespace NadekoBot.Modules.Administration
}; };
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
[RequirePermission(GuildPermission.ManageRoles)] [RequirePermission(GuildPermission.ManageRoles)]
public async Task AutoAssignRole(IUserMessage umsg, [Remainder] IRole role = null) public async Task AutoAssignRole(IUserMessage umsg, [Remainder] IRole role = null)

View File

@ -70,7 +70,7 @@ namespace NadekoBot.Modules.Administration
// } // }
//} //}
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
[RequirePermission(GuildPermission.ManageGuild)] [RequirePermission(GuildPermission.ManageGuild)]
public async Task Jcsc(IUserMessage imsg, int token) public async Task Jcsc(IUserMessage imsg, int token)
@ -84,7 +84,7 @@ namespace NadekoBot.Modules.Administration
await channel.SendMessageAsync(":ok:").ConfigureAwait(false); await channel.SendMessageAsync(":ok:").ConfigureAwait(false);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
[RequirePermission(GuildPermission.ManageGuild)] [RequirePermission(GuildPermission.ManageGuild)]
public async Task Lcsc(IUserMessage imsg) public async Task Lcsc(IUserMessage imsg)

View File

@ -482,7 +482,7 @@ namespace NadekoBot.Modules.Administration
return channel; return channel;
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task LogServer(IUserMessage msg) public async Task LogServer(IUserMessage msg)
{ {
@ -504,7 +504,7 @@ namespace NadekoBot.Modules.Administration
await channel.SendMessageAsync("`Logging disabled.`").ConfigureAwait(false); await channel.SendMessageAsync("`Logging disabled.`").ConfigureAwait(false);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task LogIgnore(IUserMessage imsg) public async Task LogIgnore(IUserMessage imsg)
{ {
@ -527,7 +527,7 @@ namespace NadekoBot.Modules.Administration
await channel.SendMessageAsync($"`Logging will no longer ignore {channel.Name} ({channel.Id}) channel.`").ConfigureAwait(false); await channel.SendMessageAsync($"`Logging will no longer ignore {channel.Name} ({channel.Id}) channel.`").ConfigureAwait(false);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task LogAdd(IUserMessage msg, [Remainder] string eventName) public async Task LogAdd(IUserMessage msg, [Remainder] string eventName)
{ {
@ -597,7 +597,7 @@ namespace NadekoBot.Modules.Administration
// } // }
//} //}
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task UserPresence(IUserMessage imsg) public async Task UserPresence(IUserMessage imsg)
{ {
@ -619,7 +619,7 @@ namespace NadekoBot.Modules.Administration
await channel.SendMessageAsync($"`Stopped logging user presence updates.`").ConfigureAwait(false); await channel.SendMessageAsync($"`Stopped logging user presence updates.`").ConfigureAwait(false);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task VoicePresence(IUserMessage imsg) public async Task VoicePresence(IUserMessage imsg)
{ {

View File

@ -73,7 +73,7 @@ namespace NadekoBot.Modules.Administration
} }
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
[RequirePermission(GuildPermission.ManageMessages)] [RequirePermission(GuildPermission.ManageMessages)]
public async Task RepeatInvoke(IUserMessage imsg) public async Task RepeatInvoke(IUserMessage imsg)
@ -90,7 +90,7 @@ namespace NadekoBot.Modules.Administration
await channel.SendMessageAsync("🔄 " + rep.Repeater.Message).ConfigureAwait(false); await channel.SendMessageAsync("🔄 " + rep.Repeater.Message).ConfigureAwait(false);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Repeat(IUserMessage imsg) public async Task Repeat(IUserMessage imsg)
{ {
@ -110,7 +110,7 @@ namespace NadekoBot.Modules.Administration
await channel.SendMessageAsync("`No message is repeating.`").ConfigureAwait(false); await channel.SendMessageAsync("`No message is repeating.`").ConfigureAwait(false);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Repeat(IUserMessage imsg, int minutes, [Remainder] string message) public async Task Repeat(IUserMessage imsg, int minutes, [Remainder] string message)
{ {

View File

@ -86,7 +86,7 @@ namespace NadekoBot.Modules.Administration
{"%queued%", () => Music.Music.MusicPlayers.Sum(kvp => kvp.Value.Playlist.Count).ToString()} {"%queued%", () => Music.Music.MusicPlayers.Sum(kvp => kvp.Value.Playlist.Count).ToString()}
}; };
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task RotatePlaying(IUserMessage umsg) public async Task RotatePlaying(IUserMessage umsg)
{ {
@ -106,7 +106,7 @@ namespace NadekoBot.Modules.Administration
await channel.SendMessageAsync("`Rotating playing status disabled.`"); await channel.SendMessageAsync("`Rotating playing status disabled.`");
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task AddPlaying(IUserMessage umsg, [Remainder] string status) public async Task AddPlaying(IUserMessage umsg, [Remainder] string status)
{ {
@ -122,7 +122,7 @@ namespace NadekoBot.Modules.Administration
await channel.SendMessageAsync("`Added.`").ConfigureAwait(false); await channel.SendMessageAsync("`Added.`").ConfigureAwait(false);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task ListPlaying(IUserMessage umsg) public async Task ListPlaying(IUserMessage umsg)
{ {
@ -144,7 +144,7 @@ namespace NadekoBot.Modules.Administration
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task RemovePlaying(IUserMessage umsg, int index) public async Task RemovePlaying(IUserMessage umsg, int index)
{ {

View File

@ -84,7 +84,7 @@ namespace NadekoBot.Modules.Administration
}; };
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Slowmode(IUserMessage umsg, int msg = 1, int perSec = 5) public async Task Slowmode(IUserMessage umsg, int msg = 1, int perSec = 5)
{ {

View File

@ -19,7 +19,7 @@ namespace NadekoBot.Modules.Administration
public class SelfAssignedRolesCommands public class SelfAssignedRolesCommands
{ {
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
[RequirePermission(GuildPermission.ManageRoles)] [RequirePermission(GuildPermission.ManageRoles)]
public async Task Asar(IUserMessage umsg, [Remainder] IRole role) public async Task Asar(IUserMessage umsg, [Remainder] IRole role)
@ -49,7 +49,7 @@ namespace NadekoBot.Modules.Administration
await channel.SendMessageAsync(msg.ToString()).ConfigureAwait(false); await channel.SendMessageAsync(msg.ToString()).ConfigureAwait(false);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
[RequirePermission(GuildPermission.ManageRoles)] [RequirePermission(GuildPermission.ManageRoles)]
public async Task Rsar(IUserMessage umsg, [Remainder] IRole role) public async Task Rsar(IUserMessage umsg, [Remainder] IRole role)
@ -70,7 +70,7 @@ namespace NadekoBot.Modules.Administration
await channel.SendMessageAsync($":ok:**{role.Name}** has been removed from the list of self-assignable roles").ConfigureAwait(false); await channel.SendMessageAsync($":ok:**{role.Name}** has been removed from the list of self-assignable roles").ConfigureAwait(false);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Lsar(IUserMessage umsg) public async Task Lsar(IUserMessage umsg)
{ {
@ -105,7 +105,7 @@ namespace NadekoBot.Modules.Administration
await channel.SendMessageAsync(msg.ToString() + "\n\n" + removeMsg.ToString()).ConfigureAwait(false); await channel.SendMessageAsync(msg.ToString() + "\n\n" + removeMsg.ToString()).ConfigureAwait(false);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
[RequirePermission(GuildPermission.ManageRoles)] [RequirePermission(GuildPermission.ManageRoles)]
public async Task Tesar(IUserMessage umsg) public async Task Tesar(IUserMessage umsg)
@ -124,7 +124,7 @@ namespace NadekoBot.Modules.Administration
await channel.SendMessageAsync("Self assigned roles are now " + exl); await channel.SendMessageAsync("Self assigned roles are now " + exl);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Iam(IUserMessage umsg, [Remainder] IRole role) public async Task Iam(IUserMessage umsg, [Remainder] IRole role)
{ {
@ -182,7 +182,7 @@ namespace NadekoBot.Modules.Administration
} }
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Iamnot(IUserMessage umsg, [Remainder] IRole role) public async Task Iamnot(IUserMessage umsg, [Remainder] IRole role)
{ {

View File

@ -106,7 +106,7 @@ namespace NadekoBot.Modules.Administration
return Task.CompletedTask; return Task.CompletedTask;
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
[RequirePermission(GuildPermission.ManageGuild)] [RequirePermission(GuildPermission.ManageGuild)]
public async Task GreetDel(IUserMessage umsg) public async Task GreetDel(IUserMessage umsg)
@ -128,7 +128,7 @@ namespace NadekoBot.Modules.Administration
await channel.SendMessageAsync("`Automatic deletion of greet messages has been disabled.`").ConfigureAwait(false); await channel.SendMessageAsync("`Automatic deletion of greet messages has been disabled.`").ConfigureAwait(false);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
[RequirePermission(GuildPermission.ManageGuild)] [RequirePermission(GuildPermission.ManageGuild)]
public async Task Greet(IUserMessage umsg) public async Task Greet(IUserMessage umsg)
@ -151,7 +151,7 @@ namespace NadekoBot.Modules.Administration
await channel.SendMessageAsync("Greet announcements disabled.").ConfigureAwait(false); await channel.SendMessageAsync("Greet announcements disabled.").ConfigureAwait(false);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
[RequirePermission(GuildPermission.ManageGuild)] [RequirePermission(GuildPermission.ManageGuild)]
public async Task GreetMsg(IUserMessage umsg, [Remainder] string text) public async Task GreetMsg(IUserMessage umsg, [Remainder] string text)
@ -180,7 +180,7 @@ namespace NadekoBot.Modules.Administration
await channel.SendMessageAsync("Enable greet messsages by typing `.greet`").ConfigureAwait(false); await channel.SendMessageAsync("Enable greet messsages by typing `.greet`").ConfigureAwait(false);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
[RequirePermission(GuildPermission.ManageGuild)] [RequirePermission(GuildPermission.ManageGuild)]
public async Task GreetDm(IUserMessage umsg) public async Task GreetDm(IUserMessage umsg)
@ -202,7 +202,7 @@ namespace NadekoBot.Modules.Administration
await channel.SendMessageAsync("Greet announcements disabled.").ConfigureAwait(false); await channel.SendMessageAsync("Greet announcements disabled.").ConfigureAwait(false);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
[RequirePermission(GuildPermission.ManageGuild)] [RequirePermission(GuildPermission.ManageGuild)]
public async Task GreetDmMsg(IUserMessage umsg, [Remainder] string text) public async Task GreetDmMsg(IUserMessage umsg, [Remainder] string text)
@ -231,7 +231,7 @@ namespace NadekoBot.Modules.Administration
await channel.SendMessageAsync("Enable DM greet messsages by typing `.greetdm`").ConfigureAwait(false); await channel.SendMessageAsync("Enable DM greet messsages by typing `.greetdm`").ConfigureAwait(false);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
[RequirePermission(GuildPermission.ManageGuild)] [RequirePermission(GuildPermission.ManageGuild)]
public async Task Bye(IUserMessage umsg) public async Task Bye(IUserMessage umsg)
@ -254,7 +254,7 @@ namespace NadekoBot.Modules.Administration
await channel.SendMessageAsync("Bye announcements disabled.").ConfigureAwait(false); await channel.SendMessageAsync("Bye announcements disabled.").ConfigureAwait(false);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
[RequirePermission(GuildPermission.ManageGuild)] [RequirePermission(GuildPermission.ManageGuild)]
public async Task ByeMsg(IUserMessage umsg, [Remainder] string text) public async Task ByeMsg(IUserMessage umsg, [Remainder] string text)
@ -283,7 +283,7 @@ namespace NadekoBot.Modules.Administration
await channel.SendMessageAsync("Enable bye messsages by typing `.bye`").ConfigureAwait(false); await channel.SendMessageAsync("Enable bye messsages by typing `.bye`").ConfigureAwait(false);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
[RequirePermission(GuildPermission.ManageGuild)] [RequirePermission(GuildPermission.ManageGuild)]
public async Task ByeDel(IUserMessage umsg) public async Task ByeDel(IUserMessage umsg)

View File

@ -97,7 +97,7 @@ namespace NadekoBot.Modules.Administration
private string GetChannelName(string voiceName) => private string GetChannelName(string voiceName) =>
channelNameRegex.Replace(voiceName, "").Trim().Replace(" ", "-").TrimTo(90, true) + "-voice"; channelNameRegex.Replace(voiceName, "").Trim().Replace(" ", "-").TrimTo(90, true) + "-voice";
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
[RequirePermission(GuildPermission.ManageRoles)] [RequirePermission(GuildPermission.ManageRoles)]
[RequirePermission(GuildPermission.ManageChannels)] [RequirePermission(GuildPermission.ManageChannels)]
@ -138,7 +138,7 @@ namespace NadekoBot.Modules.Administration
await channel.SendMessageAsync(ex.ToString()).ConfigureAwait(false); await channel.SendMessageAsync(ex.ToString()).ConfigureAwait(false);
} }
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
[RequirePermission(GuildPermission.ManageChannels)] [RequirePermission(GuildPermission.ManageChannels)]
[RequirePermission(GuildPermission.ManageRoles)] [RequirePermission(GuildPermission.ManageRoles)]

View File

@ -51,7 +51,7 @@ namespace NadekoBot.Modules.ClashOfClans
} }
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task CreateWar(IUserMessage umsg, int size, [Remainder] string enemyClan = null) public async Task CreateWar(IUserMessage umsg, int size, [Remainder] string enemyClan = null)
{ {
@ -84,7 +84,7 @@ namespace NadekoBot.Modules.ClashOfClans
await channel.SendMessageAsync($"❗🔰**CREATED CLAN WAR AGAINST {cw.ShortPrint()}**").ConfigureAwait(false); await channel.SendMessageAsync($"❗🔰**CREATED CLAN WAR AGAINST {cw.ShortPrint()}**").ConfigureAwait(false);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task StartWar(IUserMessage umsg, [Remainder] string number = null) public async Task StartWar(IUserMessage umsg, [Remainder] string number = null)
{ {
@ -112,7 +112,7 @@ namespace NadekoBot.Modules.ClashOfClans
SaveWar(war); SaveWar(war);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task ListWar(IUserMessage umsg, [Remainder] string number = null) public async Task ListWar(IUserMessage umsg, [Remainder] string number = null)
{ {
@ -155,7 +155,7 @@ namespace NadekoBot.Modules.ClashOfClans
await channel.SendMessageAsync(warsInfo.Item1[warsInfo.Item2].ToPrettyString()).ConfigureAwait(false); await channel.SendMessageAsync(warsInfo.Item1[warsInfo.Item2].ToPrettyString()).ConfigureAwait(false);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Claim(IUserMessage umsg, int number, int baseNumber, [Remainder] string other_name = null) public async Task Claim(IUserMessage umsg, int number, int baseNumber, [Remainder] string other_name = null)
{ {
@ -183,7 +183,7 @@ namespace NadekoBot.Modules.ClashOfClans
} }
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task ClaimFinish1(IUserMessage umsg, int number, int baseNumber, [Remainder] string other_name = null) public async Task ClaimFinish1(IUserMessage umsg, int number, int baseNumber, [Remainder] string other_name = null)
{ {
@ -191,7 +191,7 @@ namespace NadekoBot.Modules.ClashOfClans
await FinishClaim(umsg, number, baseNumber, other_name, 1); await FinishClaim(umsg, number, baseNumber, other_name, 1);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task ClaimFinish2(IUserMessage umsg, int number, int baseNumber, [Remainder] string other_name = null) public async Task ClaimFinish2(IUserMessage umsg, int number, int baseNumber, [Remainder] string other_name = null)
{ {
@ -199,7 +199,7 @@ namespace NadekoBot.Modules.ClashOfClans
await FinishClaim(umsg, number, baseNumber, other_name, 2); await FinishClaim(umsg, number, baseNumber, other_name, 2);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task ClaimFinish(IUserMessage umsg, int number, int baseNumber, [Remainder] string other_name = null) public async Task ClaimFinish(IUserMessage umsg, int number, int baseNumber, [Remainder] string other_name = null)
{ {
@ -207,7 +207,7 @@ namespace NadekoBot.Modules.ClashOfClans
await FinishClaim(umsg, number, baseNumber, other_name); await FinishClaim(umsg, number, baseNumber, other_name);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task EndWar(IUserMessage umsg, int number) public async Task EndWar(IUserMessage umsg, int number)
{ {
@ -228,7 +228,7 @@ namespace NadekoBot.Modules.ClashOfClans
warsInfo.Item1.RemoveAt(warsInfo.Item2); warsInfo.Item1.RemoveAt(warsInfo.Item2);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Unclaim(IUserMessage umsg, int number, [Remainder] string otherName = null) public async Task Unclaim(IUserMessage umsg, int number, [Remainder] string otherName = null)
{ {

View File

@ -24,7 +24,7 @@ namespace NadekoBot.Modules.Gambling
} }
public static ConcurrentDictionary<ulong, AnimalRace> AnimalRaces = new ConcurrentDictionary<ulong, AnimalRace>(); public static ConcurrentDictionary<ulong, AnimalRace> AnimalRaces = new ConcurrentDictionary<ulong, AnimalRace>();
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Race(IUserMessage umsg) public async Task Race(IUserMessage umsg)
{ {
@ -36,7 +36,7 @@ namespace NadekoBot.Modules.Gambling
await channel.SendMessageAsync("🏁 `Failed starting a race. Another race is probably running.`"); await channel.SendMessageAsync("🏁 `Failed starting a race. Another race is probably running.`");
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task JoinRace(IUserMessage umsg, int amount = 0) public async Task JoinRace(IUserMessage umsg, int amount = 0)
{ {

View File

@ -21,7 +21,7 @@ namespace NadekoBot.Modules.Gambling
{ {
private Regex dndRegex { get; } = new Regex(@"(?<n1>\d+)d(?<n2>\d+)", RegexOptions.Compiled); private Regex dndRegex { get; } = new Regex(@"(?<n1>\d+)d(?<n2>\d+)", RegexOptions.Compiled);
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Roll(IUserMessage umsg) public async Task Roll(IUserMessage umsg)
{ {
@ -44,7 +44,7 @@ namespace NadekoBot.Modules.Gambling
await channel.SendFileAsync(imageStream, "dice.png", $"{umsg.Author.Mention} rolled " + Format.Code(gen.ToString())).ConfigureAwait(false); await channel.SendFileAsync(imageStream, "dice.png", $"{umsg.Author.Mention} rolled " + Format.Code(gen.ToString())).ConfigureAwait(false);
} }
//todo merge into internallDndRoll and internalRoll //todo merge into internallDndRoll and internalRoll
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Roll(IUserMessage umsg, string arg) public async Task Roll(IUserMessage umsg, string arg)
{ {
@ -74,7 +74,7 @@ namespace NadekoBot.Modules.Gambling
} }
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Roll(IUserMessage umsg, int num) public async Task Roll(IUserMessage umsg, int num)
{ {
@ -128,7 +128,7 @@ namespace NadekoBot.Modules.Gambling
await channel.SendFileAsync(ms, "dice.png", $"{umsg.Author.Mention} rolled {values.Count} {(values.Count == 1 ? "die" : "dice")}. Total: **{values.Sum()}** Average: **{(values.Sum() / (1.0f * values.Count)).ToString("N2")}**").ConfigureAwait(false); await channel.SendFileAsync(ms, "dice.png", $"{umsg.Author.Mention} rolled {values.Count} {(values.Count == 1 ? "die" : "dice")}. Total: **{values.Sum()}** Average: **{(values.Sum() / (1.0f * values.Count)).ToString("N2")}**").ConfigureAwait(false);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Rolluo(IUserMessage umsg, string arg) public async Task Rolluo(IUserMessage umsg, string arg)
{ {
@ -158,7 +158,7 @@ namespace NadekoBot.Modules.Gambling
} }
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Rolluo(IUserMessage umsg, int num) public async Task Rolluo(IUserMessage umsg, int num)
{ {
@ -211,7 +211,7 @@ namespace NadekoBot.Modules.Gambling
await channel.SendFileAsync(ms, "dice.png", $"{umsg.Author.Mention} rolled {values.Count} {(values.Count == 1 ? "die" : "dice")}. Total: **{values.Sum()}** Average: **{(values.Sum() / (1.0f * values.Count)).ToString("N2")}**").ConfigureAwait(false); await channel.SendFileAsync(ms, "dice.png", $"{umsg.Author.Mention} rolled {values.Count} {(values.Count == 1 ? "die" : "dice")}. Total: **{values.Sum()}** Average: **{(values.Sum() / (1.0f * values.Count)).ToString("N2")}**").ConfigureAwait(false);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task NRoll(IUserMessage umsg, [Remainder] string range) public async Task NRoll(IUserMessage umsg, [Remainder] string range)
{ {

View File

@ -18,7 +18,7 @@ namespace NadekoBot.Modules.Gambling
private static readonly ConcurrentDictionary<IGuild, Cards> AllDecks = new ConcurrentDictionary<IGuild, Cards>(); private static readonly ConcurrentDictionary<IGuild, Cards> AllDecks = new ConcurrentDictionary<IGuild, Cards>();
private const string cardsPath = "data/images/cards"; private const string cardsPath = "data/images/cards";
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Draw(IUserMessage msg) public async Task Draw(IUserMessage msg)
{ {
@ -50,7 +50,7 @@ namespace NadekoBot.Modules.Gambling
} }
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Shuffle(IUserMessage imsg) public async Task Shuffle(IUserMessage imsg)
{ {

View File

@ -19,7 +19,7 @@ namespace NadekoBot.Modules.Gambling
private const string tailsPath = "data/images/coins/tails.png"; private const string tailsPath = "data/images/coins/tails.png";
public FlipCoinCommands() { } public FlipCoinCommands() { }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Flip(IUserMessage imsg, int count = 1) public async Task Flip(IUserMessage imsg, int count = 1)
{ {
@ -47,7 +47,7 @@ namespace NadekoBot.Modules.Gambling
await channel.SendFileAsync(imgs.Merge().ToStream(), $"{count} coins.png").ConfigureAwait(false); await channel.SendFileAsync(imgs.Merge().ToStream(), $"{count} coins.png").ConfigureAwait(false);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Betflip(IUserMessage umsg, int amount, string guess) public async Task Betflip(IUserMessage umsg, int amount, string guess)
{ {

View File

@ -33,7 +33,7 @@ namespace NadekoBot.Modules.Gambling
} }
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Raffle(IUserMessage umsg, [Remainder] IRole role = null) public async Task Raffle(IUserMessage umsg, [Remainder] IRole role = null)
{ {
@ -47,7 +47,7 @@ namespace NadekoBot.Modules.Gambling
await channel.SendMessageAsync($"**Raffled user:** {usr.Username} (id: {usr.Id})").ConfigureAwait(false); await channel.SendMessageAsync($"**Raffled user:** {usr.Username} (id: {usr.Id})").ConfigureAwait(false);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Cash(IUserMessage umsg, [Remainder] IUser user = null) public async Task Cash(IUserMessage umsg, [Remainder] IUser user = null)
{ {
@ -65,7 +65,7 @@ namespace NadekoBot.Modules.Gambling
await channel.SendMessageAsync($"{user.Username} has {amount} {config.CurrencySign}").ConfigureAwait(false); await channel.SendMessageAsync($"{user.Username} has {amount} {config.CurrencySign}").ConfigureAwait(false);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Give(IUserMessage umsg, long amount, [Remainder] IGuildUser receiver) public async Task Give(IUserMessage umsg, long amount, [Remainder] IGuildUser receiver)
{ {
@ -83,12 +83,12 @@ namespace NadekoBot.Modules.Gambling
} }
//todo owner only //todo owner only
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public Task Award(IUserMessage umsg, long amount, [Remainder] IGuildUser usr) => public Task Award(IUserMessage umsg, long amount, [Remainder] IGuildUser usr) =>
Award(umsg, amount, usr.Id); Award(umsg, amount, usr.Id);
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Award(IUserMessage umsg, long amount, [Remainder] ulong usrId) public async Task Award(IUserMessage umsg, long amount, [Remainder] ulong usrId)
{ {
@ -122,7 +122,7 @@ namespace NadekoBot.Modules.Gambling
// await channel.SendMessageAsync($"{umsg.Author.Mention} successfully took {amount} {Gambling.CurrencyName}s from <@{usrId}>!").ConfigureAwait(false); // await channel.SendMessageAsync($"{umsg.Author.Mention} successfully took {amount} {Gambling.CurrencyName}s from <@{usrId}>!").ConfigureAwait(false);
//} //}
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task BetRoll(IUserMessage umsg, long amount) public async Task BetRoll(IUserMessage umsg, long amount)
{ {
@ -172,7 +172,7 @@ namespace NadekoBot.Modules.Gambling
await channel.SendMessageAsync(str).ConfigureAwait(false); await channel.SendMessageAsync(str).ConfigureAwait(false);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Leaderboard(IUserMessage umsg) public async Task Leaderboard(IUserMessage umsg)
{ {

View File

@ -12,7 +12,7 @@ namespace NadekoBot.Modules.Games
{ {
public partial class Games public partial class Games
{ {
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Leet(IUserMessage umsg, int level, [Remainder] string text = null) public async Task Leet(IUserMessage umsg, int level, [Remainder] string text = null)
{ {

View File

@ -96,7 +96,7 @@ namespace NadekoBot.Modules.Games
}); });
return Task.CompletedTask; return Task.CompletedTask;
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Pick(IUserMessage imsg) public async Task Pick(IUserMessage imsg)
{ {
@ -129,7 +129,7 @@ namespace NadekoBot.Modules.Games
}); });
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Plant(IUserMessage imsg) public async Task Plant(IUserMessage imsg)
{ {
@ -160,7 +160,7 @@ namespace NadekoBot.Modules.Games
plantedFlowers.AddOrUpdate(channel.Id, new List<IUserMessage>() { msg }, (id, old) => { old.Add(msg); return old; }); plantedFlowers.AddOrUpdate(channel.Id, new List<IUserMessage>() { msg }, (id, old) => { old.Add(msg); return old; });
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
[RequirePermission(GuildPermission.ManageMessages)] [RequirePermission(GuildPermission.ManageMessages)]
public async Task Gencurrency(IUserMessage imsg) public async Task Gencurrency(IUserMessage imsg)

View File

@ -14,7 +14,7 @@ namespace NadekoBot.Modules.Games
{ {
public static ConcurrentDictionary<IGuild, Poll> ActivePolls = new ConcurrentDictionary<IGuild, Poll>(); public static ConcurrentDictionary<IGuild, Poll> ActivePolls = new ConcurrentDictionary<IGuild, Poll>();
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Poll(IUserMessage umsg, [Remainder] string arg = null) public async Task Poll(IUserMessage umsg, [Remainder] string arg = null)
{ {
@ -35,7 +35,7 @@ namespace NadekoBot.Modules.Games
} }
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Pollend(IUserMessage umsg) public async Task Pollend(IUserMessage umsg)
{ {

View File

@ -139,7 +139,7 @@ namespace NadekoBot.Modules.Games
RunningContests = new ConcurrentDictionary<ulong, TypingGame>(); RunningContests = new ConcurrentDictionary<ulong, TypingGame>();
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task TypeStart(IUserMessage msg) public async Task TypeStart(IUserMessage msg)
{ {
@ -160,7 +160,7 @@ namespace NadekoBot.Modules.Games
} }
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task TypeStop(IUserMessage imsg) public async Task TypeStop(IUserMessage imsg)
{ {

View File

@ -17,7 +17,7 @@ namespace NadekoBot.Modules.Games
{ {
public static ConcurrentDictionary<ulong, TriviaGame> RunningTrivias = new ConcurrentDictionary<ulong, TriviaGame>(); public static ConcurrentDictionary<ulong, TriviaGame> RunningTrivias = new ConcurrentDictionary<ulong, TriviaGame>();
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Trivia(IUserMessage umsg, params string[] args) public async Task Trivia(IUserMessage umsg, params string[] args)
{ {
@ -44,7 +44,7 @@ namespace NadekoBot.Modules.Games
await channel.SendMessageAsync("Trivia game is already running on this server.\n" + trivia.CurrentQuestion).ConfigureAwait(false); await channel.SendMessageAsync("Trivia game is already running on this server.\n" + trivia.CurrentQuestion).ConfigureAwait(false);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Tl(IUserMessage umsg) public async Task Tl(IUserMessage umsg)
{ {
@ -57,7 +57,7 @@ namespace NadekoBot.Modules.Games
await channel.SendMessageAsync("No trivia is running on this server.").ConfigureAwait(false); await channel.SendMessageAsync("No trivia is running on this server.").ConfigureAwait(false);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Tq(IUserMessage umsg) public async Task Tq(IUserMessage umsg)
{ {

View File

@ -27,7 +27,7 @@ namespace NadekoBot.Modules.Games
{ {
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Choose(IUserMessage umsg, [Remainder] string list = null) public async Task Choose(IUserMessage umsg, [Remainder] string list = null)
{ {
@ -41,7 +41,7 @@ namespace NadekoBot.Modules.Games
await channel.SendMessageAsync(listArr[rng.Next(0, listArr.Length)]).ConfigureAwait(false); await channel.SendMessageAsync(listArr[rng.Next(0, listArr.Length)]).ConfigureAwait(false);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task _8Ball(IUserMessage umsg, [Remainder] string question = null) public async Task _8Ball(IUserMessage umsg, [Remainder] string question = null)
{ {
@ -54,7 +54,7 @@ namespace NadekoBot.Modules.Games
🎱 `8Ball Answers` __**{_8BallResponses.Shuffle().FirstOrDefault()}**__").ConfigureAwait(false); 🎱 `8Ball Answers` __**{_8BallResponses.Shuffle().FirstOrDefault()}**__").ConfigureAwait(false);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Rps(IUserMessage umsg, string input) public async Task Rps(IUserMessage umsg, string input)
{ {
@ -104,7 +104,7 @@ namespace NadekoBot.Modules.Games
await channel.SendMessageAsync(msg).ConfigureAwait(false); await channel.SendMessageAsync(msg).ConfigureAwait(false);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Linux(IUserMessage umsg, string guhnoo, string loonix) public async Task Linux(IUserMessage umsg, string guhnoo, string loonix)
{ {

View File

@ -9,6 +9,8 @@ using System;
using System.IO; using System.IO;
using System.Text; using System.Text;
using Discord.WebSocket; using Discord.WebSocket;
using System.Collections;
using System.Collections.Generic;
namespace NadekoBot.Modules.Help namespace NadekoBot.Modules.Help
{ {
@ -25,17 +27,17 @@ namespace NadekoBot.Modules.Help
{ {
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Modules(IUserMessage umsg) public async Task Modules(IUserMessage umsg)
{ {
var channel = (ITextChannel)umsg.Channel; var channel = (ITextChannel)umsg.Channel;
await channel.SendMessageAsync("`List of modules:` \n• " + string.Join("\n• ", _commands.Modules.Select(m => m.Name)) + $"\n`Type \"-commands module_name\" to get a list of commands in that module.`") await channel.SendMessageAsync("`List of modules:` ```xl\n• " + string.Join("\n• ", _commands.Modules.Select(m => m.Name)) + $"\n``` `Type \"-commands module_name\" to get a list of commands in that module.`")
.ConfigureAwait(false); .ConfigureAwait(false);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Commands(IUserMessage umsg, [Remainder] string module = null) public async Task Commands(IUserMessage umsg, [Remainder] string module = null)
{ {
@ -46,7 +48,9 @@ namespace NadekoBot.Modules.Help
return; return;
var cmds = _commands.Commands.Where(c => c.Module.Name.ToUpperInvariant().StartsWith(module)) var cmds = _commands.Commands.Where(c => c.Module.Name.ToUpperInvariant().StartsWith(module))
.OrderBy(c => c.Text) .OrderBy(c => c.Text)
.Distinct(new CommandTextEqualityComparer())
.AsEnumerable(); .AsEnumerable();
var cmdsArray = cmds as Command[] ?? cmds.ToArray(); var cmdsArray = cmds as Command[] ?? cmds.ToArray();
if (!cmdsArray.Any()) if (!cmdsArray.Any())
{ {
@ -64,7 +68,7 @@ namespace NadekoBot.Modules.Help
await channel.SendMessageAsync($"`You can type \"-h command_name\" to see the help about that specific command.`").ConfigureAwait(false); await channel.SendMessageAsync($"`You can type \"-h command_name\" to see the help about that specific command.`").ConfigureAwait(false);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task H(IUserMessage umsg, [Remainder] string comToFind = null) public async Task H(IUserMessage umsg, [Remainder] string comToFind = null)
{ {
@ -88,11 +92,11 @@ namespace NadekoBot.Modules.Help
if (alias != null) if (alias != null)
str += $" / `{ alias }`"; str += $" / `{ alias }`";
if (com != null) if (com != null)
await channel.SendMessageAsync(str + $@"{Environment.NewLine}**Desc:** {com.Description} await channel.SendMessageAsync(str + $@"{Environment.NewLine}**Desc:** {com.Remarks}
**Usage:** {com.Summary}").ConfigureAwait(false); **Usage:** {com.Summary}").ConfigureAwait(false);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Hgit(IUserMessage umsg) public async Task Hgit(IUserMessage umsg)
{ {
@ -108,7 +112,7 @@ namespace NadekoBot.Modules.Help
helpstr.AppendLine("----------------|--------------|-------"); helpstr.AppendLine("----------------|--------------|-------");
lastModule = com.Module.Name; lastModule = com.Module.Name;
} }
helpstr.AppendLine($"`{com.Text}` {string.Join(" ", com.Aliases.Skip(1).Select(a=>"`"+a+"`"))} | {com.Description} | {com.Summary}"); helpstr.AppendLine($"`{com.Text}` {string.Join(" ", com.Aliases.Skip(1).Select(a=>"`"+a+"`"))} | {com.Remarks} | {com.Summary}");
} }
helpstr = helpstr.Replace((await NadekoBot.Client.GetCurrentUserAsync()).Username , "@BotName"); helpstr = helpstr.Replace((await NadekoBot.Client.GetCurrentUserAsync()).Username , "@BotName");
#if DEBUG #if DEBUG
@ -118,7 +122,7 @@ namespace NadekoBot.Modules.Help
#endif #endif
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Guide(IUserMessage umsg) public async Task Guide(IUserMessage umsg)
{ {
@ -129,7 +133,7 @@ namespace NadekoBot.Modules.Help
**Hosting Guides and docs can be found here**: <http://nadekobot.rtfd.io>").ConfigureAwait(false); **Hosting Guides and docs can be found here**: <http://nadekobot.rtfd.io>").ConfigureAwait(false);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Donate(IUserMessage umsg) public async Task Donate(IUserMessage umsg)
{ {
@ -143,4 +147,12 @@ Don't forget to leave your discord name or id in the message.
**Thank you** ").ConfigureAwait(false); **Thank you** ").ConfigureAwait(false);
} }
} }
public class CommandTextEqualityComparer : IEqualityComparer<Command>
{
public bool Equals(Command x, Command y) => x.Text == y.Text;
public int GetHashCode(Command obj) => obj.Text.GetHashCode();
}
} }

View File

@ -35,7 +35,7 @@ namespace NadekoBot.Modules.Music
_google = google; _google = google;
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public Task Next(IUserMessage umsg) public Task Next(IUserMessage umsg)
{ {
@ -48,7 +48,7 @@ namespace NadekoBot.Modules.Music
return Task.CompletedTask; return Task.CompletedTask;
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public Task Stop(IUserMessage umsg) public Task Stop(IUserMessage umsg)
{ {
@ -64,7 +64,7 @@ namespace NadekoBot.Modules.Music
return Task.CompletedTask; return Task.CompletedTask;
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public Task Destroy(IUserMessage umsg) public Task Destroy(IUserMessage umsg)
{ {
@ -77,7 +77,7 @@ namespace NadekoBot.Modules.Music
return Task.CompletedTask; return Task.CompletedTask;
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Pause(IUserMessage umsg) public async Task Pause(IUserMessage umsg)
{ {
@ -94,7 +94,7 @@ namespace NadekoBot.Modules.Music
await channel.SendMessageAsync("🎵`Music Player unpaused.`").ConfigureAwait(false); await channel.SendMessageAsync("🎵`Music Player unpaused.`").ConfigureAwait(false);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Queue(IUserMessage umsg, [Remainder] string query) public async Task Queue(IUserMessage umsg, [Remainder] string query)
{ {
@ -108,7 +108,7 @@ namespace NadekoBot.Modules.Music
} }
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task SoundCloudQueue(IUserMessage umsg, [Remainder] string query) public async Task SoundCloudQueue(IUserMessage umsg, [Remainder] string query)
{ {
@ -122,7 +122,7 @@ namespace NadekoBot.Modules.Music
} }
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task ListQueue(IUserMessage umsg, int page = 1) public async Task ListQueue(IUserMessage umsg, int page = 1)
{ {
@ -155,7 +155,7 @@ namespace NadekoBot.Modules.Music
await channel.SendMessageAsync(toSend + string.Join("\n", musicPlayer.Playlist.Skip(startAt).Take(15).Select(v => $"`{number++}.` {v.PrettyName}"))).ConfigureAwait(false); await channel.SendMessageAsync(toSend + string.Join("\n", musicPlayer.Playlist.Skip(startAt).Take(15).Select(v => $"`{number++}.` {v.PrettyName}"))).ConfigureAwait(false);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task NowPlaying(IUserMessage umsg) public async Task NowPlaying(IUserMessage umsg)
{ {
@ -170,7 +170,7 @@ namespace NadekoBot.Modules.Music
$"{currentSong.PrettyCurrentTime()}").ConfigureAwait(false); $"{currentSong.PrettyCurrentTime()}").ConfigureAwait(false);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Volume(IUserMessage umsg, int val) public async Task Volume(IUserMessage umsg, int val)
{ {
@ -186,7 +186,7 @@ namespace NadekoBot.Modules.Music
await channel.SendMessageAsync($"🎵 `Volume set to {volume}%`").ConfigureAwait(false); await channel.SendMessageAsync($"🎵 `Volume set to {volume}%`").ConfigureAwait(false);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Defvol(IUserMessage umsg, [Remainder] int val) public async Task Defvol(IUserMessage umsg, [Remainder] int val)
{ {
@ -205,7 +205,7 @@ namespace NadekoBot.Modules.Music
await channel.SendMessageAsync($"🎵 `Default volume set to {val}%`").ConfigureAwait(false); await channel.SendMessageAsync($"🎵 `Default volume set to {val}%`").ConfigureAwait(false);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public Task Mute(IUserMessage umsg) public Task Mute(IUserMessage umsg)
{ {
@ -219,7 +219,7 @@ namespace NadekoBot.Modules.Music
return Task.CompletedTask; return Task.CompletedTask;
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public Task Max(IUserMessage umsg) public Task Max(IUserMessage umsg)
{ {
@ -233,7 +233,7 @@ namespace NadekoBot.Modules.Music
return Task.CompletedTask; return Task.CompletedTask;
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Shuffle(IUserMessage umsg) public async Task Shuffle(IUserMessage umsg)
{ {
@ -253,7 +253,7 @@ namespace NadekoBot.Modules.Music
await channel.SendMessageAsync("🎵 `Songs shuffled.`").ConfigureAwait(false); await channel.SendMessageAsync("🎵 `Songs shuffled.`").ConfigureAwait(false);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Playlist(IUserMessage umsg, [Remainder] string playlist) public async Task Playlist(IUserMessage umsg, [Remainder] string playlist)
{ {
@ -295,7 +295,7 @@ namespace NadekoBot.Modules.Music
await msg.ModifyAsync(m => m.Content = "🎵 `Playlist queue complete.`").ConfigureAwait(false); await msg.ModifyAsync(m => m.Content = "🎵 `Playlist queue complete.`").ConfigureAwait(false);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task SoundCloudPl(IUserMessage umsg, [Remainder] string pl) public async Task SoundCloudPl(IUserMessage umsg, [Remainder] string pl)
{ {
@ -332,7 +332,7 @@ namespace NadekoBot.Modules.Music
} }
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task LocalPl(IUserMessage umsg, [Remainder] string directory) public async Task LocalPl(IUserMessage umsg, [Remainder] string directory)
{ {
@ -361,7 +361,7 @@ namespace NadekoBot.Modules.Music
catch { } catch { }
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Radio(IUserMessage umsg, string radio_link) public async Task Radio(IUserMessage umsg, string radio_link)
{ {
@ -379,7 +379,7 @@ namespace NadekoBot.Modules.Music
} }
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Local(IUserMessage umsg, [Remainder] string path) public async Task Local(IUserMessage umsg, [Remainder] string path)
{ {
@ -391,7 +391,7 @@ namespace NadekoBot.Modules.Music
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Move(IUserMessage umsg) public async Task Move(IUserMessage umsg)
{ {
@ -403,7 +403,7 @@ namespace NadekoBot.Modules.Music
await musicPlayer.MoveToVoiceChannel(voiceChannel); await musicPlayer.MoveToVoiceChannel(voiceChannel);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Remove(IUserMessage umsg, int num) public async Task Remove(IUserMessage umsg, int num)
{ {
@ -423,7 +423,7 @@ namespace NadekoBot.Modules.Music
await channel.SendMessageAsync($"🎵**Track {song.PrettyName} at position `#{num}` has been removed.**").ConfigureAwait(false); await channel.SendMessageAsync($"🎵**Track {song.PrettyName} at position `#{num}` has been removed.**").ConfigureAwait(false);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Remove(IUserMessage umsg, string all) public async Task Remove(IUserMessage umsg, string all)
{ {
@ -438,7 +438,7 @@ namespace NadekoBot.Modules.Music
return; return;
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task MoveSong(IUserMessage umsg, [Remainder] string fromto) public async Task MoveSong(IUserMessage umsg, [Remainder] string fromto)
{ {
@ -474,7 +474,7 @@ namespace NadekoBot.Modules.Music
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task SetMaxQueue(IUserMessage umsg, uint size) public async Task SetMaxQueue(IUserMessage umsg, uint size)
{ {
@ -488,7 +488,7 @@ namespace NadekoBot.Modules.Music
await channel.SendMessageAsync($"🎵 `Max queue set to {(size == 0 ? ("unlimited") : size + " tracks")}`"); await channel.SendMessageAsync($"🎵 `Max queue set to {(size == 0 ? ("unlimited") : size + " tracks")}`");
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task ReptCurSong(IUserMessage umsg) public async Task ReptCurSong(IUserMessage umsg)
{ {
@ -506,7 +506,7 @@ namespace NadekoBot.Modules.Music
.ConfigureAwait(false); .ConfigureAwait(false);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task RepeatPl(IUserMessage umsg) public async Task RepeatPl(IUserMessage umsg)
{ {
@ -551,7 +551,7 @@ namespace NadekoBot.Modules.Music
//} //}
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Goto(IUserMessage umsg, int time) public async Task Goto(IUserMessage umsg, int time)
{ {
@ -588,7 +588,7 @@ namespace NadekoBot.Modules.Music
await channel.SendMessageAsync($"`Skipped to {minutes}:{seconds}`").ConfigureAwait(false); await channel.SendMessageAsync($"`Skipped to {minutes}:{seconds}`").ConfigureAwait(false);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task GetLink(IUserMessage umsg, int index = 0) public async Task GetLink(IUserMessage umsg, int index = 0)
{ {
@ -623,7 +623,7 @@ namespace NadekoBot.Modules.Music
} }
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Autoplay(IUserMessage umsg) public async Task Autoplay(IUserMessage umsg)
{ {

View File

@ -22,7 +22,7 @@ namespace NadekoBot.Modules.NSFW
{ {
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Hentai(IUserMessage umsg, [Remainder] string tag = null) public async Task Hentai(IUserMessage umsg, [Remainder] string tag = null)
{ {
@ -41,7 +41,7 @@ namespace NadekoBot.Modules.NSFW
await channel.SendMessageAsync(String.Join("\n\n", links)).ConfigureAwait(false); await channel.SendMessageAsync(String.Join("\n\n", links)).ConfigureAwait(false);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Danbooru(IUserMessage umsg, [Remainder] string tag = null) public async Task Danbooru(IUserMessage umsg, [Remainder] string tag = null)
{ {
@ -55,7 +55,7 @@ namespace NadekoBot.Modules.NSFW
await channel.SendMessageAsync(link).ConfigureAwait(false); await channel.SendMessageAsync(link).ConfigureAwait(false);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Gelbooru(IUserMessage umsg, [Remainder] string tag = null) public async Task Gelbooru(IUserMessage umsg, [Remainder] string tag = null)
{ {
@ -69,7 +69,7 @@ namespace NadekoBot.Modules.NSFW
await channel.SendMessageAsync(link).ConfigureAwait(false); await channel.SendMessageAsync(link).ConfigureAwait(false);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Rule34(IUserMessage umsg, [Remainder] string tag = null) public async Task Rule34(IUserMessage umsg, [Remainder] string tag = null)
{ {
@ -83,7 +83,7 @@ namespace NadekoBot.Modules.NSFW
await channel.SendMessageAsync(link).ConfigureAwait(false); await channel.SendMessageAsync(link).ConfigureAwait(false);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task E621(IUserMessage umsg, [Remainder] string tag = null) public async Task E621(IUserMessage umsg, [Remainder] string tag = null)
{ {
@ -97,7 +97,7 @@ namespace NadekoBot.Modules.NSFW
await channel.SendMessageAsync(link).ConfigureAwait(false); await channel.SendMessageAsync(link).ConfigureAwait(false);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Cp(IUserMessage umsg) public async Task Cp(IUserMessage umsg)
{ {
@ -106,7 +106,7 @@ namespace NadekoBot.Modules.NSFW
await channel.SendMessageAsync("http://i.imgur.com/MZkY1md.jpg").ConfigureAwait(false); await channel.SendMessageAsync("http://i.imgur.com/MZkY1md.jpg").ConfigureAwait(false);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Boobs(IUserMessage umsg) public async Task Boobs(IUserMessage umsg)
{ {
@ -126,7 +126,7 @@ namespace NadekoBot.Modules.NSFW
} }
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Butts(IUserMessage umsg) public async Task Butts(IUserMessage umsg)
{ {

View File

@ -49,8 +49,10 @@ namespace NadekoBot.Modules.Permissions
{ {
if (!((perm.SecondaryTarget == SecondaryPermissionType.Command && if (!((perm.SecondaryTarget == SecondaryPermissionType.Command &&
perm.SecondaryTargetName == command.Text.ToLowerInvariant()) || perm.SecondaryTargetName == command.Text.ToLowerInvariant()) ||
(perm.SecondaryTarget == SecondaryPermissionType.Module && ((perm.SecondaryTarget == SecondaryPermissionType.Module || perm.SecondaryTarget == SecondaryPermissionType.AllCommands) &&
perm.SecondaryTargetName == command.Module.Name.ToLowerInvariant()))) perm.SecondaryTargetName == command.Module.Name.ToLowerInvariant()) ||
perm.SecondaryTarget == SecondaryPermissionType.AllModules ||
(perm.SecondaryTarget == SecondaryPermissionType.AllCommands && perm.SecondaryTargetName == command.Module.Name.ToLowerInvariant())))
return null; return null;
switch (perm.PrimaryTarget) switch (perm.PrimaryTarget)
@ -76,7 +78,7 @@ namespace NadekoBot.Modules.Permissions
public static string GetCommand(this Permission perm) public static string GetCommand(this Permission perm)
{ {
var com = NadekoBot.ModulePrefixes[typeof(Permissions).Name]; var com = "";
switch (perm.PrimaryTarget) switch (perm.PrimaryTarget)
{ {
case PrimaryPermissionType.User: case PrimaryPermissionType.User:
@ -98,6 +100,12 @@ namespace NadekoBot.Modules.Permissions
case SecondaryPermissionType.Command: case SecondaryPermissionType.Command:
com += "c"; com += "c";
break; break;
case SecondaryPermissionType.AllCommands:
com = "a" + com + "c";
break;
case SecondaryPermissionType.AllModules:
com = "a" + com + "m";
break;
} }
com += " " + perm.SecondaryTargetName + " " + (perm.State ? "enable" : "disable") + " "; com += " " + perm.SecondaryTargetName + " " + (perm.State ? "enable" : "disable") + " ";
@ -114,7 +122,7 @@ namespace NadekoBot.Modules.Permissions
break; break;
} }
return com; return NadekoBot.ModulePrefixes[typeof(Permissions).Name] + com;
} }
} }

View File

@ -20,7 +20,7 @@ namespace NadekoBot.Modules.Permissions
{ {
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task ListPerms(IUserMessage msg) public async Task ListPerms(IUserMessage msg)
{ {
@ -41,7 +41,7 @@ namespace NadekoBot.Modules.Permissions
await channel.SendMessageAsync(toSend).ConfigureAwait(false); await channel.SendMessageAsync(toSend).ConfigureAwait(false);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task UsrCmd(IUserMessage imsg, Command command, PermissionAction action, IGuildUser user) public async Task UsrCmd(IUserMessage imsg, Command command, PermissionAction action, IGuildUser user)
{ {
@ -62,7 +62,7 @@ namespace NadekoBot.Modules.Permissions
await channel.SendMessageAsync($"{(action.Value ? "Allowed" : "Denied")} usage of `{command.Text}` command for `{user}` user.").ConfigureAwait(false); await channel.SendMessageAsync($"{(action.Value ? "Allowed" : "Denied")} usage of `{command.Text}` command for `{user}` user.").ConfigureAwait(false);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task UsrMdl(IUserMessage imsg, Module module, PermissionAction action, IGuildUser user) public async Task UsrMdl(IUserMessage imsg, Module module, PermissionAction action, IGuildUser user)
{ {
@ -82,5 +82,216 @@ namespace NadekoBot.Modules.Permissions
} }
await channel.SendMessageAsync($"{(action.Value ? "Allowed" : "Denied")} usage of `{module.Name}` module for `{user}` user.").ConfigureAwait(false); await channel.SendMessageAsync($"{(action.Value ? "Allowed" : "Denied")} usage of `{module.Name}` module for `{user}` user.").ConfigureAwait(false);
} }
[LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)]
public async Task RoleCmd(IUserMessage imsg, Command command, PermissionAction action, IRole role)
{
var channel = (ITextChannel)imsg.Channel;
using (var uow = DbHandler.UnitOfWork())
{
uow.GuildConfigs.For(channel.Guild.Id).Permissions.Add(new Permission
{
PrimaryTarget = PrimaryPermissionType.Role,
PrimaryTargetId = role.Id,
SecondaryTarget = SecondaryPermissionType.Command,
SecondaryTargetName = command.Text.ToLowerInvariant(),
State = action.Value,
});
await uow.CompleteAsync().ConfigureAwait(false);
}
await channel.SendMessageAsync($"{(action.Value ? "Allowed" : "Denied")} usage of `{command.Text}` command for `{role}` role.").ConfigureAwait(false);
}
[LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)]
public async Task RoleMdl(IUserMessage imsg, Module module, PermissionAction action, IRole role)
{
var channel = (ITextChannel)imsg.Channel;
using (var uow = DbHandler.UnitOfWork())
{
uow.GuildConfigs.For(channel.Guild.Id).Permissions.Add(new Permission
{
PrimaryTarget = PrimaryPermissionType.Role,
PrimaryTargetId = role.Id,
SecondaryTarget = SecondaryPermissionType.Module,
SecondaryTargetName = module.Name.ToLowerInvariant(),
State = action.Value,
});
await uow.CompleteAsync().ConfigureAwait(false);
}
await channel.SendMessageAsync($"{(action.Value ? "Allowed" : "Denied")} usage of `{module.Name}` module for `{role}` role.").ConfigureAwait(false);
}
[LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)]
public async Task ChnlCmd(IUserMessage imsg, Command command, PermissionAction action, ITextChannel chnl)
{
var channel = (ITextChannel)imsg.Channel;
using (var uow = DbHandler.UnitOfWork())
{
uow.GuildConfigs.For(channel.Guild.Id).Permissions.Add(new Permission
{
PrimaryTarget = PrimaryPermissionType.Channel,
PrimaryTargetId = chnl.Id,
SecondaryTarget = SecondaryPermissionType.Command,
SecondaryTargetName = command.Text.ToLowerInvariant(),
State = action.Value,
});
await uow.CompleteAsync().ConfigureAwait(false);
}
await channel.SendMessageAsync($"{(action.Value ? "Allowed" : "Denied")} usage of `{command.Text}` command for `{chnl}` channel.").ConfigureAwait(false);
}
[LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)]
public async Task ChnlMdl(IUserMessage imsg, Module module, PermissionAction action, ITextChannel chnl)
{
var channel = (ITextChannel)imsg.Channel;
using (var uow = DbHandler.UnitOfWork())
{
uow.GuildConfigs.For(channel.Guild.Id).Permissions.Add(new Permission
{
PrimaryTarget = PrimaryPermissionType.Channel,
PrimaryTargetId = chnl.Id,
SecondaryTarget = SecondaryPermissionType.Module,
SecondaryTargetName = module.Name.ToLowerInvariant(),
State = action.Value,
});
await uow.CompleteAsync().ConfigureAwait(false);
}
await channel.SendMessageAsync($"{(action.Value ? "Allowed" : "Denied")} usage of `{module.Name}` module for `{chnl}` channel.").ConfigureAwait(false);
}
[LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)]
public async Task AllChnlMdls(IUserMessage imsg, PermissionAction action, ITextChannel chnl)
{
var channel = (ITextChannel)imsg.Channel;
using (var uow = DbHandler.UnitOfWork())
{
uow.GuildConfigs.For(channel.Guild.Id).Permissions.Add(new Permission
{
PrimaryTarget = PrimaryPermissionType.Channel,
PrimaryTargetId = chnl.Id,
SecondaryTarget = SecondaryPermissionType.AllModules,
SecondaryTargetName = "*",
State = action.Value,
});
await uow.CompleteAsync().ConfigureAwait(false);
}
await channel.SendMessageAsync($"{(action.Value ? "Allowed" : "Denied")} usage of `ALL MODULES` for `{chnl}` channel.").ConfigureAwait(false);
}
[LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)]
public async Task AllRoleMdls(IUserMessage imsg, PermissionAction action, IRole role)
{
var channel = (ITextChannel)imsg.Channel;
using (var uow = DbHandler.UnitOfWork())
{
uow.GuildConfigs.For(channel.Guild.Id).Permissions.Add(new Permission
{
PrimaryTarget = PrimaryPermissionType.Role,
PrimaryTargetId = role.Id,
SecondaryTarget = SecondaryPermissionType.AllModules,
SecondaryTargetName = "*",
State = action.Value,
});
await uow.CompleteAsync().ConfigureAwait(false);
}
await channel.SendMessageAsync($"{(action.Value ? "Allowed" : "Denied")} usage of `ALL MODULES` for `{role}` role.").ConfigureAwait(false);
}
[LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)]
public async Task AllUserMdls(IUserMessage imsg, PermissionAction action, IUser user)
{
var channel = (ITextChannel)imsg.Channel;
using (var uow = DbHandler.UnitOfWork())
{
uow.GuildConfigs.For(channel.Guild.Id).Permissions.Add(new Permission
{
PrimaryTarget = PrimaryPermissionType.User,
PrimaryTargetId = user.Id,
SecondaryTarget = SecondaryPermissionType.AllModules,
SecondaryTargetName = "*",
State = action.Value,
});
await uow.CompleteAsync().ConfigureAwait(false);
}
await channel.SendMessageAsync($"{(action.Value ? "Allowed" : "Denied")} usage of `ALL MODULES` for `{user}` user.").ConfigureAwait(false);
}
[LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)]
public async Task AllChnlCmds(IUserMessage imsg, Module module, PermissionAction action, ITextChannel chnl)
{
var channel = (ITextChannel)imsg.Channel;
using (var uow = DbHandler.UnitOfWork())
{
uow.GuildConfigs.For(channel.Guild.Id).Permissions.Add(new Permission
{
PrimaryTarget = PrimaryPermissionType.Channel,
PrimaryTargetId = chnl.Id,
SecondaryTarget = SecondaryPermissionType.Command,
SecondaryTargetName = module.Name.ToLowerInvariant(),
State = action.Value,
});
await uow.CompleteAsync().ConfigureAwait(false);
}
await channel.SendMessageAsync($"{(action.Value ? "Allowed" : "Denied")} usage of `ALL COMMANDS` from `{module.Name}` module for `{chnl}` channel.").ConfigureAwait(false);
}
[LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)]
public async Task AllRoleCmds(IUserMessage imsg, Module module, PermissionAction action, IRole role)
{
var channel = (ITextChannel)imsg.Channel;
using (var uow = DbHandler.UnitOfWork())
{
uow.GuildConfigs.For(channel.Guild.Id).Permissions.Add(new Permission
{
PrimaryTarget = PrimaryPermissionType.Role,
PrimaryTargetId = role.Id,
SecondaryTarget = SecondaryPermissionType.AllCommands,
SecondaryTargetName = module.Name.ToLowerInvariant(),
State = action.Value,
});
await uow.CompleteAsync().ConfigureAwait(false);
}
await channel.SendMessageAsync($"{(action.Value ? "Allowed" : "Denied")} usage of `ALL COMMANDS` from `{module.Name}` module for `{role}` role.").ConfigureAwait(false);
}
[LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)]
public async Task AllUserCmds(IUserMessage imsg, Module module, PermissionAction action, IUser user)
{
var channel = (ITextChannel)imsg.Channel;
using (var uow = DbHandler.UnitOfWork())
{
uow.GuildConfigs.For(channel.Guild.Id).Permissions.Add(new Permission
{
PrimaryTarget = PrimaryPermissionType.User,
PrimaryTargetId = user.Id,
SecondaryTarget = SecondaryPermissionType.AllCommands,
SecondaryTargetName = module.Name.ToLowerInvariant(),
State = action.Value,
});
await uow.CompleteAsync().ConfigureAwait(false);
}
await channel.SendMessageAsync($"{(action.Value ? "Allowed" : "Denied")} usage of `ALL COMMANDS` from `{module.Name}` module for `{user}` user.").ConfigureAwait(false);
}
} }
} }

View File

@ -15,7 +15,7 @@ namespace NadekoBot.Modules.Games
} }
//todo Dragon should PR this in //todo Dragon should PR this in
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Poke(IUserMessage umsg) public async Task Poke(IUserMessage umsg)
{ {

View File

@ -29,7 +29,7 @@ namespace NadekoBot.Modules.Searches
_log = LogManager.GetCurrentClassLogger(); _log = LogManager.GetCurrentClassLogger();
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Anime(IUserMessage umsg, [Remainder] string query) public async Task Anime(IUserMessage umsg, [Remainder] string query)
{ {
@ -43,7 +43,7 @@ namespace NadekoBot.Modules.Searches
await channel.SendMessageAsync(result.ToString() ?? "`No anime found.`").ConfigureAwait(false); await channel.SendMessageAsync(result.ToString() ?? "`No anime found.`").ConfigureAwait(false);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Manga(IUserMessage umsg, [Remainder] string query) public async Task Manga(IUserMessage umsg, [Remainder] string query)
{ {

View File

@ -14,7 +14,7 @@ namespace NadekoBot.Modules.Searches
[Group] [Group]
public partial class Searches public partial class Searches
{ {
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public static async Task Calculate(IUserMessage msg, [Remainder] string expression) public static async Task Calculate(IUserMessage msg, [Remainder] string expression)
{ {
@ -41,7 +41,7 @@ namespace NadekoBot.Modules.Searches
} }
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task CalcOps(IUserMessage msg) public async Task CalcOps(IUserMessage msg)
{ {

View File

@ -42,7 +42,7 @@ namespace NadekoBot.Modules.Searches
_log.Warn("data/magicitems.json is missing. Magic items are not loaded."); _log.Warn("data/magicitems.json is missing. Magic items are not loaded.");
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Yomama(IUserMessage umsg) public async Task Yomama(IUserMessage umsg)
{ {
@ -54,7 +54,7 @@ namespace NadekoBot.Modules.Searches
} }
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Randjoke(IUserMessage umsg) public async Task Randjoke(IUserMessage umsg)
{ {
@ -66,7 +66,7 @@ namespace NadekoBot.Modules.Searches
} }
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task ChuckNorris(IUserMessage umsg) public async Task ChuckNorris(IUserMessage umsg)
{ {
@ -78,7 +78,7 @@ namespace NadekoBot.Modules.Searches
} }
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task WowJoke(IUserMessage umsg) public async Task WowJoke(IUserMessage umsg)
{ {
@ -90,7 +90,7 @@ namespace NadekoBot.Modules.Searches
await channel.SendMessageAsync(wowJokes[new NadekoRandom().Next(0, wowJokes.Count)].ToString()); await channel.SendMessageAsync(wowJokes[new NadekoRandom().Next(0, wowJokes.Count)].ToString());
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task MagicItem(IUserMessage umsg) public async Task MagicItem(IUserMessage umsg)
{ {

View File

@ -32,7 +32,7 @@ namespace NadekoBot.Modules.Searches
"Doesn't matter what you ban really. Enemy will ban your main and you will lose." }; "Doesn't matter what you ban really. Enemy will ban your main and you will lose." };
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Lolban(IUserMessage umsg) public async Task Lolban(IUserMessage umsg)
{ {

View File

@ -15,7 +15,7 @@ namespace NadekoBot.Modules.Searches
{ {
public partial class Searches public partial class Searches
{ {
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Memelist(IUserMessage umsg) public async Task Memelist(IUserMessage umsg)
{ {
@ -29,7 +29,7 @@ namespace NadekoBot.Modules.Searches
} }
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Memegen(IUserMessage umsg, string meme, string topText, string botText) public async Task Memegen(IUserMessage umsg, string meme, string topText, string botText)
{ {

View File

@ -25,7 +25,7 @@ namespace NadekoBot.Modules.Searches
{ {
_log = LogManager.GetCurrentClassLogger(); _log = LogManager.GetCurrentClassLogger();
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Osu(IUserMessage umsg, string usr, string mode) public async Task Osu(IUserMessage umsg, string usr, string mode)
{ {
@ -58,7 +58,7 @@ namespace NadekoBot.Modules.Searches
} }
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Osub(IUserMessage umsg, [Remainder] string map) public async Task Osub(IUserMessage umsg, [Remainder] string map)
{ {
@ -95,7 +95,7 @@ namespace NadekoBot.Modules.Searches
} }
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Osu5(IUserMessage umsg, string user, [Remainder] string mode) public async Task Osu5(IUserMessage umsg, string user, [Remainder] string mode)
{ {

View File

@ -38,7 +38,7 @@ namespace NadekoBot.Modules.Searches
_log.Warn(PokemonAbilitiesFile + " is missing. Pokemon abilities not loaded."); _log.Warn(PokemonAbilitiesFile + " is missing. Pokemon abilities not loaded.");
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Pokemon(IUserMessage umsg, [Remainder] string pokemon = null) public async Task Pokemon(IUserMessage umsg, [Remainder] string pokemon = null)
{ {
@ -59,7 +59,7 @@ namespace NadekoBot.Modules.Searches
await channel.SendMessageAsync("`No pokemon found.`"); await channel.SendMessageAsync("`No pokemon found.`");
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task PokemonAbility(IUserMessage umsg, [Remainder] string ability = null) public async Task PokemonAbility(IUserMessage umsg, [Remainder] string ability = null)
{ {

View File

@ -132,28 +132,28 @@ namespace NadekoBot.Modules.Searches
return new Tuple<bool, string>(false, "0"); return new Tuple<bool, string>(false, "0");
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
[RequirePermission(GuildPermission.ManageMessages)] [RequirePermission(GuildPermission.ManageMessages)]
public async Task Hitbox(IUserMessage msg, [Remainder] string username) => public async Task Hitbox(IUserMessage msg, [Remainder] string username) =>
await TrackStream((ITextChannel)msg.Channel, username, FollowedStream.FollowedStreamType.Hitbox) await TrackStream((ITextChannel)msg.Channel, username, FollowedStream.FollowedStreamType.Hitbox)
.ConfigureAwait(false); .ConfigureAwait(false);
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
[RequirePermission(GuildPermission.ManageMessages)] [RequirePermission(GuildPermission.ManageMessages)]
public async Task Twitch(IUserMessage msg, [Remainder] string username) => public async Task Twitch(IUserMessage msg, [Remainder] string username) =>
await TrackStream((ITextChannel)msg.Channel, username, FollowedStream.FollowedStreamType.Twitch) await TrackStream((ITextChannel)msg.Channel, username, FollowedStream.FollowedStreamType.Twitch)
.ConfigureAwait(false); .ConfigureAwait(false);
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
[RequirePermission(GuildPermission.ManageMessages)] [RequirePermission(GuildPermission.ManageMessages)]
public async Task Beam(IUserMessage msg, [Remainder] string username) => public async Task Beam(IUserMessage msg, [Remainder] string username) =>
await TrackStream((ITextChannel)msg.Channel, username, FollowedStream.FollowedStreamType.Beam) await TrackStream((ITextChannel)msg.Channel, username, FollowedStream.FollowedStreamType.Beam)
.ConfigureAwait(false); .ConfigureAwait(false);
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task ListStreams(IUserMessage imsg) public async Task ListStreams(IUserMessage imsg)
{ {
@ -179,7 +179,7 @@ namespace NadekoBot.Modules.Searches
await channel.SendMessageAsync($"You are following **{streams.Count()}** streams on this server.\n\n" + text).ConfigureAwait(false); await channel.SendMessageAsync($"You are following **{streams.Count()}** streams on this server.\n\n" + text).ConfigureAwait(false);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task RemoveStream(IUserMessage msg, [Remainder] string username) public async Task RemoveStream(IUserMessage msg, [Remainder] string username)
{ {
@ -207,7 +207,7 @@ namespace NadekoBot.Modules.Searches
await channel.SendMessageAsync($":ok: Removed `{toRemove.Username}`'s stream ({toRemove.Type}) from notifications.").ConfigureAwait(false); await channel.SendMessageAsync($":ok: Removed `{toRemove.Username}`'s stream ({toRemove.Type}) from notifications.").ConfigureAwait(false);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task CheckStream(IUserMessage imsg, FollowedStream.FollowedStreamType platform, [Remainder] string username) public async Task CheckStream(IUserMessage imsg, FollowedStream.FollowedStreamType platform, [Remainder] string username)
{ {

View File

@ -96,7 +96,7 @@ namespace NadekoBot.Modules.Searches
public List<ConvertUnit> Units { get; set; } public List<ConvertUnit> Units { get; set; }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task ConvertListE(IUserMessage msg) //extended and bugged list public async Task ConvertListE(IUserMessage msg) //extended and bugged list
{ {
@ -115,7 +115,7 @@ namespace NadekoBot.Modules.Searches
} }
await msg.ReplyLong(sb.ToString(), breakOn: new[] { "```xl", "\n" }); await msg.ReplyLong(sb.ToString(), breakOn: new[] { "```xl", "\n" });
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task ConvertList(IUserMessage msg) public async Task ConvertList(IUserMessage msg)
{ {
@ -129,7 +129,7 @@ namespace NadekoBot.Modules.Searches
} }
await msg.ReplyLong(sb.ToString(), breakOn: new[] { "```xl\n", "\n" }); await msg.ReplyLong(sb.ToString(), breakOn: new[] { "```xl\n", "\n" });
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
public async Task Convert(IUserMessage msg, string origin, string target, decimal value) public async Task Convert(IUserMessage msg, string origin, string target, decimal value)
{ {
var originUnit = Units.Find(x => x.Triggers.Select(y => y.ToLowerInvariant()).Contains(origin.ToLowerInvariant())); var originUnit = Units.Find(x => x.Triggers.Select(y => y.ToLowerInvariant()).Contains(origin.ToLowerInvariant()));

View File

@ -30,7 +30,7 @@ namespace NadekoBot.Modules.Searches
_google = youtube; _google = youtube;
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Weather(IUserMessage umsg, string city, string country) public async Task Weather(IUserMessage umsg, string city, string country)
{ {
@ -51,7 +51,7 @@ $@"🌍 **Weather for** 【{obj["target"]}】
🌄 **Sunrise:** {obj["sunrise"]} 🌇 **Sunset:** {obj["sunset"]}").ConfigureAwait(false); 🌄 **Sunrise:** {obj["sunrise"]} 🌇 **Sunset:** {obj["sunset"]}").ConfigureAwait(false);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Youtube(IUserMessage umsg, [Remainder] string query = null) public async Task Youtube(IUserMessage umsg, [Remainder] string query = null)
{ {
@ -66,7 +66,7 @@ $@"🌍 **Weather for** 【{obj["target"]}】
await channel.SendMessageAsync(result).ConfigureAwait(false); await channel.SendMessageAsync(result).ConfigureAwait(false);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Imdb(IUserMessage umsg, [Remainder] string query = null) public async Task Imdb(IUserMessage umsg, [Remainder] string query = null)
{ {
@ -90,7 +90,7 @@ $@"🌍 **Weather for** 【{obj["target"]}】
await channel.SendMessageAsync(result.ToString()).ConfigureAwait(false); await channel.SendMessageAsync(result.ToString()).ConfigureAwait(false);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task RandomCat(IUserMessage umsg) public async Task RandomCat(IUserMessage umsg)
{ {
@ -103,7 +103,7 @@ $@"🌍 **Weather for** 【{obj["target"]}】
} }
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task RandomDog(IUserMessage umsg) public async Task RandomDog(IUserMessage umsg)
{ {
@ -114,7 +114,7 @@ $@"🌍 **Weather for** 【{obj["target"]}】
} }
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task I(IUserMessage umsg, [Remainder] string query = null) public async Task I(IUserMessage umsg, [Remainder] string query = null)
{ {
@ -144,7 +144,7 @@ $@"🌍 **Weather for** 【{obj["target"]}】
} }
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Ir(IUserMessage umsg, [Remainder] string query = null) public async Task Ir(IUserMessage umsg, [Remainder] string query = null)
{ {
@ -176,7 +176,7 @@ $@"🌍 **Weather for** 【{obj["target"]}】
} }
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Lmgtfy(IUserMessage umsg, [Remainder] string ffs = null) public async Task Lmgtfy(IUserMessage umsg, [Remainder] string ffs = null)
{ {
@ -190,7 +190,7 @@ $@"🌍 **Weather for** 【{obj["target"]}】
.ConfigureAwait(false); .ConfigureAwait(false);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Google(IUserMessage umsg, [Remainder] string terms = null) public async Task Google(IUserMessage umsg, [Remainder] string terms = null)
{ {
@ -204,7 +204,7 @@ $@"🌍 **Weather for** 【{obj["target"]}】
.ConfigureAwait(false); .ConfigureAwait(false);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Hearthstone(IUserMessage umsg, [Remainder] string name = null) public async Task Hearthstone(IUserMessage umsg, [Remainder] string name = null)
{ {
@ -256,7 +256,7 @@ $@"🌍 **Weather for** 【{obj["target"]}】
} }
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Ud(IUserMessage umsg, [Remainder] string query = null) public async Task Ud(IUserMessage umsg, [Remainder] string query = null)
{ {
@ -290,7 +290,7 @@ $@"🌍 **Weather for** 【{obj["target"]}】
} }
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Hashtag(IUserMessage umsg, [Remainder] string query = null) public async Task Hashtag(IUserMessage umsg, [Remainder] string query = null)
{ {
@ -325,7 +325,7 @@ $@"🌍 **Weather for** 【{obj["target"]}】
} }
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Catfact(IUserMessage umsg) public async Task Catfact(IUserMessage umsg)
{ {
@ -339,7 +339,7 @@ $@"🌍 **Weather for** 【{obj["target"]}】
} }
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Revav(IUserMessage umsg, [Remainder] string arg = null) public async Task Revav(IUserMessage umsg, [Remainder] string arg = null)
{ {
@ -356,7 +356,7 @@ $@"🌍 **Weather for** 【{obj["target"]}】
await channel.SendMessageAsync($"https://images.google.com/searchbyimage?image_url={usr.AvatarUrl}").ConfigureAwait(false); await channel.SendMessageAsync($"https://images.google.com/searchbyimage?image_url={usr.AvatarUrl}").ConfigureAwait(false);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Revimg(IUserMessage umsg, [Remainder] string imageLink = null) public async Task Revimg(IUserMessage umsg, [Remainder] string imageLink = null)
{ {
@ -368,7 +368,7 @@ $@"🌍 **Weather for** 【{obj["target"]}】
await channel.SendMessageAsync($"https://images.google.com/searchbyimage?image_url={imageLink}").ConfigureAwait(false); await channel.SendMessageAsync($"https://images.google.com/searchbyimage?image_url={imageLink}").ConfigureAwait(false);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Safebooru(IUserMessage umsg, [Remainder] string tag = null) public async Task Safebooru(IUserMessage umsg, [Remainder] string tag = null)
{ {
@ -382,7 +382,7 @@ $@"🌍 **Weather for** 【{obj["target"]}】
await channel.SendMessageAsync(link).ConfigureAwait(false); await channel.SendMessageAsync(link).ConfigureAwait(false);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Wiki(IUserMessage umsg, [Remainder] string query = null) public async Task Wiki(IUserMessage umsg, [Remainder] string query = null)
{ {
@ -402,7 +402,7 @@ $@"🌍 **Weather for** 【{obj["target"]}】
} }
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Clr(IUserMessage umsg, [Remainder] string color = null) public async Task Clr(IUserMessage umsg, [Remainder] string color = null)
{ {
@ -422,7 +422,7 @@ $@"🌍 **Weather for** 【{obj["target"]}】
await channel.SendFileAsync(img.ToStream(), $"{color}.png"); await channel.SendFileAsync(img.ToStream(), $"{color}.png");
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Videocall(IUserMessage umsg, [Remainder] string arg = null) public async Task Videocall(IUserMessage umsg, [Remainder] string arg = null)
{ {
@ -445,7 +445,7 @@ $@"🌍 **Weather for** 【{obj["target"]}】
} }
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Avatar(IUserMessage umsg, [Remainder] string mention = null) public async Task Avatar(IUserMessage umsg, [Remainder] string mention = null)
{ {

View File

@ -16,7 +16,7 @@ namespace NadekoBot.Modules.Translator
{ {
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Translate(IUserMessage umsg, string langs, [Remainder] string text = null) public async Task Translate(IUserMessage umsg, string langs, [Remainder] string text = null)
{ {
@ -44,7 +44,7 @@ namespace NadekoBot.Modules.Translator
} }
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Translangs(IUserMessage umsg) public async Task Translangs(IUserMessage umsg)
{ {

View File

@ -12,7 +12,7 @@ namespace NadekoBot.Modules.Utility
{ {
partial class Utility : DiscordModule partial class Utility : DiscordModule
{ {
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task ServerInfo(IUserMessage msg, string guild = null) public async Task ServerInfo(IUserMessage msg, string guild = null)
{ {
@ -47,7 +47,7 @@ namespace NadekoBot.Modules.Utility
await msg.Reply(sb.ToString()).ConfigureAwait(false); await msg.Reply(sb.ToString()).ConfigureAwait(false);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task ChannelInfo(IUserMessage msg, ITextChannel channel = null) public async Task ChannelInfo(IUserMessage msg, ITextChannel channel = null)
{ {
@ -63,7 +63,7 @@ namespace NadekoBot.Modules.Utility
await msg.Reply(toReturn).ConfigureAwait(false); await msg.Reply(toReturn).ConfigureAwait(false);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task UserInfo(IUserMessage msg, IGuildUser usr = null) public async Task UserInfo(IUserMessage msg, IGuildUser usr = null)
{ {

View File

@ -14,7 +14,7 @@ namespace NadekoBot.Modules.Utility
{ {
public partial class Utility public partial class Utility
{ {
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task ShowQuote(IUserMessage umsg, string keyword) public async Task ShowQuote(IUserMessage umsg, string keyword)
{ {
@ -37,7 +37,7 @@ namespace NadekoBot.Modules.Utility
await channel.SendMessageAsync("📣 " + quote.Text); await channel.SendMessageAsync("📣 " + quote.Text);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task AddQuote(IUserMessage umsg, string keyword, [Remainder] string text) public async Task AddQuote(IUserMessage umsg, string keyword, [Remainder] string text)
{ {
@ -63,7 +63,7 @@ namespace NadekoBot.Modules.Utility
} }
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task DeleteQuote(IUserMessage umsg, string keyword) public async Task DeleteQuote(IUserMessage umsg, string keyword)
{ {
@ -90,7 +90,7 @@ namespace NadekoBot.Modules.Utility
await channel.SendMessageAsync("`Deleted a random quote.`"); await channel.SendMessageAsync("`Deleted a random quote.`");
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task DelAllQuotes(IUserMessage umsg, string keyword) public async Task DelAllQuotes(IUserMessage umsg, string keyword)
{ {

View File

@ -92,7 +92,7 @@ namespace NadekoBot.Modules.Utility
} }
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Remind(IUserMessage umsg, string meorchannel, string timeStr, [Remainder] string message) public async Task Remind(IUserMessage umsg, string meorchannel, string timeStr, [Remainder] string message)
{ {

View File

@ -23,7 +23,7 @@ namespace NadekoBot.Modules.Utility
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task WhosPlaying(IUserMessage umsg, [Remainder] string game = null) public async Task WhosPlaying(IUserMessage umsg, [Remainder] string game = null)
{ {
@ -43,7 +43,7 @@ namespace NadekoBot.Modules.Utility
await channel.SendMessageAsync("```xl\n" + string.Join("\n", arr.GroupBy(item => (i++) / 3).Select(ig => string.Concat(ig.Select(el => $"• {el,-35}")))) + "\n```").ConfigureAwait(false); await channel.SendMessageAsync("```xl\n" + string.Join("\n", arr.GroupBy(item => (i++) / 3).Select(ig => string.Concat(ig.Select(el => $"• {el,-35}")))) + "\n```").ConfigureAwait(false);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task InRole(IUserMessage umsg, [Remainder] string roles = null) public async Task InRole(IUserMessage umsg, [Remainder] string roles = null)
{ {
@ -76,7 +76,7 @@ namespace NadekoBot.Modules.Utility
await channel.SendMessageAsync(send).ConfigureAwait(false); await channel.SendMessageAsync(send).ConfigureAwait(false);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task CheckMyPerms(IUserMessage msg) public async Task CheckMyPerms(IUserMessage msg)
{ {
@ -93,7 +93,7 @@ namespace NadekoBot.Modules.Utility
await msg.Reply(builder.ToString()); await msg.Reply(builder.ToString());
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task UserId(IUserMessage msg, IGuildUser target = null) public async Task UserId(IUserMessage msg, IGuildUser target = null)
{ {
@ -101,20 +101,20 @@ namespace NadekoBot.Modules.Utility
await msg.Reply($"Id of the user { usr.Username } is { usr.Id })").ConfigureAwait(false); await msg.Reply($"Id of the user { usr.Username } is { usr.Id })").ConfigureAwait(false);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
public async Task ChannelId(IUserMessage msg) public async Task ChannelId(IUserMessage msg)
{ {
await msg.Reply($"This Channel's ID is {msg.Channel.Id}").ConfigureAwait(false); await msg.Reply($"This Channel's ID is {msg.Channel.Id}").ConfigureAwait(false);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task ServerId(IUserMessage msg) public async Task ServerId(IUserMessage msg)
{ {
await msg.Reply($"This server's ID is {((ITextChannel)msg.Channel).Guild.Id}").ConfigureAwait(false); await msg.Reply($"This server's ID is {((ITextChannel)msg.Channel).Guild.Id}").ConfigureAwait(false);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Roles(IUserMessage msg, IGuildUser target = null) public async Task Roles(IUserMessage msg, IGuildUser target = null)
{ {
@ -130,7 +130,7 @@ namespace NadekoBot.Modules.Utility
} }
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task ChannelTopic(IUserMessage umsg) public async Task ChannelTopic(IUserMessage umsg)
{ {
@ -143,7 +143,7 @@ namespace NadekoBot.Modules.Utility
await channel.SendMessageAsync("`Topic:` " + topic); await channel.SendMessageAsync("`Topic:` " + topic);
} }
[LocalizedCommand, LocalizedDescription, LocalizedSummary, LocalizedAlias] [LocalizedCommand, LocalizedRemarks, LocalizedSummary, LocalizedAlias]
[RequireContext(ContextType.Guild)] [RequireContext(ContextType.Guild)]
public async Task Stats(IUserMessage umsg) public async Task Stats(IUserMessage umsg)
{ {

View File

@ -1671,7 +1671,7 @@ namespace NadekoBot.Resources {
} }
/// <summary> /// <summary>
/// Looks up a localized string similar to commands. /// Looks up a localized string similar to commands cmds.
/// </summary> /// </summary>
public static string commands_text { public static string commands_text {
get { get {
@ -4209,7 +4209,7 @@ namespace NadekoBot.Resources {
} }
/// <summary> /// <summary>
/// Looks up a localized string similar to modules. /// Looks up a localized string similar to modules mdls.
/// </summary> /// </summary>
public static string modules_text { public static string modules_text {
get { get {

View File

@ -145,7 +145,7 @@
<value>`-donate` or `~donate`</value> <value>`-donate` or `~donate`</value>
</data> </data>
<data name="modules_text" xml:space="preserve"> <data name="modules_text" xml:space="preserve">
<value>modules</value> <value>modules mdls</value>
</data> </data>
<data name="modules_desc" xml:space="preserve"> <data name="modules_desc" xml:space="preserve">
<value>List all bot modules.</value> <value>List all bot modules.</value>
@ -154,7 +154,7 @@
<value>`-modules` or `.modules`</value> <value>`-modules` or `.modules`</value>
</data> </data>
<data name="commands_text" xml:space="preserve"> <data name="commands_text" xml:space="preserve">
<value>commands</value> <value>commands cmds</value>
</data> </data>
<data name="commands_desc" xml:space="preserve"> <data name="commands_desc" xml:space="preserve">
<value>List all of the bot's commands from a certain module.</value> <value>List all of the bot's commands from a certain module.</value>

View File

@ -27,6 +27,8 @@ namespace NadekoBot.Services.Database.Models
public enum SecondaryPermissionType public enum SecondaryPermissionType
{ {
Module, Module,
Command Command,
AllCommands,
AllModules
} }
} }