Search in sources :

Example 1 with LoginTask

use of org.edx.mobile.authentication.LoginTask in project edx-app-android by edx.

the class LoginActivity method callServerForLogin.

public void callServerForLogin() {
    if (!NetworkUtil.isConnected(this)) {
        showAlertDialog(getString(R.string.no_connectivity), getString(R.string.network_not_connected));
        return;
    }
    final String emailStr = activityLoginBinding.emailEt.getText().toString().trim();
    final String passwordStr = activityLoginBinding.passwordEt.getText().toString().trim();
    if (activityLoginBinding.emailEt != null && emailStr.length() == 0) {
        showAlertDialog(getString(R.string.login_error), getString(R.string.error_enter_email));
        activityLoginBinding.emailEt.requestFocus();
    } else if (activityLoginBinding.passwordEt != null && passwordStr.length() == 0) {
        showAlertDialog(getString(R.string.login_error), getString(R.string.error_enter_password));
        activityLoginBinding.passwordEt.requestFocus();
    } else {
        activityLoginBinding.emailEt.setEnabled(false);
        activityLoginBinding.passwordEt.setEnabled(false);
        activityLoginBinding.forgotPasswordTv.setEnabled(false);
        activityLoginBinding.endUserAgreementTv.setEnabled(false);
        LoginTask logintask = new LoginTask(this, activityLoginBinding.emailEt.getText().toString().trim(), activityLoginBinding.passwordEt.getText().toString()) {

            @Override
            public void onSuccess(@NonNull AuthResponse result) {
                onUserLoginSuccess(result.profile);
            }

            @Override
            public void onException(Exception ex) {
                if (ex instanceof HttpStatusException && ((HttpStatusException) ex).getStatusCode() == HttpStatus.UNAUTHORIZED) {
                    onUserLoginFailure(new LoginException(new LoginErrorMessage(getString(R.string.login_error), getString(R.string.login_failed))), null, null);
                } else {
                    onUserLoginFailure(ex, null, null);
                }
            }
        };
        tryToSetUIInteraction(false);
        logintask.setProgressDialog(activityLoginBinding.progress.progressIndicator);
        logintask.execute();
    }
}
Also used : LoginErrorMessage(org.edx.mobile.exception.LoginErrorMessage) LoginTask(org.edx.mobile.authentication.LoginTask) HttpStatusException(org.edx.mobile.http.HttpStatusException) LoginException(org.edx.mobile.exception.LoginException) LoginException(org.edx.mobile.exception.LoginException) HttpStatusException(org.edx.mobile.http.HttpStatusException) AuthResponse(org.edx.mobile.authentication.AuthResponse)

Aggregations

AuthResponse (org.edx.mobile.authentication.AuthResponse)1 LoginTask (org.edx.mobile.authentication.LoginTask)1 LoginErrorMessage (org.edx.mobile.exception.LoginErrorMessage)1 LoginException (org.edx.mobile.exception.LoginException)1 HttpStatusException (org.edx.mobile.http.HttpStatusException)1