Serialization refactor hotfixes

Fixes user heart count
Fixes searches not working
Fixes text/plain content not outputting
This commit is contained in:
Slendy 2023-03-28 10:33:03 -05:00
parent 329ab66043
commit 1e8ef8c679
No known key found for this signature in database
GPG key ID: 7288D68361B91428
4 changed files with 6 additions and 4 deletions

View file

@ -235,7 +235,7 @@ public class PublishController : ControllerBase
oldSlot.MaximumPlayers = Math.Clamp(slot.MaximumPlayers, 1, 4); oldSlot.MaximumPlayers = Math.Clamp(slot.MaximumPlayers, 1, 4);
await this.database.SaveChangesAsync(); await this.database.SaveChangesAsync();
return this.Ok(SlotBase.CreateFromEntity(oldSlot, this.GetToken())); return this.Ok(SlotBase.CreateFromEntity(oldSlot, token));
} }
int usedSlots = await this.database.Slots.CountAsync(s => s.CreatorId == token.UserId && s.GameVersion == slotVersion); int usedSlots = await this.database.Slots.CountAsync(s => s.CreatorId == token.UserId && s.GameVersion == slotVersion);
@ -272,7 +272,7 @@ public class PublishController : ControllerBase
Logger.Success($"Successfully published level {slot.Name} (id: {slot.SlotId}) by {user.Username} (id: {user.UserId})", LogArea.Publish); Logger.Success($"Successfully published level {slot.Name} (id: {slot.SlotId}) by {user.Username} (id: {user.UserId})", LogArea.Publish);
return this.Ok(SlotBase.CreateFromEntity(slotEntity, this.GetToken())); return this.Ok(SlotBase.CreateFromEntity(slotEntity, token));
} }
[HttpPost("unpublish/{id:int}")] [HttpPost("unpublish/{id:int}")]

View file

@ -63,7 +63,7 @@ public class SearchController : ControllerBase
List<SlotBase> slots = await dbQuery.Skip(Math.Max(0, pageStart - 1)) List<SlotBase> slots = await dbQuery.Skip(Math.Max(0, pageStart - 1))
.Take(Math.Min(pageSize, 30)) .Take(Math.Min(pageSize, 30))
.Select(s => SlotBase.CreateFromEntity(s, this.GetToken())) .Select(s => SlotBase.CreateFromEntity(s, token))
.ToListAsync(); .ToListAsync();
return this.Ok(new GenericSlotResponse(keyName, slots, await dbQuery.CountAsync(), 0)); return this.Ok(new GenericSlotResponse(keyName, slots, await dbQuery.CountAsync(), 0));

View file

@ -8,6 +8,7 @@ using LBPUnion.ProjectLighthouse.Servers.GameServer.Middlewares;
using LBPUnion.ProjectLighthouse.Types.Logging; using LBPUnion.ProjectLighthouse.Types.Logging;
using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.HttpOverrides; using Microsoft.AspNetCore.HttpOverrides;
using Microsoft.AspNetCore.Mvc.Formatters;
namespace LBPUnion.ProjectLighthouse.Servers.GameServer.Startup; namespace LBPUnion.ProjectLighthouse.Servers.GameServer.Startup;
@ -44,6 +45,7 @@ public class GameServerStartup
{ {
options.OutputFormatters.Add(new LbpOutputFormatter()); options.OutputFormatters.Add(new LbpOutputFormatter());
options.OutputFormatters.Add(new JsonOutputFormatter()); options.OutputFormatters.Add(new JsonOutputFormatter());
options.OutputFormatters.Add(new StringOutputFormatter());
} }
); );

View file

@ -49,7 +49,7 @@ public class UserEntity
} }
public UserStatus GetStatus(DatabaseContext database) => new(database, this.UserId); public UserStatus GetStatus(DatabaseContext database) => new(database, this.UserId);
public int GetHeartCount(DatabaseContext database) => database.HeartedProfiles.Count(hp => hp.HeartedProfileId == this.UserId); public int GetHeartCount(DatabaseContext database) => database.HeartedProfiles.Count(hp => hp.HeartedUserId == this.UserId);
public int GetCommentCount(DatabaseContext database) => database.Comments.Count(c => c.TargetId == this.UserId && c.Type == CommentType.Profile); public int GetCommentCount(DatabaseContext database) => database.Comments.Count(c => c.TargetId == this.UserId && c.Type == CommentType.Profile);
public int GetUsedSlotCount(DatabaseContext database) => database.Slots.Count(s => s.CreatorId == this.UserId); public int GetUsedSlotCount(DatabaseContext database) => database.Slots.Count(s => s.CreatorId == this.UserId);
public int GetUploadedPhotoCount(DatabaseContext database) => database.Photos.Count(p => p.CreatorId == this.UserId); public int GetUploadedPhotoCount(DatabaseContext database) => database.Photos.Count(p => p.CreatorId == this.UserId);