mirror of
https://github.com/JogmansonReal/Radicade.git
synced 2026-10-25 15:09:26 -07:00
53 lines
1.4 KiB
C#
53 lines
1.4 KiB
C#
using Microsoft.AspNetCore.Mvc;
|
|
using Microsoft.EntityFrameworkCore;
|
|
using RadicadeServer.DB;
|
|
using RadicadeServer.Extensions;
|
|
using RadicadeServer.RecNet.Accounts;
|
|
using RadicadeServer.RecNet.Enums;
|
|
|
|
namespace RadicadeServer.Matchmaking
|
|
{
|
|
[Route("matchmaking/roominstance/")]
|
|
public class RoomInstanceAPI : Controller
|
|
{
|
|
RecDBContext db;
|
|
public RoomInstanceAPI(RecDBContext context)
|
|
{
|
|
this.db = context;
|
|
}
|
|
|
|
[HttpPut("{id}/markprivate")]
|
|
public async Task<IActionResult> MarkPrivate(long id, bool isPrivate)
|
|
{
|
|
var roomInstance = await db.RoomInstances.FirstOrDefaultAsync(x => x.roomInstanceId == id);
|
|
if (roomInstance == null) return Ok(new { success = false, error = "Room instance not found" });
|
|
|
|
roomInstance.isPrivate = isPrivate;
|
|
|
|
await db.SaveChangesAsync();
|
|
|
|
return Ok(new { success = true, error = "" });
|
|
}
|
|
|
|
[HttpPut("{id}/inprogress")]
|
|
public async Task<IActionResult> MarkInProgress(long id, bool inProgress)
|
|
{
|
|
var roomInstance = await db.RoomInstances.FirstOrDefaultAsync(x => x.roomInstanceId == id);
|
|
if (roomInstance == null) return Ok(new { success = false, error = "Room instance not found" });
|
|
|
|
roomInstance.isInProgress = inProgress;
|
|
|
|
await db.SaveChangesAsync();
|
|
|
|
return Ok(new { success = true, error = "" });
|
|
}
|
|
|
|
[HttpGet("{id}/roomCode")]
|
|
public IActionResult SetRoomCode([FromForm] string roomCode, [FromQuery] long id)
|
|
{
|
|
|
|
return Ok();
|
|
}
|
|
}
|
|
}
|