Browse Source

KYC flow added from registration screen

master
Preyea Regmi 5 years ago
parent
commit
a9c7f6c30e
  1. 4
      app/src/main/java/com/gmeremit/online/gmeremittance_native/kycV2/view/KYCFormV2Activity.java
  2. 2
      app/src/main/java/com/gmeremit/online/gmeremittance_native/loginV2/presenter/LoginV2Presenter.java
  3. 6
      app/src/main/java/com/gmeremit/online/gmeremittance_native/loginV2/view/LoginV2Activity.java
  4. 59
      app/src/main/java/com/gmeremit/online/gmeremittance_native/registerV2/gateway/RegisterV2Gateway.java
  5. 8
      app/src/main/java/com/gmeremit/online/gmeremittance_native/registerV2/presenter/RegisterV2InteractorInterface.java
  6. 170
      app/src/main/java/com/gmeremit/online/gmeremittance_native/registerV2/presenter/RegisterV2Presenter.java
  7. 5
      app/src/main/java/com/gmeremit/online/gmeremittance_native/registerV2/presenter/RegisterV2PresenterInterface.java
  8. 58
      app/src/main/java/com/gmeremit/online/gmeremittance_native/registerV2/view/RegisterV2Activity.java
  9. 2
      app/src/main/java/com/gmeremit/online/gmeremittance_native/utils/https/API_URL.java
  10. 5
      app/src/main/res/layout/activity_login_v2.xml
  11. 4
      app/src/main/res/values/strings.xml

4
app/src/main/java/com/gmeremit/online/gmeremittance_native/kycV2/view/KYCFormV2Activity.java

@ -4,6 +4,7 @@ import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.os.Handler;
import android.support.design.widget.TabLayout;
import android.support.v4.app.Fragment;
import android.support.v4.content.ContextCompat;
@ -80,6 +81,9 @@ public class KYCFormV2Activity extends BaseActivity implements KYCV2ActionListen
this.presenter.getKycRelatedData();
// userEmail=getIntent().getStringExtra(USER_EMAIL_ID_BUNDLE_KEY);
// userDob=getIntent().getStringExtra(USER_DOB_BUNDLE_KEY);
//TODO for testing
// new Handler().postDelayed(()->closeViewWithSucess(),1000);
} else {
}

2
app/src/main/java/com/gmeremit/online/gmeremittance_native/loginV2/presenter/LoginV2Presenter.java

@ -244,7 +244,7 @@ public class LoginV2Presenter extends BasePresenter implements LoginV2PresenterI
}
if(hasSubmittedKYC&&!hasCompletedPennyTest)
{
task=()->view.redirectToPennyTestView(LoginV2Activity.PENNY_TEST_REQUEST_FROM_LOGIN_SCREEN_CODE);
task=()->view.redirectToPennyTestView(LoginV2Activity.PENNY_TEST_REQUEST_FROM_PRE_LOGIN_SCREEN_CODE);
}
if(!hasSubmittedKYC&&!hasCompletedPennyTest)
{

6
app/src/main/java/com/gmeremit/online/gmeremittance_native/loginV2/view/LoginV2Activity.java

@ -59,7 +59,7 @@ public class LoginV2Activity extends BaseActivity implements View.OnClickListene
public static final int KYC_REQUEST_FROM_LOGIN_SCREEN_CODE = 4281;
public static final int KYC_REQUEST_FROM_LOGIN_SCREEN_CODE_LATER_PROCEED_TO_PENNY_TEST = 4282;
public static final int PENNY_TEST_REQUEST_FROM_LOGIN_SCREEN_CODE = 4283;
public static final int PENNY_TEST_REQUEST_FROM_PRE_LOGIN_SCREEN_CODE = 4283;
public static final String TAG="GMELoginScreen";
@ -311,12 +311,12 @@ public class LoginV2Activity extends BaseActivity implements View.OnClickListene
if (resultCode == Activity.RESULT_OK) {
boolean result = data.getBooleanExtra(KYC_RESULT_STATUS_BUNDLE_KEY, false);
if (result) {
redirectToPennyTestView(PENNY_TEST_REQUEST_FROM_LOGIN_SCREEN_CODE);
redirectToPennyTestView(PENNY_TEST_REQUEST_FROM_PRE_LOGIN_SCREEN_CODE);
}
}
}
else if (requestCode == PENNY_TEST_REQUEST_FROM_LOGIN_SCREEN_CODE) {
else if (requestCode == PENNY_TEST_REQUEST_FROM_PRE_LOGIN_SCREEN_CODE) {
if (resultCode == Activity.RESULT_OK) {
boolean pennTestCompletedResult = data.getBooleanExtra(PennyTestActivity.PENNY_TEST_COMPLETED_PERFORMED_STATUS_BUNDLE_KEY, false);
if (pennTestCompletedResult) {

59
app/src/main/java/com/gmeremit/online/gmeremittance_native/registerV2/gateway/RegisterV2Gateway.java

@ -2,11 +2,14 @@ package com.gmeremit.online.gmeremittance_native.registerV2.gateway;
import android.annotation.SuppressLint;
import android.content.Context;
import android.content.SharedPreferences;
import com.gmeremit.online.gmeremittance_native.GmeApplication;
import com.gmeremit.online.gmeremittance_native.base.PrefKeys;
import com.gmeremit.online.gmeremittance_native.base.PrivilegedGateway;
import com.gmeremit.online.gmeremittance_native.kycV2.model.kyc.NativeCountry;
import com.gmeremit.online.gmeremittance_native.loginV2.model.LoginModelV2;
import com.gmeremit.online.gmeremittance_native.loginV2.model.LoginV2DataApiResponse;
import com.gmeremit.online.gmeremittance_native.registerV2.model.RegisterApiResponse;
import com.gmeremit.online.gmeremittance_native.registerV2.presenter.RegisterV2InteractorInterface;
import com.gmeremit.online.gmeremittance_native.utils.https.HttpClientV2;
@ -59,4 +62,60 @@ public class RegisterV2Gateway extends PrivilegedGateway implements RegisterV2In
return Observable.fromCallable(() -> loadJSONFromAsset(context, "nativecountrylist.json"))
.map(nativeCountryJson -> HttpClientV2.getDeserializer().fromJson(nativeCountryJson, TypeToken.getParameterized(List.class, NativeCountry.class).getType()));
}
@Override
public Observable<LoginV2DataApiResponse> loginUser(String auth, String userId, String password) {
JsonObject jsonObject=new JsonObject();
jsonObject.addProperty("userId",userId);
jsonObject.addProperty("password",password);
return HttpClientV2.getInstance().signInV2(auth,jsonObject);
}
@SuppressLint("ApplySharedPref")
@Override
public Observable<LoginModelV2> saveUserInfo(LoginModelV2 loginApiResponseModelV2) {
return Observable.create(observable->{
SharedPreferences.Editor sharedPreferenceEditor = GmeApplication.getStorage().edit();
sharedPreferenceEditor.putString(PrefKeys.USER_ACCESS_CODE, loginApiResponseModelV2.getAccessCode());
sharedPreferenceEditor.putBoolean(PrefKeys.USER_ACTIVE,loginApiResponseModelV2.getActive());
sharedPreferenceEditor.putString(PrefKeys.USER_AVAILABLE_BALANCE,loginApiResponseModelV2.getAvailableBalance());
sharedPreferenceEditor.putString(PrefKeys.USER_CM_REGISTRATION_ID,loginApiResponseModelV2.getCmRegistrationId());
sharedPreferenceEditor.putString(PrefKeys.USER_COOUNTRY_CODE,loginApiResponseModelV2.getCountryCode());
sharedPreferenceEditor.putString(PrefKeys.USER_COUNTRY,loginApiResponseModelV2.getCountry());
sharedPreferenceEditor.putString(PrefKeys.USER_DP_URL,loginApiResponseModelV2.getDpUrl());
sharedPreferenceEditor.putString(PrefKeys.USER_DOCUMENT_ID_NUMBER,loginApiResponseModelV2.getIdNumber());
sharedPreferenceEditor.putString(PrefKeys.USER_EMAIL,loginApiResponseModelV2.getEmail());
sharedPreferenceEditor.putString(PrefKeys.USER_FIRST_NAME,loginApiResponseModelV2.getFirstName());
sharedPreferenceEditor.putString(PrefKeys.USER_ID,loginApiResponseModelV2.getUserId());
sharedPreferenceEditor.putString(PrefKeys.USER_ID_NUMBER,loginApiResponseModelV2.getSenderId());
sharedPreferenceEditor.putString(PrefKeys.USER_ID_TYPE,loginApiResponseModelV2.getIdType());
sharedPreferenceEditor.putBoolean(PrefKeys.USER_IS_REFERRED,loginApiResponseModelV2.getReferred());
sharedPreferenceEditor.putBoolean(PrefKeys.USER_KYC_SUBMITTED,loginApiResponseModelV2.getKyc());
sharedPreferenceEditor.putString(PrefKeys.USER_LAST_NAME,loginApiResponseModelV2.getLastName());
sharedPreferenceEditor.putString(PrefKeys.USER_MIDDLE_NAME,loginApiResponseModelV2.getMiddleName());
sharedPreferenceEditor.putString(PrefKeys.USER_MSISDN,loginApiResponseModelV2.getMobileNumber());
sharedPreferenceEditor.putString(PrefKeys.USER_NICK_NAME,loginApiResponseModelV2.getNickName());
sharedPreferenceEditor.putString(PrefKeys.USER_PRIMARY_BANK_NAME,loginApiResponseModelV2.getPrimaryBankName());
sharedPreferenceEditor.putString(PrefKeys.USER_PRIMARY_BANK_ACC_NO,loginApiResponseModelV2.getPrimaryBankAccount());
sharedPreferenceEditor.putString(PrefKeys.USER_PENNY_TEST_STATUS,loginApiResponseModelV2.getPennyTestStatus());
sharedPreferenceEditor.putString(PrefKeys.USER_PROVINCE,loginApiResponseModelV2.getProvince());
sharedPreferenceEditor.putString(PrefKeys.USER_PROVINCE_ID,loginApiResponseModelV2.getProvinceId());
sharedPreferenceEditor.putString(PrefKeys.USER_REWAD_POINT,loginApiResponseModelV2.getRewardPoint());
sharedPreferenceEditor.putString(PrefKeys.USER_SOURCE_ID,loginApiResponseModelV2.getSourceId());
sharedPreferenceEditor.putBoolean(PrefKeys.USER_KYC_VERIFIED,loginApiResponseModelV2.getVerified());
sharedPreferenceEditor.putString(PrefKeys.USER_WALLET_NUMBER,loginApiResponseModelV2.getWalletNumber());
sharedPreferenceEditor.putString(PrefKeys.USER_DOB, loginApiResponseModelV2.getUserDob());
sharedPreferenceEditor.commit();
if(!observable.isDisposed())
observable.onNext(loginApiResponseModelV2);
observable.onComplete();
});
}
}

8
app/src/main/java/com/gmeremit/online/gmeremittance_native/registerV2/presenter/RegisterV2InteractorInterface.java

@ -5,6 +5,8 @@ import android.content.Context;
import com.gmeremit.online.gmeremittance_native.base.BaseInteractorInterface;
import com.gmeremit.online.gmeremittance_native.base.PrivilegedGatewayInterface;
import com.gmeremit.online.gmeremittance_native.kycV2.model.kyc.NativeCountry;
import com.gmeremit.online.gmeremittance_native.loginV2.model.LoginModelV2;
import com.gmeremit.online.gmeremittance_native.loginV2.model.LoginV2DataApiResponse;
import com.gmeremit.online.gmeremittance_native.recipientV2.model.recipientadd.AddRecipientApiResponse;
import com.gmeremit.online.gmeremittance_native.recipientV2.model.recipientadd.RecipientRelatedDataApiResponse;
import com.gmeremit.online.gmeremittance_native.registerV2.model.RegisterApiResponse;
@ -26,5 +28,11 @@ public interface RegisterV2InteractorInterface extends BaseInteractorInterface {
void updateUserId(String userId);
Observable<List<NativeCountry>> getNativeCountryList(Context context);
Observable<LoginV2DataApiResponse> loginUser(String auth, String userId, String password);
Observable<LoginModelV2> saveUserInfo(LoginModelV2 userRelatedData);
}
}

170
app/src/main/java/com/gmeremit/online/gmeremittance_native/registerV2/presenter/RegisterV2Presenter.java

@ -1,23 +1,26 @@
package com.gmeremit.online.gmeremittance_native.registerV2.presenter;
import android.util.Log;
import com.gmeremit.online.gmeremittance_native.GmeApplication;
import com.gmeremit.online.gmeremittance_native.R;
import com.gmeremit.online.gmeremittance_native.base.BasePresenter;
import com.gmeremit.online.gmeremittance_native.customwidgets.CustomAlertDialog;
import com.gmeremit.online.gmeremittance_native.kycV2.model.kyc.NativeCountry;
import com.gmeremit.online.gmeremittance_native.loginV2.model.LoginModelV2;
import com.gmeremit.online.gmeremittance_native.loginV2.view.LoginV2Activity;
import com.gmeremit.online.gmeremittance_native.registerV2.gateway.RegisterV2Gateway;
import com.gmeremit.online.gmeremittance_native.registerV2.model.RegisterApiResponse;
import com.gmeremit.online.gmeremittance_native.utils.Constants;
import com.gmeremit.online.gmeremittance_native.utils.Utils;
import com.gmeremit.online.gmeremittance_native.utils.https.GenericApiObserverResponse;
import com.gmeremit.online.gmeremittance_native.utils.security.SecurityUtils;
import com.google.firebase.iid.FirebaseInstanceId;
import java.util.List;
import io.reactivex.Observable;
import io.reactivex.android.schedulers.AndroidSchedulers;
import io.reactivex.disposables.CompositeDisposable;
import io.reactivex.observers.DisposableObserver;
import io.reactivex.schedulers.Schedulers;
public class RegisterV2Presenter extends BasePresenter implements RegisterV2PresenterInterface, RegisterV2InteractorInterface {
@ -55,7 +58,6 @@ public class RegisterV2Presenter extends BasePresenter implements RegisterV2Pres
@Override
public void registerUser() {
GmeApplication.AppRelatedMetaData appRelatedMetaData = GmeApplication.getAppRelatedMetaData(view.getContext());
String auth = "Basic " + Utils.toBase64("172017F9EC11222E8107142733:QRK2UM0Q:" + appRelatedMetaData.getDeviceId());
@ -91,8 +93,6 @@ public class RegisterV2Presenter extends BasePresenter implements RegisterV2Pres
}
@Override
public void updateSelectedNativeCountry(NativeCountry seletedNativeCountry) {
this.selectedNativeCountry = seletedNativeCountry;
@ -111,11 +111,11 @@ public class RegisterV2Presenter extends BasePresenter implements RegisterV2Pres
public void updateMobileNumber(String mobileNumber) {
if (!checkStringNotEmpty(mobileNumber)) {
isSelectedMobileNoValid = false;
selectedMobileNumber="";
selectedMobileNumber = "";
view.setMobileError(getStringfromStringId(R.string.kyc_mobile_empty_error));
} else if (mobileNumber.length() < 9 || mobileNumber.length() > 12) {
selectedMobileNumber="";
selectedMobileNumber = "";
isSelectedMobileNoValid = false;
view.setMobileError(getStringfromStringId(R.string.kyc_mobile_invalid_number_error));
} else {
@ -132,6 +132,23 @@ public class RegisterV2Presenter extends BasePresenter implements RegisterV2Pres
return nativeCountryList;
}
@Override
public void performLoginInternally() {
String auth = "Basic " + Utils.toBase64("172017F9EC11222E8107142733:QRK2UM0Q:" + GmeApplication.getAppRelatedMetaData(view.getContext()).getDeviceId());
this.gateway.loginUser(auth, selectedUserId, enteredEncPassword)
.subscribeOn(Schedulers.io())
.flatMap(loginResponse -> {
if (loginResponse.getErrorCode().equalsIgnoreCase(Constants.SUCCESS_CODE_V2)) {
LoginModelV2 data = loginResponse.getData();
return gateway.saveUserInfo(data);
} else {
return Observable.error(new Exception(loginResponse.getMsg()));
}
})
.observeOn(AndroidSchedulers.mainThread())
.subscribe(new LoginObserver(selectedUserId, enteredEncPassword));
}
@Override
public void updateId(String id) {
selectedUserId = id;
@ -141,7 +158,7 @@ public class RegisterV2Presenter extends BasePresenter implements RegisterV2Pres
} else if (id.length() < 6) {
isSelectedUserIdValid = false;
view.setUserIdError(getStringfromStringId(R.string.userid_error_text ));
view.setUserIdError(getStringfromStringId(R.string.userid_error_text));
} else {
isSelectedUserIdValid = true;
view.setUserIdError(null);
@ -152,21 +169,15 @@ public class RegisterV2Presenter extends BasePresenter implements RegisterV2Pres
}
@Override
public void updatePassword(String encUpdatedPassword,int lengthValue) {
if(lengthValue>=6)
{
public void updatePassword(String encUpdatedPassword, int lengthValue) {
if (lengthValue >= 6) {
this.enteredEncPassword = encUpdatedPassword;
isEnteredPasswordValid=true;
isEnteredPasswordValid = true;
view.setPasswordError(null);
}
else
{
this.enteredEncPassword="";
isEnteredPasswordValid=false;
} else {
this.enteredEncPassword = "";
isEnteredPasswordValid = false;
view.setPasswordError(getStringfromStringId(R.string.password_policy_text));
}
}
@ -183,15 +194,29 @@ public class RegisterV2Presenter extends BasePresenter implements RegisterV2Pres
}
}
private void persistUserCredentialForFingerprintAuth(String userId, String pwd, LoginModelV2 loginModelV2) {
SecurityUtils.generateKey()
.flatMap(key -> Observable.zip(Observable.just(userId),
SecurityUtils.encryptUsingAES(pwd, key).subscribeOn(Schedulers.io()),
encryptByKeyStore(key).subscribeOn(Schedulers.io()),
FingerprintEncResult::new)
).observeOn(AndroidSchedulers.mainThread())
.subscribe(new FingerprintEncResultObserver(loginModelV2));
}
private Observable<String> encryptByKeyStore(String data) {
return SecurityUtils.encryptUsingKeyStore(view.getContext(), data)
.flatMap(encKey -> Observable.just(encKey.getEncrypted()));
}
public class RegistrationObserver extends GenericApiObserverResponse<RegisterApiResponse> {
@Override
protected void onSuccess(RegisterApiResponse responseBody) {
if (responseBody.getErrorCode().equalsIgnoreCase(Constants.SUCCESS_CODE_V2))
view.showPopUpMessage(responseBody.getMsg(), CustomAlertDialog.AlertType.SUCCESS, alertType -> {
// gateway.updateUserId(userId);
// view.redirectToDashboard();
view.redirectToLogin();
view.redirectToKYC(null, LoginV2Activity.KYC_REQUEST_FROM_LOGIN_SCREEN_CODE_LATER_PROCEED_TO_PENNY_TEST);
});
else
view.showPopUpMessage(responseBody.getMsg(), CustomAlertDialog.AlertType.FAILED, null);
@ -214,4 +239,103 @@ public class RegisterV2Presenter extends BasePresenter implements RegisterV2Pres
}
}
public class LoginObserver extends GenericApiObserverResponse<LoginModelV2> {
String userId;
String encUserPassword;
public LoginObserver(String userId, String encUserPassword) {
this.userId = userId;
this.encUserPassword = encUserPassword;
}
@Override
protected void onSuccess(LoginModelV2 loginResponse) {
if (SecurityUtils.checkFingerPrintUsablity(view.getContext()))
persistUserCredentialForFingerprintAuth(userId, encUserPassword, loginResponse);
else
view.redirectToDashboard();
}
@Override
public void onFailed(String message) {
gateway.clearAllUserData();
view.redirectToSplash();
}
@Override
protected void onConnectionNotEstablished(String message) {
gateway.clearAllUserData();
view.redirectToSplash();
}
@Override
protected void unauthorizedAccess(String message) {
gateway.clearAllUserData();
view.redirectToSplash();
}
}
public class FingerprintEncResult {
String userId;
String encPwd;
String encKey;
public FingerprintEncResult(String userId, String encPwd, String encKey) {
this.userId = userId;
this.encPwd = encPwd;
this.encKey = encKey;
}
public String getUserId() {
return userId;
}
public String getEncPwd() {
return encPwd;
}
public String getEncKey() {
return encKey;
}
@Override
public String toString() {
return "FingerprintEncResult{" +
"userId='" + userId + '\'' +
", encPwd='" + encPwd + '\'' +
", encKey='" + encKey + '\'' +
'}';
}
}
public class FingerprintEncResultObserver extends DisposableObserver<FingerprintEncResult> {
LoginModelV2 loginModelV2;
public FingerprintEncResultObserver(LoginModelV2 loginModelV2) {
this.loginModelV2 = loginModelV2;
}
@Override
public void onNext(FingerprintEncResult fingerprintEncResult) {
gateway.persistSecretKey(fingerprintEncResult.getEncKey());
gateway.persistUserPwd(fingerprintEncResult.getEncPwd());
gateway.persistUserId(fingerprintEncResult.getUserId());
view.redirectToDashboard();
}
@Override
public void onError(Throwable e) {
}
@Override
public void onComplete() {
}
}
}

5
app/src/main/java/com/gmeremit/online/gmeremittance_native/registerV2/presenter/RegisterV2PresenterInterface.java

@ -27,6 +27,7 @@ public interface RegisterV2PresenterInterface extends BasePresenterInterface {
List<NativeCountry> getNativeCountryList();
void performLoginInternally();
interface RegisterV2ContractInterface extends BaseContractInterface {
@ -49,6 +50,10 @@ public interface RegisterV2PresenterInterface extends BasePresenterInterface {
void redirectToDashboard();
void redirectToKYC(String email,int requestCode);
Context getContext();
void redirectToSplash();
}
}

58
app/src/main/java/com/gmeremit/online/gmeremittance_native/registerV2/view/RegisterV2Activity.java

@ -1,10 +1,12 @@
package com.gmeremit.online.gmeremittance_native.registerV2.view;
import android.annotation.SuppressLint;
import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.graphics.Rect;
import android.os.Bundle;
import android.os.Handler;
import android.support.v4.view.GestureDetectorCompat;
import android.text.Editable;
import android.util.Log;
@ -25,6 +27,8 @@ import com.gmeremit.online.gmeremittance_native.customwidgets.GmeErrorTextView;
import com.gmeremit.online.gmeremittance_native.customwidgets.TextWatcherAdapter;
import com.gmeremit.online.gmeremittance_native.homeV2.view.HomeActivityV2;
import com.gmeremit.online.gmeremittance_native.kycV2.model.kyc.NativeCountry;
import com.gmeremit.online.gmeremittance_native.kycV2.view.KYCFormV2Activity;
import com.gmeremit.online.gmeremittance_native.kycV2.view.pennytest.PennyTestActivity;
import com.gmeremit.online.gmeremittance_native.loginV2.view.LoginV2Activity;
import com.gmeremit.online.gmeremittance_native.registerV2.presenter.RegisterV2Presenter;
import com.gmeremit.online.gmeremittance_native.registerV2.presenter.RegisterV2PresenterInterface;
@ -36,6 +40,8 @@ import com.softsecurity.transkey.TransKeyActivity;
import butterknife.BindView;
import butterknife.ButterKnife;
import static com.gmeremit.online.gmeremittance_native.kycV2.view.KYCFormV2Activity.KYC_RESULT_STATUS_BUNDLE_KEY;
public class RegisterV2Activity extends BaseActivity implements RegisterV2PresenterInterface.RegisterV2ContractInterface, View.OnClickListener, View.OnTouchListener {
@ -148,7 +154,8 @@ public class RegisterV2Activity extends BaseActivity implements RegisterV2Presen
}
private void performDefaultAction(Bundle savedInstanceState) {
//TODO for testing
// new Handler().postDelayed(()->redirectToKYC(null, LoginV2Activity.KYC_REQUEST_FROM_LOGIN_SCREEN_CODE_LATER_PROCEED_TO_PENNY_TEST),1000);
}
@SuppressLint("ClickableViewAccessibility")
@ -281,11 +288,58 @@ public class RegisterV2Activity extends BaseActivity implements RegisterV2Presen
finish();
}
@Override
public void redirectToKYC(String email, int requestCode) {
Intent startKycIntent = new Intent(this, KYCFormV2Activity.class);
startKycIntent.putExtra(KYCFormV2Activity.USER_EMAIL_ID_BUNDLE_KEY, email);
startActivityForResult(startKycIntent, requestCode);
}
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == LoginV2Activity.KYC_REQUEST_FROM_LOGIN_SCREEN_CODE_LATER_PROCEED_TO_PENNY_TEST) {
if (resultCode == Activity.RESULT_OK) {
boolean result = data.getBooleanExtra(KYC_RESULT_STATUS_BUNDLE_KEY, false);
if (result) {
redirectToPennyTestView(LoginV2Activity.PENNY_TEST_REQUEST_FROM_PRE_LOGIN_SCREEN_CODE);
}
else
finish();
}
}
else if (requestCode == LoginV2Activity.PENNY_TEST_REQUEST_FROM_PRE_LOGIN_SCREEN_CODE) {
if (resultCode == Activity.RESULT_OK) {
boolean pennTestCompletedResult = data.getBooleanExtra(PennyTestActivity.PENNY_TEST_COMPLETED_PERFORMED_STATUS_BUNDLE_KEY, false);
if (pennTestCompletedResult) {
presenter.performLoginInternally();
}
else
finish();
}
else
{
finish();
}
}
}
private void redirectToPennyTestView(int requestCode) {
Intent startPennyTestIntent = new Intent(this, PennyTestActivity.class);
startActivityForResult(startPennyTestIntent, requestCode);
}
@Override
public Context getContext() {
return this;
}
@Override
public void redirectToSplash() {
restartApp();
}
@Override
public boolean onTouch(View v, MotionEvent event) {
@ -340,7 +394,6 @@ public class RegisterV2Activity extends BaseActivity implements RegisterV2Presen
public void done(Intent intent) {
String encryptedText = intent.getStringExtra(TransKeyActivity.mTK_PARAM_SECURE_DATA);
int length=intent.getIntExtra(TransKeyActivity.mTK_PARAM_DATA_LENGTH,0);
Log.d("GMESECUREKEYPAD",length+"");
presenter.updatePassword(encryptedText,length);
}
@ -348,7 +401,6 @@ public class RegisterV2Activity extends BaseActivity implements RegisterV2Presen
public void cancel(Intent intent) {
String encryptedText = intent.getStringExtra(TransKeyActivity.mTK_PARAM_SECURE_DATA);
int length=intent.getIntExtra(TransKeyActivity.mTK_PARAM_DATA_LENGTH,0);
Log.d("GMESECUREKEYPAD",length+"");
presenter.updatePassword(encryptedText,length);
}

2
app/src/main/java/com/gmeremit/online/gmeremittance_native/utils/https/API_URL.java

@ -21,7 +21,7 @@ public class API_URL {
public static final String SEND_MONEY_GET_RECEIPT_V2 = BuildConfig.API_VERSION+"/mobile/receipt/{tranId}";
public static final String SIGN_IN_V2 = BuildConfig.API_VERSION+"/users/access-code";
public static final String SIGN_UP_V2 = BuildConfig.API_VERSION+"/mobile/customerRegister";
public static final String SIGN_UP_V2 = "v3"+"/mobile/customerRegister";
public static final String RESET_PASSWORD_V2 = BuildConfig.API_VERSION+"/mobile/passwordReset";
public static final String KYC_RELATED_DATA_V2 = BuildConfig.API_VERSION+"/mobile/loadform/kyc";
public static final String UPLOAD_KYC_V2 = BuildConfig.API_VERSION+"/mobile/RegisterKyc";

5
app/src/main/res/layout/activity_login_v2.xml

@ -64,8 +64,7 @@
android:layout_marginLeft="10dp"
android:paddingTop="8dp"
android:paddingBottom="2dp"
android:text="@string/email_text"
android:text="@string/login_user_credential_title_text"
android:textSize="14sp"
app:txtfontName="@string/regular" />
@ -81,7 +80,7 @@
android:paddingEnd="8dp"
android:textSize="16sp"
android:minHeight="40dp"
android:hint="@string/user_Id_placeholder_text"
android:hint="@string/login_user_credential_placholder_text"
android:layout_marginStart="10dp"
android:layout_marginEnd="10dp"
android:imeOptions="actionDone"

4
app/src/main/res/values/strings.xml

@ -549,8 +549,10 @@
<string name="later_text">Later</string>
<string name="renewal_text">Renew</string>
<string name="userid_placeholder_text">Enter your ID for using GME</string>
<string name="userid_error_text">ID must be in between 6 to 50 characters</string>
<string name="userid_error_text">ID must be in between 4 to 50 characters</string>
<string name="live_chat_text">Live Chat</string>
<string name="login_user_credential_title_text">User ID / Email / Mobile Number</string>
<string name="login_user_credential_placholder_text">Enter either User ID / Email / Mobile Number</string>
</resources>
Loading…
Cancel
Save