From 798702f677940a7550d1b474f67ef817cb131fbd Mon Sep 17 00:00:00 2001 From: jeffcheasey88 Date: Fri, 22 Sep 2023 14:20:06 +0200 Subject: [PATCH] Fix user settings route --- .../backend/repository/DatabaseRepository.java | 2 +- .../backend/routes/users/ProfileSettings.java | 17 ++++++++--------- 2 files changed, 9 insertions(+), 10 deletions(-) diff --git a/src/dev/peerat/backend/repository/DatabaseRepository.java b/src/dev/peerat/backend/repository/DatabaseRepository.java index dfdcb47..7659e9a 100644 --- a/src/dev/peerat/backend/repository/DatabaseRepository.java +++ b/src/dev/peerat/backend/repository/DatabaseRepository.java @@ -239,7 +239,7 @@ public class DatabaseRepository { ResultSet result = statment.executeQuery(); if(result.next()) return false; statment = DatabaseQuery.UPDATE_PLAYER_INFO.prepare(this.con); - statment.setString(1, player.getPseudo()); + statment.setString(1, pseudo); statment.setString(2, player.getEmail()); statment.setString(3, player.getFirstname()); statment.setString(4, player.getLastname()); diff --git a/src/dev/peerat/backend/routes/users/ProfileSettings.java b/src/dev/peerat/backend/routes/users/ProfileSettings.java index 1bee16c..10072ed 100644 --- a/src/dev/peerat/backend/routes/users/ProfileSettings.java +++ b/src/dev/peerat/backend/routes/users/ProfileSettings.java @@ -6,15 +6,15 @@ import dev.peerat.backend.bonus.extract.RouteDoc; import dev.peerat.backend.model.PeerAtUser; import dev.peerat.backend.model.Player; import dev.peerat.backend.repository.DatabaseRepository; +import dev.peerat.backend.utils.FormResponse; import dev.peerat.framework.Context; import dev.peerat.framework.HttpReader; import dev.peerat.framework.HttpWriter; import dev.peerat.framework.RequestType; -import dev.peerat.framework.Response; import dev.peerat.framework.Route; import dev.peerat.framework.utils.json.JsonMap; -public class ProfileSettings implements Response{ +public class ProfileSettings extends FormResponse{ private DatabaseRepository repo; @@ -27,9 +27,7 @@ public class ProfileSettings implements Response{ @Route(path = "^/user/settings$", type = RequestType.POST, needLogin = true) public void exec(Matcher matcher, Context context, HttpReader reader, HttpWriter writer) throws Exception { - JsonMap json = reader.readJson(); - - System.out.println("received "+json); + JsonMap json = json(reader); String pseudo = json.get("pseudo"); String email = json.get("email"); @@ -37,25 +35,26 @@ public class ProfileSettings implements Response{ String lastname = json.get("lastname"); Player player = repo.getPlayer(context.getUser().getId()); + if(!areValids("pseudo", "firstname", "lastname")){ + context.response(400); + return; + } + if(!player.getPseudo().equals(pseudo)){ - System.out.println("custom pseudp"); if(!repo.updatePseudo(context.getUser().getId(), player, pseudo)){ context.response(400); return; } - System.out.println("pseudo changed"); player.setPseudo(pseudo); } if(!player.getEmail().equals(email)){ - System.out.println("another email"); } if((!player.getFirstname().equals(firstname)) || (!player.getLastname().equals(lastname))){ repo.updateProfile(context.getUser().getId(), player, lastname, firstname); } - System.out.println("200"); context.response(200); }