From ceaf3086e2cca7e1af33853fc33f1c1bc11617d6 Mon Sep 17 00:00:00 2001 From: Phillip Thelen Date: Mon, 7 Dec 2015 21:49:49 +0100 Subject: [PATCH] Fix registration. Fixes #117 --- .../com/habitrpg/android/habitica/APIHelper.java | 16 +++++++--------- .../habitrpg/android/habitica/LoginActivity.java | 2 +- .../habitrpgwrapper/lib/api/ApiService.java | 3 +++ .../habitrpgwrapper/lib/models/UserAuth.java | 14 ++++++++++++++ .../lib/models/UserAuthResponse.java | 16 +++++++++++++++- 5 files changed, 40 insertions(+), 11 deletions(-) diff --git a/Habitica/src/com/habitrpg/android/habitica/APIHelper.java b/Habitica/src/com/habitrpg/android/habitica/APIHelper.java index d840c4e9e..2b2672163 100644 --- a/Habitica/src/com/habitrpg/android/habitica/APIHelper.java +++ b/Habitica/src/com/habitrpg/android/habitica/APIHelper.java @@ -171,18 +171,16 @@ public class APIHelper implements ErrorHandler, Profiler { this.apiService.postTaskDirection(id, direction.toString(), callback); } - public void registerUser(View btnClicked, String username, String email, String password, String confirmPassword) { - - // ATAskRegisterUser reg = new ATAskRegisterUser(mResultListener,mConfig,btnClicked); - // String[] params = {username,email,password,confirmPassword}; - // reg.execute(params); - + public void registerUser(String username, String email, String password, String confirmPassword, Callback callback) { + UserAuth auth = new UserAuth(); + auth.setUsername(username); + auth.setPassword(password); + auth.setConfirmPassword(confirmPassword); + auth.setEmail(email); + this.apiService.registerUser(auth, callback); } public void connectUser(String username, String password, Callback callback) { - // ATaskConnectUser con = new ATaskConnectUser(mResultListener,mConfig,btnClicked); - // String[] params = {username,password}; - // con.execute(params); UserAuth auth = new UserAuth(); auth.setUsername(username); auth.setPassword(password); diff --git a/Habitica/src/com/habitrpg/android/habitica/LoginActivity.java b/Habitica/src/com/habitrpg/android/habitica/LoginActivity.java index eb16de00d..eb46c5420 100644 --- a/Habitica/src/com/habitrpg/android/habitica/LoginActivity.java +++ b/Habitica/src/com/habitrpg/android/habitica/LoginActivity.java @@ -149,7 +149,7 @@ public class LoginActivity extends AppCompatActivity showValidationError(R.string.login_validation_error_fieldsmissing); return; } - mApiHelper.registerUser(v,username,email,password,cpassword); + mApiHelper.registerUser(username,email,password, cpassword, LoginActivity.this); } else { String username,password; username = String.valueOf(mUsernameET.getText()); diff --git a/Habitica/src/com/magicmicky/habitrpgwrapper/lib/api/ApiService.java b/Habitica/src/com/magicmicky/habitrpgwrapper/lib/api/ApiService.java index a183aaa3e..9a30eddb5 100644 --- a/Habitica/src/com/magicmicky/habitrpgwrapper/lib/api/ApiService.java +++ b/Habitica/src/com/magicmicky/habitrpgwrapper/lib/api/ApiService.java @@ -83,6 +83,9 @@ public interface ApiService { @DELETE("/user/tags/{id}") void deleteTag(@Path("id") String id, Callback voidCallback); + @POST("/register") + void registerUser(@Body UserAuth auth, Callback callback); + @POST("/user/auth/local") void connectLocal(@Body UserAuth auth, Callback callback); diff --git a/Habitica/src/com/magicmicky/habitrpgwrapper/lib/models/UserAuth.java b/Habitica/src/com/magicmicky/habitrpgwrapper/lib/models/UserAuth.java index 4c48405e1..bc5d9d496 100644 --- a/Habitica/src/com/magicmicky/habitrpgwrapper/lib/models/UserAuth.java +++ b/Habitica/src/com/magicmicky/habitrpgwrapper/lib/models/UserAuth.java @@ -6,6 +6,8 @@ package com.magicmicky.habitrpgwrapper.lib.models; public class UserAuth { private String username; private String password; + private String confirmPassword; + private String email; public String getUsername() { return username; @@ -22,4 +24,16 @@ public class UserAuth { public void setPassword(String password) { this.password = password; } + + public String getConfirmPassword() { + return confirmPassword; + } + + public void setConfirmPassword(String confirmPassword) { + this.confirmPassword = confirmPassword; + } + + public String getEmail() { return email; } + + public void setEmail(String email) { this.email = email; } } diff --git a/Habitica/src/com/magicmicky/habitrpgwrapper/lib/models/UserAuthResponse.java b/Habitica/src/com/magicmicky/habitrpgwrapper/lib/models/UserAuthResponse.java index 138af3f73..8b2f100fd 100644 --- a/Habitica/src/com/magicmicky/habitrpgwrapper/lib/models/UserAuthResponse.java +++ b/Habitica/src/com/magicmicky/habitrpgwrapper/lib/models/UserAuthResponse.java @@ -4,17 +4,31 @@ package com.magicmicky.habitrpgwrapper.lib.models; * Created by magicmicky on 04/02/15. */ public class UserAuthResponse { + //we need apiToken and token, as both are possible returns + private String apiToken; private String token; private String id; public String getToken() { - return token; + if (this.token == null) { + return this.apiToken; + } else { + return this.token; + } } public void setToken(String token) { this.token = token; } + public String getApiToken() { + return apiToken; + } + + public void setApiToken(String apiToken) { + this.apiToken = apiToken; + } + public String getId() { return id; }