🐛 Trying to fix discovery

This commit is contained in:
2025-08-09 23:22:14 +08:00
parent c3f5ed881f
commit 78cec27ef0
3 changed files with 10 additions and 11 deletions

View File

@@ -13,6 +13,6 @@ public class DiscoveryController(DiscoveryService discoveryService) : Controller
[FromQuery] int offset = 0
)
{
return discoveryService.GetPublicRealmsAsync(query, take, offset);
return discoveryService.GetCommunityRealmAsync(query, take, offset);
}
}

View File

@@ -4,7 +4,7 @@ namespace DysonNetwork.Sphere.Discovery;
public class DiscoveryService(AppDatabase appDatabase)
{
public Task<List<Realm.Realm>> GetPublicRealmsAsync(
public Task<List<Realm.Realm>> GetCommunityRealmAsync(
string? query,
int take = 10,
int offset = 0,
@@ -12,19 +12,18 @@ public class DiscoveryService(AppDatabase appDatabase)
)
{
var realmsQuery = appDatabase.Realms
.Take(take)
.Skip(offset)
.Where(r => r.IsCommunity);
.Where(r => r.IsCommunity)
.OrderByDescending(r => r.CreatedAt)
.AsQueryable();
if (!string.IsNullOrEmpty(query))
realmsQuery = realmsQuery.Where(r =>
EF.Functions.ILike(r.Name, $"%{query}%") ||
EF.Functions.ILike(r.Description, $"%{query}%")
);
if (randomizer)
realmsQuery = realmsQuery.OrderBy(r => EF.Functions.Random());
else
realmsQuery = realmsQuery.OrderByDescending(r => r.CreatedAt);
realmsQuery = randomizer
? realmsQuery.OrderBy(r => EF.Functions.Random())
: realmsQuery.OrderByDescending(r => r.CreatedAt);
return realmsQuery.Skip(offset).Take(take).ToListAsync();
}