.waifulb now has pages
This commit is contained in:
		@@ -377,12 +377,17 @@ namespace NadekoBot.Modules.Gambling
 | 
			
		||||
 | 
			
		||||
            [NadekoCommand, Usage, Description, Aliases]
 | 
			
		||||
            [RequireContext(ContextType.Guild)]
 | 
			
		||||
            public async Task WaifuLeaderboard()
 | 
			
		||||
            public async Task WaifuLeaderboard(int page = 1)
 | 
			
		||||
            {
 | 
			
		||||
                page--;
 | 
			
		||||
 | 
			
		||||
                if (page < 0)
 | 
			
		||||
                    return;
 | 
			
		||||
 | 
			
		||||
                IList<WaifuInfo> waifus;
 | 
			
		||||
                using (var uow = _db.UnitOfWork)
 | 
			
		||||
                {
 | 
			
		||||
                    waifus = uow.Waifus.GetTop(9);
 | 
			
		||||
                    waifus = uow.Waifus.GetTop(9, page * 9);
 | 
			
		||||
                }
 | 
			
		||||
 | 
			
		||||
                if (waifus.Count == 0)
 | 
			
		||||
@@ -400,7 +405,7 @@ namespace NadekoBot.Modules.Gambling
 | 
			
		||||
                    var w = waifus[i];
 | 
			
		||||
 | 
			
		||||
                    var j = i;
 | 
			
		||||
                    embed.AddField(efb => efb.WithName("#" + (j + 1) + " - " + w.Price + _bc.CurrencySign).WithValue(w.ToString()).WithIsInline(false));
 | 
			
		||||
                    embed.AddField(efb => efb.WithName("#" + ((page * 9) + j + 1) + " - " + w.Price + _bc.CurrencySign).WithValue(w.ToString()).WithIsInline(false));
 | 
			
		||||
                }
 | 
			
		||||
 | 
			
		||||
                await Context.Channel.EmbedAsync(embed).ConfigureAwait(false);
 | 
			
		||||
 
 | 
			
		||||
@@ -3037,10 +3037,10 @@
 | 
			
		||||
    <value>waifus waifulb</value>
 | 
			
		||||
  </data>
 | 
			
		||||
  <data name="waifuleaderboard_desc" xml:space="preserve">
 | 
			
		||||
    <value>Shows top 9 waifus.</value>
 | 
			
		||||
    <value>Shows top 9 waifus. You can specify another page to show other waifus.</value>
 | 
			
		||||
  </data>
 | 
			
		||||
  <data name="waifuleaderboard_usage" xml:space="preserve">
 | 
			
		||||
    <value>`{0}waifus`</value>
 | 
			
		||||
    <value>`{0}waifus` or `{0}waifulb 3`</value>
 | 
			
		||||
  </data>
 | 
			
		||||
  <data name="divorce_cmd" xml:space="preserve">
 | 
			
		||||
    <value>divorce</value>
 | 
			
		||||
 
 | 
			
		||||
@@ -5,7 +5,7 @@ namespace NadekoBot.Services.Database.Repositories
 | 
			
		||||
{
 | 
			
		||||
    public interface IWaifuRepository : IRepository<WaifuInfo>
 | 
			
		||||
    {
 | 
			
		||||
        IList<WaifuInfo> GetTop(int count);
 | 
			
		||||
        IList<WaifuInfo> GetTop(int count, int skip = 0);
 | 
			
		||||
        WaifuInfo ByWaifuUserId(ulong userId);
 | 
			
		||||
        IList<WaifuInfo> ByClaimerUserId(ulong userId);
 | 
			
		||||
    }
 | 
			
		||||
 
 | 
			
		||||
@@ -29,7 +29,7 @@ namespace NadekoBot.Services.Database.Repositories.Impl
 | 
			
		||||
                        .ToList();
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        public IList<WaifuInfo> GetTop(int count)
 | 
			
		||||
        public IList<WaifuInfo> GetTop(int count, int skip = 0)
 | 
			
		||||
        {
 | 
			
		||||
            if (count < 0)
 | 
			
		||||
                throw new ArgumentOutOfRangeException(nameof(count));
 | 
			
		||||
@@ -40,6 +40,7 @@ namespace NadekoBot.Services.Database.Repositories.Impl
 | 
			
		||||
                        .Include(wi => wi.Affinity)
 | 
			
		||||
                        .Include(wi => wi.Claimer)
 | 
			
		||||
                    .OrderByDescending(wi => wi.Price)
 | 
			
		||||
                    .Skip(skip)
 | 
			
		||||
                    .Take(count)
 | 
			
		||||
                    .ToList();
 | 
			
		||||
        }
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user