/// <summary>
 /// Instantiates a new instance of the <see cref="ModerationBackgroundService"/> class.
 /// </summary>
 /// <param name="sp">The service provider.</param>
 /// <param name="logger">The logger.</param>
 /// <param name="colourPalette">The colour palette.</param>
 /// <param name="discordSettings">The Discord settings.</param>
 public ModerationBackgroundService(IServiceProvider sp, ILogger <ModerationBackgroundService> logger, IColourPalette colourPalette, DiscordSettings discordSettings)
 {
     _sp              = sp;
     _logger          = logger;
     _colourPalette   = colourPalette;
     _discordSettings = discordSettings;
 }
 public MinecraftAutoRestartsCommands(IMediator mediator,
                                      IColourPalette colourPalette,
                                      ICommandResponder responder
                                      )
 {
     _mediator      = mediator;
     _colourPalette = colourPalette;
     _responder     = responder;
 }
 /// <summary>
 /// Instantiates a new instance of <see cref="ErrorNotificationMiddleware"/>.
 /// </summary>
 /// <param name="logger">The logger.</param>
 /// <param name="channelApi">The channel API.</param>
 /// <param name="colourPalette">The colour palette.</param>
 public ErrorNotificationMiddleware(
     ILogger <ErrorNotificationMiddleware> logger,
     IDiscordRestChannelAPI channelApi,
     IColourPalette colourPalette
     )
 {
     _logger        = logger;
     _channelApi    = channelApi;
     _colourPalette = colourPalette;
 }
Пример #4
0
 /// <summary>
 /// Instantiates a new instance of <see cref="GuildCommands"/> class.
 /// </summary>
 /// <param name="context">The message context.</param>
 /// <param name="colourPalette">The colour palette.</param>
 /// <param name="mediator">The mediator.</param>
 /// <param name="responder">The command responder.</param>
 public GuildCommands(
     MessageContext context,
     IColourPalette colourPalette,
     IMediator mediator,
     ICommandResponder responder
     )
 {
     _context       = context;
     _colourPalette = colourPalette;
     _mediator      = mediator;
     _responder     = responder;
 }
Пример #5
0
 /// <summary>
 /// Instantiates a new instance of <see cref="UserLeftResponder"/> class.
 /// </summary>
 /// <param name="channelApi">The channel API.</param>
 /// <param name="discordSettings">The Discord settings.</param>
 /// <param name="colourPalette">The colour palette.</param>
 /// <param name="guildApi">The guild API.</param>
 public UserLeftResponder(
     IDiscordRestChannelAPI channelApi,
     DiscordSettings discordSettings,
     IColourPalette colourPalette,
     IDiscordRestGuildAPI guildApi
     )
 {
     _channelApi      = channelApi;
     _discordSettings = discordSettings;
     _colourPalette   = colourPalette;
     _guildApi        = guildApi;
 }
 public ModerationBackgroundService(
     IServiceProvider sp,
     ILogger <ModerationBackgroundService> logger,
     IColourPalette colourPalette,
     DiscordSettings discordSettings
     ) : base(TimeBetweenIterationsInMillis, logger)
 {
     _sp              = sp;
     _logger          = logger;
     _colourPalette   = colourPalette;
     _discordSettings = discordSettings;
 }
 /// <summary>
 /// Instantiates a new instance of <see cref="MinecraftServersCommands"/> class.
 /// </summary>
 /// <param name="context">The message context.</param>
 /// <param name="mediator">The mediator.</param>
 /// <param name="colourPalette">The colour palette.</param>
 /// <param name="polychatService">The polychat service.</param>
 /// <param name="responder">The command responder.</param>
 public MinecraftServersCommands(
     MessageContext context,
     IMediator mediator,
     IColourPalette colourPalette,
     IPolychatService polychatService,
     ICommandResponder responder
     )
 {
     _context         = context;
     _mediator        = mediator;
     _colourPalette   = colourPalette;
     _polychatService = polychatService;
     _responder       = responder;
 }
Пример #8
0
 public Handler(
     IPolychatService polychatService,
     IDiscordRestChannelAPI channelApi,
     PolychatSettings polychatSettings,
     ILogger <HandleServerStatus> logger,
     IColourPalette colourPalette
     )
 {
     _polychatService  = polychatService;
     _channelApi       = channelApi;
     _polychatSettings = polychatSettings;
     _logger           = logger;
     _colourPalette    = colourPalette;
 }
Пример #9
0
 public ButtonInteractionCreateResponder(
     IButtonHandlerRepository handlerRepository,
     IDiscordPermissionsService permissionsService,
     IColourPalette colourPalette,
     ILogger <ButtonInteractionCreateResponder> logger,
     IInteractionResponder interactionResponder
     )
 {
     _handlerRepository    = handlerRepository;
     _permissionsService   = permissionsService;
     _colourPalette        = colourPalette;
     _logger               = logger;
     _interactionResponder = interactionResponder;
 }
 /// <summary>
 /// Instantiates a new instance of <see cref="PlayerInfoCommands"/>.
 /// </summary>
 /// <param name="context">The message context.</param>
 /// <param name="mediator">The mediator.</param>
 /// <param name="colourPalette">The colour palette.</param>
 /// <param name="mojangApi">The Mojang API.</param>
 /// <param name="guildApi">The guild API.</param>
 /// <param name="responder">The command responder.</param>
 public PlayerInfoCommands(
     MessageContext context,
     IMediator mediator,
     IColourPalette colourPalette,
     IMojangApiService mojangApi,
     IDiscordRestGuildAPI guildApi,
     ICommandResponder responder
     )
 {
     _context       = context;
     _mediator      = mediator;
     _colourPalette = colourPalette;
     _mojangApi     = mojangApi;
     _guildApi      = guildApi;
     _responder     = responder;
 }
Пример #11
0
 /// <summary>
 /// Instantiates a new instance of <see cref="BanCommands"/> class.
 /// </summary>
 /// <param name="context">The message context.</param>
 /// <param name="mediator">The mediator.</param>
 /// <param name="colourPalette">The colour palette.</param>
 /// <param name="responder">The command responder.</param>
 public BanCommands(
     MessageContext context,
     IMediator mediator,
     IColourPalette colourPalette,
     ICommandResponder responder
     )
 {
     _context   = context;
     _mediator  = mediator;
     _responder = responder;
     _embedBase = new Embed
     {
         Description = "User has been banned successfully.",
         Colour      = colourPalette.Green
     };
 }
Пример #12
0
 /// <summary>
 /// Instantiates a new instance of <see cref="Handler"/> class.
 /// </summary>
 /// <param name="context">The DB context.</param>
 /// <param name="ps">The polychat service.</param>
 /// <param name="guildApi">The guild API.</param>
 /// <param name="userApi">The user API.</param>
 /// <param name="channelApi">The channel API.</param>
 /// <param name="colourPalette">The colour palette.</param>
 /// <param name="logger">The logger.</param>
 public Handler(
     BotContext context,
     IPolychatService ps,
     IDiscordRestGuildAPI guildApi,
     IDiscordRestUserAPI userApi,
     IDiscordRestChannelAPI channelApi,
     IColourPalette colourPalette,
     ILogger <Handler> logger
     )
 {
     _context       = context;
     _ps            = ps;
     _guildApi      = guildApi;
     _userApi       = userApi;
     _channelApi    = channelApi;
     _colourPalette = colourPalette;
     _logger        = logger;
 }
Пример #13
0
 /// <summary>
 /// Instantiates a new instance of <see cref="MemberApplicationsCommands"/>.
 /// </summary>
 /// <param name="context">The message context.</param>
 /// <param name="channelApi">The channel API.</param>
 /// <param name="mediator">The mediator.</param>
 /// <param name="colourPalette">The colour palette.</param>
 /// <param name="discordSettings">The Discord settings.</param>
 /// <param name="guildApi">The guild API.</param>
 /// <param name="responder">The command responder.</param>
 public MemberApplicationsCommands(
     MessageContext context,
     IDiscordRestChannelAPI channelApi,
     IMediator mediator,
     IColourPalette colourPalette,
     DiscordSettings discordSettings,
     IDiscordRestGuildAPI guildApi,
     ICommandResponder responder
     )
 {
     _context         = context;
     _channelApi      = channelApi;
     _mediator        = mediator;
     _colourPalette   = colourPalette;
     _discordSettings = discordSettings;
     _guildApi        = guildApi;
     _responder       = responder;
 }
        /// <summary>
        /// Get an embed representation of a member application.
        /// </summary>
        /// <param name="memberApplication">Member application.</param>
        /// <param name="colourPalette">Colour palette for the embed to use.</param>
        /// <returns>Embed representing the member application.</returns>
        public static Embed GetEmbed(this MemberApplication memberApplication, IColourPalette colourPalette)
        {
            var statusStr = memberApplication.AppStatus.ToString();
            var embedConditionalAttributes = memberApplication.AppStatus switch
            {
                ApplicationStatus.Pending => new
                {
                    Colour           = colourPalette.Blue,
                    StatusFieldValue = $":clock1: {statusStr}"
                },
                ApplicationStatus.Approved => new
                {
                    Colour           = colourPalette.Green,
                    StatusFieldValue = $":white_check_mark: {statusStr}"
                },
                ApplicationStatus.Rejected => new
                {
                    Colour           = colourPalette.Red,
                    StatusFieldValue = $":no_entry: {statusStr}"
                },
                _ => throw new ArgumentOutOfRangeException(nameof(memberApplication))
            };

            return(new Embed
            {
                Title = $"Member Application #{memberApplication.MemberApplicationId}",
                Description =
                    $"Submitted at {new DiscordTimestamp(memberApplication.AppTime).AsStyled(DiscordTimestampStyle.ShortDateTime)}.",
                Fields = new List <EmbedField>
                {
                    new("Author", $"{memberApplication.AuthorDiscordName} (ID: `{memberApplication.AuthorDiscordId}`)",
                        false),
                    new("Status", embedConditionalAttributes.StatusFieldValue, false),
                    new(
                        "Provided details",
                        $"{memberApplication.MessageContent}\n" +
                        $"**[Original message (click here)](https://discord.com/channels/{memberApplication.GuildId}/{memberApplication.ChannelId}/{memberApplication.MessageId})**",
                        false
                        )
                },
Пример #15
0
 public Handler(IDiscordRestChannelAPI channelApi, ILogger <HandleCommandResult> logger, IColourPalette colourPalette)
 {
     _channelApi    = channelApi;
     _logger        = logger;
     _colourPalette = colourPalette;
 }
Пример #16
0
 public Handler(CommandTree commandTree, IColourPalette colourPalette, IHelpService helpService)
 {
     _commandTree   = commandTree;
     _colourPalette = colourPalette;
     _helpService   = helpService;
 }
Пример #17
0
        private void PaletteList_SelectionChanged(object sender, SelectionChangedEventArgs e)
        {
            ComboBox b = (ComboBox)sender;

            _ColourPalette = (IColourPalette)b.SelectedItem;
        }
Пример #18
0
 /// <summary>
 /// Instantiates a new instance of <see cref="HelpService"/>.
 /// </summary>
 /// <param name="colourPalette">The colour palette.</param>
 public HelpService(IColourPalette colourPalette)
 {
     _colourPalette = colourPalette;
 }