Ejemplo n.º 1
0
        public async Task SaveGreetingSettings(SocketCommandContext context, string greetingMessage, string whereToGreet, string channelToGreet)
        {
            var guildChannel = context.Channel as SocketTextChannel;
            Dictionary <string, object> settings = new Dictionary <string, object>();

            settings.Add("welcomeMessage", greetingMessage);
            settings.Add("whereToGreet", whereToGreet);
            settings.Add("channelToGreet", channelToGreet);
            ParabotSettings    newGreetingSettings = new ParabotSettings($"{guildChannel.Guild.Id}NewMemberSettings", settings);
            SettingsRepository settingsRepo        = new SettingsRepository();
            var settingsList = await settingsRepo.GetGreetingSettings(guildChannel.Guild);

            switch (settingsList.Count)
            {
            case 0:
                await settingsRepo.InsertNewSettings(newGreetingSettings);

                break;

            default:
                await settingsRepo.ReplaceSettings(newGreetingSettings);

                break;
            }
        }
Ejemplo n.º 2
0
        public async Task SaveRoleSettings(List <ParabotRoleEmotePair> roleEmotePair, IMessage messageToListen)
        {
            var settingsId = $"{messageToListen.Id}AutoRoleSettings";
            SettingsRepository          settingsRepo = new SettingsRepository();
            Dictionary <string, object> settings     = new Dictionary <string, object>();

            settings.Add("roleEmoteDict", roleEmotePair);
            settings.Add("guildId", (messageToListen.Channel as SocketTextChannel).Guild.Id.ToString());
            settings.Add("channelId", messageToListen.Channel.Id.ToString());
            settings.Add("messageToListenId", messageToListen.Id.ToString());
            ParabotSettings roleSettings = new ParabotSettings(settingsId, settings);
            await settingsRepo.InsertNewRoleSettings(roleSettings);
        }
Ejemplo n.º 3
0
        public async Task InsertNewRoleSettings(ParabotSettings roleSettings)
        {
            try
            {
                await _settingsCollection.InsertOneAsync(roleSettings);

                Log.Information($"Settings successfully created");
            }
            catch (Exception e)
            {
                Log.Error($"Error inserting settings into database: {e.Message}");
            }
        }
Ejemplo n.º 4
0
        public async Task ReplaceSettings(ParabotSettings newGreetingSettings)
        {
            try
            {
                var filterOne = Builders <ParabotSettings> .Filter.Eq("SettingsType", newGreetingSettings.SettingsType);

                await _settingsCollection.ReplaceOneAsync(filterOne, newGreetingSettings);

                Log.Information("Settings successfully created");
            }
            catch (Exception e)
            {
                Log.Error($"Error inserting settings into database: {e.Message}");
            }
        }
Ejemplo n.º 5
0
        public async Task <ParabotSettings> GetGreetingSettings(SocketUser user)
        {
            var guild = (user as SocketGuildUser).Guild;
            SettingsRepository settingsRepo = new SettingsRepository();
            var settingsList = await settingsRepo.GetGreetingSettings(guild);

            ParabotSettings settings;

            switch (settingsList.Count)
            {
            case 0:
                settings = new ParabotSettings("", new Dictionary <string, object>());
                break;

            default:
                settings = settingsList.FirstOrDefault();
                break;
            }
            return(settings);
        }