public async Task Prefix( [Summary("Prefix.")] string prefix) { await _guildPreferencesProvider.UpdatePreferencesAsync(Context.Guild.Id, pref => pref.Prefix = prefix); await this.ReplySuccessEmbedAsync($"Prefix was changed to: **{prefix}**"); }
public async Task GetPreferences() { // Get preferences. Should be default var pref = await _provider.GetPreferencesAsync(1); // Default preferences are marked with guild id 0 Assert.Equal((ulong)0, pref.GuildId); await _provider.UpdatePreferencesAsync(guildId : 1, configuration => { configuration.CurrencySymbol = "test"; }); // Should update as object reference is the same. Assert.NotEqual((ulong)0, pref.GuildId); // Check if currency symbol saved. Assert.Equal("test", pref.CurrencySymbol); }
public async Task <ActionResult> UpdateGuildPreferencesAsync(ulong guildId, GuildPreferencesInputModel model) { // Ensure user has admin rights if (!await _client.ValidateGuildAdminAsync(User.GetId(), guildId)) { throw new UserNotGuildAdminException(); } await _guildPreferencesProvider.UpdatePreferencesAsync(guildId, preferences => { if (model.Prefix != null) { preferences.Prefix = model.Prefix; } if (model.TimelyRewardQuantity != null) { preferences.TimelyRewardQuantity = (int)model.TimelyRewardQuantity; } if (model.TimelyCooldown != null) { preferences.TimelyCooldown = (int)model.TimelyCooldown; } if (model.CurrencySymbol != null) { preferences.CurrencySymbol = model.CurrencySymbol; } if (model.AcceptedMemberRoleId != null) { preferences.AcceptedMemberRoleId = (ulong)model.AcceptedMemberRoleId; } }); return(Ok()); }