mirror of
https://github.com/LBPUnion/ProjectLighthouse.git
synced 2025-07-24 06:01:30 +00:00
Cleanup code and formatting
This commit is contained in:
parent
d64aa421fe
commit
61f027b57e
13 changed files with 42 additions and 46 deletions
|
@ -47,7 +47,7 @@ namespace LBPUnion.ProjectLighthouse.Tests
|
|||
|
||||
public Task<HttpResponseMessage> AuthenticatedRequest(string endpoint, string mmAuth, HttpMethod method)
|
||||
{
|
||||
using HttpRequestMessage? requestMessage = new(method, endpoint);
|
||||
using HttpRequestMessage requestMessage = new(method, endpoint);
|
||||
requestMessage.Headers.Add("Cookie", mmAuth);
|
||||
|
||||
return this.Client.SendAsync(requestMessage);
|
||||
|
@ -61,7 +61,7 @@ namespace LBPUnion.ProjectLighthouse.Tests
|
|||
|
||||
public async Task<HttpResponseMessage> AuthenticatedUploadFileRequest(string endpoint, string filePath, string mmAuth)
|
||||
{
|
||||
using HttpRequestMessage? requestMessage = new(HttpMethod.Post, endpoint);
|
||||
using HttpRequestMessage requestMessage = new(HttpMethod.Post, endpoint);
|
||||
requestMessage.Headers.Add("Cookie", mmAuth);
|
||||
requestMessage.Content = new StringContent(await File.ReadAllTextAsync(filePath));
|
||||
return await this.Client.SendAsync(requestMessage);
|
||||
|
@ -69,7 +69,7 @@ namespace LBPUnion.ProjectLighthouse.Tests
|
|||
|
||||
public async Task<HttpResponseMessage> AuthenticatedUploadDataRequest(string endpoint, byte[] data, string mmAuth)
|
||||
{
|
||||
using HttpRequestMessage? requestMessage = new(HttpMethod.Post, endpoint);
|
||||
using HttpRequestMessage requestMessage = new(HttpMethod.Post, endpoint);
|
||||
requestMessage.Headers.Add("Cookie", mmAuth);
|
||||
requestMessage.Content = new ByteArrayContent(data);
|
||||
return await this.Client.SendAsync(requestMessage);
|
||||
|
|
|
@ -24,14 +24,7 @@ namespace LBPUnion.ProjectLighthouse.Controllers
|
|||
public async Task<IActionResult> Eula()
|
||||
{
|
||||
User user = await this.database.UserFromRequest(this.Request);
|
||||
return user == null
|
||||
? this.StatusCode(403, "")
|
||||
: this.Ok
|
||||
(
|
||||
EulaHelper.PrivateInstanceNoticeOrBlank +
|
||||
"\n" +
|
||||
$"{EulaHelper.License}\n"
|
||||
);
|
||||
return user == null ? this.StatusCode(403, "") : this.Ok(EulaHelper.PrivateInstanceNoticeOrBlank + "\n" + $"{EulaHelper.License}\n");
|
||||
}
|
||||
|
||||
[HttpGet("announce")]
|
||||
|
|
|
@ -12,7 +12,7 @@ namespace LBPUnion.ProjectLighthouse.Controllers
|
|||
public class ScoreController : ControllerBase
|
||||
{
|
||||
private readonly Database database;
|
||||
|
||||
|
||||
public ScoreController(Database database)
|
||||
{
|
||||
this.database = database;
|
||||
|
|
|
@ -55,19 +55,19 @@ namespace LBPUnion.ProjectLighthouse.Controllers
|
|||
|
||||
return this.Ok(LbpSerializer.TaggedStringElement("slots", response, "hint_start", pageStart + Math.Min(pageSize, 30)));
|
||||
}
|
||||
|
||||
|
||||
[HttpGet("slots/mmpicks")]
|
||||
public IActionResult TeamPickedSlots([FromQuery] int pageStart, [FromQuery] int pageSize)
|
||||
{
|
||||
IQueryable<Slot> slots = this.database.Slots
|
||||
.Where(s => s.TeamPick)
|
||||
IQueryable<Slot> slots = this.database.Slots.Where
|
||||
(s => s.TeamPick)
|
||||
.Include(s => s.Creator)
|
||||
.Include(s => s.Location)
|
||||
.OrderByDescending(s => s.LastUpdated)
|
||||
.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)));
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,8 +1,9 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Threading.Tasks;
|
||||
using System.Text.Json;
|
||||
using System.Threading.Tasks;
|
||||
using System.Xml;
|
||||
using LBPUnion.ProjectLighthouse.Types;
|
||||
using LBPUnion.ProjectLighthouse.Types.Profiles;
|
||||
|
@ -137,17 +138,21 @@ namespace LBPUnion.ProjectLighthouse.Controllers
|
|||
User user = await this.database.UserFromRequest(this.Request);
|
||||
if (user == null) return this.StatusCode(403, "");
|
||||
|
||||
string pinsString = await new System.IO.StreamReader(this.Request.Body).ReadToEndAsync();
|
||||
string pinsString = await new StreamReader(this.Request.Body).ReadToEndAsync();
|
||||
Pins pinJson = JsonSerializer.Deserialize<Pins>(pinsString);
|
||||
|
||||
if (pinJson == null) return this.BadRequest();
|
||||
|
||||
// Sometimes the update gets called periodically as pin progress updates via playing,
|
||||
// may not affect equipped profile pins however, so check before setting it.
|
||||
string currentPins = user.Pins;
|
||||
string newPins = string.Join(",", pinJson.ProfilePins);
|
||||
if (!String.Equals(currentPins,newPins)) {
|
||||
user.Pins = newPins;
|
||||
await this.database.SaveChangesAsync();
|
||||
}
|
||||
|
||||
if (string.Equals(currentPins, newPins)) return this.Ok("[{\"StatusCode\":200}]");
|
||||
|
||||
user.Pins = newPins;
|
||||
await this.database.SaveChangesAsync();
|
||||
|
||||
return this.Ok("[{\"StatusCode\":200}]");
|
||||
}
|
||||
}
|
||||
|
|
|
@ -38,7 +38,7 @@ namespace LBPUnion.ProjectLighthouse.Helpers
|
|||
public static LbpFileType DetermineFileType(byte[] data)
|
||||
{
|
||||
if (data.Length == 0) return LbpFileType.Unknown; // Can't be anything if theres no data.
|
||||
|
||||
|
||||
using MemoryStream ms = new(data);
|
||||
using BinaryReader reader = new(ms);
|
||||
|
||||
|
@ -69,8 +69,7 @@ namespace LBPUnion.ProjectLighthouse.Helpers
|
|||
// Determine if file is JPEG
|
||||
byte[] header = reader.ReadBytes(9);
|
||||
|
||||
if (header[0] == 0xFF && header[1] == 0xD8 && header[2] == 0xFF && header[3] == 0xE0)
|
||||
return LbpFileType.Jpeg;
|
||||
if (header[0] == 0xFF && header[1] == 0xD8 && header[2] == 0xFF && header[3] == 0xE0) return LbpFileType.Jpeg;
|
||||
|
||||
return LbpFileType.Unknown; // Still unknown.
|
||||
}
|
||||
|
|
|
@ -1,5 +1,3 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using LBPUnion.ProjectLighthouse.Types;
|
||||
|
||||
|
@ -77,13 +75,13 @@ namespace LBPUnion.ProjectLighthouse.Helpers
|
|||
"CUSA01077",
|
||||
"CUSA01304",
|
||||
};
|
||||
|
||||
|
||||
public GameVersion FromTitleId(string titleId)
|
||||
{
|
||||
if (this.LittleBigPlanet1TitleIds.Contains(titleId)) return GameVersion.LittleBigPlanet1;
|
||||
if (this.LittleBigPlanet2TitleIds.Contains(titleId)) return GameVersion.LittleBigPlanet2;
|
||||
if (this.LittleBigPlanet3TitleIds.Contains(titleId)) return GameVersion.LittleBigPlanet3;
|
||||
|
||||
|
||||
return GameVersion.Unknown;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -8,23 +8,23 @@
|
|||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="BCrypt.Net-Next" Version="4.0.2" />
|
||||
<PackageReference Include="Kettu" Version="1.1.0" />
|
||||
<PackageReference Include="Microsoft.AspNetCore.Diagnostics.EntityFrameworkCore" Version="5.0.11" />
|
||||
<PackageReference Include="Microsoft.EntityFrameworkCore" Version="5.0.11" />
|
||||
<PackageReference Include="BCrypt.Net-Next" Version="4.0.2"/>
|
||||
<PackageReference Include="Kettu" Version="1.1.0"/>
|
||||
<PackageReference Include="Microsoft.AspNetCore.Diagnostics.EntityFrameworkCore" Version="5.0.11"/>
|
||||
<PackageReference Include="Microsoft.EntityFrameworkCore" Version="5.0.11"/>
|
||||
<PackageReference Include="Microsoft.EntityFrameworkCore.Design" Version="5.0.11">
|
||||
<PrivateAssets>all</PrivateAssets>
|
||||
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
|
||||
</PackageReference>
|
||||
<PackageReference Include="Pomelo.EntityFrameworkCore.MySql" Version="5.0.2" />
|
||||
<PackageReference Include="Pomelo.EntityFrameworkCore.MySql" Version="5.0.2"/>
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<Compile Remove="Types\SlotXsd.cs" />
|
||||
<Compile Remove="Types\SlotXsd.cs"/>
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<Folder Include="logs" />
|
||||
<Folder Include="logs"/>
|
||||
</ItemGroup>
|
||||
|
||||
</Project>
|
||||
|
|
|
@ -17,7 +17,7 @@ namespace LBPUnion.ProjectLighthouse.Serialization
|
|||
public static string StringElement(KeyValuePair<string, object> pair) => $"<{pair.Key}>{pair.Value}</{pair.Key}>";
|
||||
|
||||
public static string StringElement(string key, bool value) => $"<{key}>{value.ToString().ToLower()}</{key}>";
|
||||
|
||||
|
||||
public static string StringElement(string key, object value) => $"<{key}>{value}</{key}>";
|
||||
|
||||
public static string TaggedStringElement
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Diagnostics;
|
||||
using System.IO;
|
||||
using Kettu;
|
||||
|
@ -68,8 +67,7 @@ namespace LBPUnion.ProjectLighthouse
|
|||
context.Request.EnableBuffering(); // Allows us to reset the position of Request.Body for later logging
|
||||
|
||||
// Client digest check.
|
||||
string authCookie;
|
||||
if (!context.Request.Cookies.TryGetValue("MM_AUTH", out authCookie)) authCookie = string.Empty;
|
||||
if (!context.Request.Cookies.TryGetValue("MM_AUTH", out string authCookie)) authCookie = string.Empty;
|
||||
string digestPath = context.Request.Path;
|
||||
Stream body = context.Request.Body;
|
||||
|
||||
|
@ -91,7 +89,7 @@ namespace LBPUnion.ProjectLighthouse
|
|||
}
|
||||
|
||||
// This does the same as above, but for the response stream.
|
||||
using MemoryStream responseBuffer = new();
|
||||
await using MemoryStream responseBuffer = new();
|
||||
Stream oldResponseStream = context.Response.Body;
|
||||
context.Response.Body = responseBuffer;
|
||||
|
||||
|
|
|
@ -1,7 +1,9 @@
|
|||
using System.Collections.Generic;
|
||||
using System.Diagnostics.CodeAnalysis;
|
||||
|
||||
namespace LBPUnion.ProjectLighthouse.Types.Match
|
||||
{
|
||||
[SuppressMessage("ReSharper", "CollectionNeverUpdated.Global")]
|
||||
public class UpdatePlayersInRoom : IMatchData
|
||||
{
|
||||
public List<string> Players;
|
||||
|
|
|
@ -1,14 +1,16 @@
|
|||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace LBPUnion.ProjectLighthouse.Types.Profiles
|
||||
{
|
||||
public class Pins
|
||||
{
|
||||
[JsonPropertyName("progress")]
|
||||
public long[] Progress { get; set; }
|
||||
|
||||
[JsonPropertyName("awards")]
|
||||
public long[] Awards { get; set; }
|
||||
|
||||
[JsonPropertyName("profile_pins")]
|
||||
public long[] ProfilePins { get; set; }
|
||||
}
|
||||
}
|
||||
|
||||
}
|
|
@ -12,14 +12,14 @@ namespace LBPUnion.ProjectLighthouse.Types
|
|||
[XmlIgnore]
|
||||
[Key]
|
||||
public int ScoreId { get; set; }
|
||||
|
||||
|
||||
[XmlIgnore]
|
||||
public int SlotId { get; set; }
|
||||
|
||||
[XmlIgnore]
|
||||
[ForeignKey(nameof(SlotId))]
|
||||
public Slot Slot { get; set; }
|
||||
|
||||
|
||||
[XmlElement("type")]
|
||||
public int Type { get; set; }
|
||||
|
||||
|
@ -33,7 +33,6 @@ namespace LBPUnion.ProjectLighthouse.Types
|
|||
set => this.PlayerIdCollection = string.Join(',', value);
|
||||
}
|
||||
|
||||
|
||||
[XmlElement("score")]
|
||||
public int Points { get; set; }
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue