feat(user-sessions): refactor card rendering and remove unused login methods
This commit is contained in:
@@ -15,61 +15,11 @@ import javax.inject.*
|
|||||||
@Singleton
|
@Singleton
|
||||||
class IngameController @Inject()(
|
class IngameController @Inject()(
|
||||||
val controllerComponents: ControllerComponents,
|
val controllerComponents: ControllerComponents,
|
||||||
val sessionManager: SessionManager,
|
|
||||||
val userManager: UserManager,
|
|
||||||
val authAction: AuthAction
|
val authAction: AuthAction
|
||||||
) extends BaseController {
|
) extends BaseController {
|
||||||
|
|
||||||
// Pass the request-handling function directly to authAction (no nested Action)
|
|
||||||
def mainMenu(): Action[AnyContent] = authAction { implicit request: AuthenticatedRequest[AnyContent] =>
|
def mainMenu(): Action[AnyContent] = authAction { implicit request: AuthenticatedRequest[AnyContent] =>
|
||||||
Ok("Main Menu for user: " + request.user.name)
|
Ok("Main Menu for user: " + request.user.name)
|
||||||
}
|
}
|
||||||
|
|
||||||
def login(): Action[AnyContent] = {
|
|
||||||
Action { implicit request =>
|
|
||||||
val session = request.cookies.get("sessionId")
|
|
||||||
if (session.isDefined) {
|
|
||||||
val possibleUser = sessionManager.getUserBySession(session.get.value)
|
|
||||||
if (possibleUser.isDefined) {
|
|
||||||
Redirect("/mainmenu")
|
|
||||||
} else {
|
|
||||||
Ok(views.html.login())
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
Ok(views.html.login())
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
def login_Post(): Action[AnyContent] = {
|
|
||||||
Action { implicit request =>
|
|
||||||
val postData = request.body.asFormUrlEncoded
|
|
||||||
if (postData.isDefined) {
|
|
||||||
// Extract username and password from form data
|
|
||||||
val username = postData.get.get("username").flatMap(_.headOption).getOrElse("")
|
|
||||||
val password = postData.get.get("password").flatMap(_.headOption).getOrElse("")
|
|
||||||
val possibleUser = userManager.authenticate(username, password)
|
|
||||||
if (possibleUser.isDefined) {
|
|
||||||
Redirect("/mainmenu").withCookies(
|
|
||||||
Cookie("sessionId", sessionManager.createSession(possibleUser.get))
|
|
||||||
)
|
|
||||||
} else {
|
|
||||||
println("Failed login attempt for user: " + username)
|
|
||||||
Unauthorized("Invalid username or password")
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
BadRequest("Invalid form submission")
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// Pass the request-handling function directly to authAction (no nested Action)
|
|
||||||
def logout(): Action[AnyContent] = authAction { implicit request: AuthenticatedRequest[AnyContent] =>
|
|
||||||
val sessionCookie = request.cookies.get("sessionId")
|
|
||||||
if (sessionCookie.isDefined) {
|
|
||||||
sessionManager.invalidateSession(sessionCookie.get.value)
|
|
||||||
}
|
|
||||||
NoContent.discardingCookies(DiscardingCookie("sessionId"))
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -29,6 +29,6 @@ object WebUIUtils {
|
|||||||
case Three => "3"
|
case Three => "3"
|
||||||
case Two => "2"
|
case Two => "2"
|
||||||
}
|
}
|
||||||
views.html.output.card.apply(f"images/cards/$cv$s.png")(card.toString)
|
views.html.render.card.apply(f"images/cards/$cv$s.png")(card.toString)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,3 +0,0 @@
|
|||||||
@main("Welcome to Play") {
|
|
||||||
<h1>Welcome to Play!</h1>
|
|
||||||
}
|
|
||||||
@@ -17,7 +17,7 @@
|
|||||||
@if(logic.getCurrentTrick.get.firstCard.isDefined) {
|
@if(logic.getCurrentTrick.get.firstCard.isDefined) {
|
||||||
@util.WebUIUtils.cardtoImage(logic.getCurrentTrick.get.firstCard.get)
|
@util.WebUIUtils.cardtoImage(logic.getCurrentTrick.get.firstCard.get)
|
||||||
} else {
|
} else {
|
||||||
@views.html.output.card.apply("images/cards/1B.png")("Blank Card")
|
@views.html.render.card.apply("../../../public/images/cards/1B.png")("Blank Card")
|
||||||
}
|
}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -1,10 +0,0 @@
|
|||||||
@(toRender: List[Html])
|
|
||||||
|
|
||||||
@main("Tui") {
|
|
||||||
<div id="tui">
|
|
||||||
@for(line <- toRender) {
|
|
||||||
@line
|
|
||||||
}
|
|
||||||
</div>
|
|
||||||
}
|
|
||||||
|
|
||||||
Reference in New Issue
Block a user