feat: Update joinGame endpoint to accept gameId as a path parameter

This commit is contained in:
2026-01-07 16:56:35 +01:00
parent 723a4be33f
commit cf1854976a
3 changed files with 17 additions and 28 deletions

View File

@@ -55,13 +55,8 @@ class MainMenuController @Inject()(
} }
def joinGame(): Action[AnyContent] = authAction { implicit request: AuthenticatedRequest[AnyContent] => def joinGame(gameId: String): Action[AnyContent] = authAction { implicit request: AuthenticatedRequest[AnyContent] =>
val jsonBody = request.body.asJson val game = PodManager.getGame(gameId)
val gameId: Option[String] = jsonBody.flatMap { jsValue =>
(jsValue \ "gameId").asOpt[String]
}
if (gameId.isDefined) {
val game = PodManager.getGame(gameId.get)
game match { game match {
case Some(g) => case Some(g) =>
g.addUser(request.user) g.addUser(request.user)
@@ -76,12 +71,6 @@ class MainMenuController @Inject()(
"errorMessage" -> "No Game found" "errorMessage" -> "No Game found"
)) ))
} }
} else {
BadRequest(Json.obj(
"status" -> "failure",
"errorMessage" -> "Invalid form submission"
))
}
} }
def rules(): Action[AnyContent] = authAction { implicit request: AuthenticatedRequest[AnyContent] => def rules(): Action[AnyContent] = authAction { implicit request: AuthenticatedRequest[AnyContent] =>

View File

@@ -15,7 +15,7 @@ GET /rules controllers.MainMenuController.rules()
GET /navSPA/:pType controllers.MainMenuController.navSPA(pType) GET /navSPA/:pType controllers.MainMenuController.navSPA(pType)
POST /createGame controllers.MainMenuController.createGame() POST /createGame controllers.MainMenuController.createGame()
POST /joinGame controllers.MainMenuController.joinGame() POST /joinGame/:gameId controllers.MainMenuController.joinGame(gameId: String)
# User authentication routes # User authentication routes
POST /login controllers.UserController.login_Post() POST /login controllers.UserController.login_Post()