diff --git a/ProjectLighthouse.sln.DotSettings b/ProjectLighthouse.sln.DotSettings index c935d98b..43d1f777 100644 --- a/ProjectLighthouse.sln.DotSettings +++ b/ProjectLighthouse.sln.DotSettings @@ -30,6 +30,7 @@ False False False + False False False False @@ -53,14 +54,14 @@ True NEXT_LINE True - True - CHOP_IF_LONG + False + CHOP_ALWAYS CHOP_IF_LONG True True True - True - True + False + False True CHOP_IF_LONG CHOP_IF_LONG diff --git a/ProjectLighthouse/Controllers/ListController.cs b/ProjectLighthouse/Controllers/ListController.cs index e460270b..720c90b3 100644 --- a/ProjectLighthouse/Controllers/ListController.cs +++ b/ProjectLighthouse/Controllers/ListController.cs @@ -26,13 +26,18 @@ namespace LBPUnion.ProjectLighthouse.Controllers #region Level Queue (lolcatftw) [HttpGet("slots/lolcatftw/{username}")] - public IActionResult GetLevelQueue(string username) + public async Task GetLevelQueue(string username) { - IEnumerable queuedLevels = this.database.QueuedLevels.Include - (q => q.User) + Token? token = await this.database.TokenFromRequest(this.Request); + if (token == null) return this.BadRequest(); + + GameVersion gameVersion = token.GameVersion; + + IEnumerable queuedLevels = this.database.QueuedLevels.Include(q => q.User) .Include(q => q.Slot) .Include(q => q.Slot.Location) .Include(q => q.Slot.Creator) + .Where(q => q.Slot.GameVersion <= gameVersion) .Where(q => q.User.Username == username) .AsEnumerable(); @@ -83,13 +88,18 @@ namespace LBPUnion.ProjectLighthouse.Controllers #region Hearted Levels [HttpGet("favouriteSlots/{username}")] - public IActionResult GetFavouriteSlots(string username) + public async Task GetFavouriteSlots(string username) { - IEnumerable heartedLevels = this.database.HeartedLevels.Include - (q => q.User) + Token? token = await this.database.TokenFromRequest(this.Request); + if (token == null) return this.BadRequest(); + + GameVersion gameVersion = token.GameVersion; + + IEnumerable heartedLevels = this.database.HeartedLevels.Include(q => q.User) .Include(q => q.Slot) .Include(q => q.Slot.Location) .Include(q => q.Slot.Creator) + .Where(q => q.Slot.GameVersion <= gameVersion) .Where(q => q.User.Username == username) .AsEnumerable(); @@ -144,7 +154,7 @@ namespace LBPUnion.ProjectLighthouse.Controllers [HttpGet("favouriteUsers/{username}")] public IActionResult GetFavouriteUsers(string username) { - IEnumerable heartedProfiles = new Database().HeartedProfiles.Include + IEnumerable heartedProfiles = this.database.HeartedProfiles.Include (q => q.User) .Include(q => q.HeartedUser) .Include(q => q.HeartedUser.Location)