From c3b42d64947521a5660456fbd976fc0a9faecbf3 Mon Sep 17 00:00:00 2001 From: LumaLivy Date: Tue, 2 Nov 2021 23:10:20 -0400 Subject: [PATCH] Add support for lucky dipping in LBP2 --- ProjectLighthouse/Controllers/SlotsController.cs | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/ProjectLighthouse/Controllers/SlotsController.cs b/ProjectLighthouse/Controllers/SlotsController.cs index fd203a65..fce65199 100644 --- a/ProjectLighthouse/Controllers/SlotsController.cs +++ b/ProjectLighthouse/Controllers/SlotsController.cs @@ -70,5 +70,20 @@ namespace LBPUnion.ProjectLighthouse.Controllers return this.Ok(LbpSerializer.TaggedStringElement("slots", response, "hint_start", pageStart + Math.Min(pageSize, 30))); } + + [HttpGet("slots/lbp2luckydip")] + public IActionResult TeamPickedSlots([FromQuery] int pageStart, [FromQuery] int pageSize, [FromQuery] int seed) + { + // TODO: Incorporate seed? + IQueryable slots = this.database.Slots + .OrderBy(_ => Guid.NewGuid()) + .Include(s => s.Creator) + .Include(s => s.Location) + .Skip(pageStart - 1) + .Take(Math.Min(pageSize, 30)); + string response = Enumerable.Aggregate(slots, string.Empty, (current, slot) => current + slot.Serialize()); + + return this.Ok(LbpSerializer.TaggedStringElement("slots", response, "hint_start", pageStart + Math.Min(pageSize, 30))); + } } } \ No newline at end of file