Search in sources :

Example 1 with SocialLoginDelegate

use of org.edx.mobile.social.SocialLoginDelegate in project edx-app-android by edx.

the class LoginActivity method createView.

@NonNull
@Override
protected LoginPresenter.LoginViewInterface createView(@Nullable Bundle savedInstanceState) {
    activityLoginBinding = DataBindingUtil.setContentView(this, R.layout.activity_login);
    hideSoftKeypad();
    socialLoginDelegate = new SocialLoginDelegate(this, savedInstanceState, this, environment.getConfig(), environment.getLoginPrefs());
    activityLoginBinding.socialAuth.facebookButton.getRoot().setOnClickListener(socialLoginDelegate.createSocialButtonClickHandler(SocialFactory.SOCIAL_SOURCE_TYPE.TYPE_FACEBOOK));
    activityLoginBinding.socialAuth.googleButton.getRoot().setOnClickListener(socialLoginDelegate.createSocialButtonClickHandler(SocialFactory.SOCIAL_SOURCE_TYPE.TYPE_GOOGLE));
    activityLoginBinding.loginButtonLayout.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View v) {
            // Check for Validation˜
            callServerForLogin();
        }
    });
    activityLoginBinding.forgotPasswordTv.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View v) {
            // Calling help dialog
            if (NetworkUtil.isConnected(LoginActivity.this)) {
                showResetPasswordDialog();
            } else {
                showAlertDialog(getString(R.string.reset_no_network_title), getString(R.string.network_not_connected));
            }
        }
    });
    String platformName = environment.getConfig().getPlatformName();
    CharSequence licenseText = ResourceUtil.getFormattedString(getResources(), R.string.licensing_agreement, "platform_name", platformName);
    activityLoginBinding.endUserAgreementTv.setText(licenseText);
    activityLoginBinding.endUserAgreementTv.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View v) {
            showEulaDialog();
        }
    });
    environment.getAnalyticsRegistry().trackScreenView(Analytics.Screens.LOGIN);
    // enable login buttons at launch
    tryToSetUIInteraction(true);
    Config config = environment.getConfig();
    setTitle(getString(R.string.login_title));
    String envDisplayName = config.getEnvironmentDisplayName();
    if (envDisplayName != null && envDisplayName.length() > 0) {
        activityLoginBinding.versionEnvTv.setVisibility(View.VISIBLE);
        String versionName = BuildConfig.VERSION_NAME;
        String text = String.format("%s %s %s", getString(R.string.label_version), versionName, envDisplayName);
        activityLoginBinding.versionEnvTv.setText(text);
    }
    return new LoginPresenter.LoginViewInterface() {

        @Override
        public void disableToolbarNavigation() {
            ActionBar actionBar = getSupportActionBar();
            if (actionBar != null) {
                actionBar.setHomeButtonEnabled(false);
                actionBar.setDisplayHomeAsUpEnabled(false);
                actionBar.setDisplayShowHomeEnabled(false);
            }
        }

        @Override
        public void setSocialLoginButtons(boolean googleEnabled, boolean facebookEnabled) {
            if (!facebookEnabled && !googleEnabled) {
                activityLoginBinding.panelLoginSocial.setVisibility(View.GONE);
            } else if (!facebookEnabled) {
                activityLoginBinding.socialAuth.facebookButton.getRoot().setVisibility(View.GONE);
            } else if (!googleEnabled) {
                activityLoginBinding.socialAuth.googleButton.getRoot().setVisibility(View.GONE);
            }
        }
    };
}
Also used : Config(org.edx.mobile.util.Config) BuildConfig(org.edx.mobile.BuildConfig) OnClickListener(android.view.View.OnClickListener) View(android.view.View) SocialLoginDelegate(org.edx.mobile.social.SocialLoginDelegate) ActionBar(android.support.v7.app.ActionBar) NonNull(android.support.annotation.NonNull)

Example 2 with SocialLoginDelegate

use of org.edx.mobile.social.SocialLoginDelegate in project edx-app-android by edx.

the class RegisterActivity method onCreate.

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_register);
    super.setToolbarAsActionBar();
    setTitle(R.string.register_title);
    environment.getAnalyticsRegistry().trackScreenView(Analytics.Screens.REGISTER);
    loadingIndicator = findViewById(R.id.loadingIndicator);
    registrationForm = findViewById(R.id.registration_form);
    socialLoginDelegate = new SocialLoginDelegate(this, savedInstanceState, this, environment.getConfig(), loginPrefs);
    errorTextView = (TextView) findViewById(R.id.content_unavailable_error_text);
    boolean isSocialEnabled = false;
    facebookButton = findViewById(R.id.facebook_button);
    googleButton = findViewById(R.id.google_button);
    if (!SocialFactory.isSocialFeatureEnabled(getApplication(), SocialFactory.SOCIAL_SOURCE_TYPE.TYPE_FACEBOOK, environment.getConfig())) {
        facebookButton.setVisibility(View.GONE);
    } else {
        isSocialEnabled = true;
        facebookButton.setOnClickListener(socialLoginDelegate.createSocialButtonClickHandler(SocialFactory.SOCIAL_SOURCE_TYPE.TYPE_FACEBOOK));
    }
    if (!SocialFactory.isSocialFeatureEnabled(getApplication(), SocialFactory.SOCIAL_SOURCE_TYPE.TYPE_GOOGLE, environment.getConfig())) {
        googleButton.setVisibility(View.GONE);
    } else {
        isSocialEnabled = true;
        googleButton.setOnClickListener(socialLoginDelegate.createSocialButtonClickHandler(SocialFactory.SOCIAL_SOURCE_TYPE.TYPE_GOOGLE));
    }
    if (!isSocialEnabled) {
        findViewById(R.id.panel_social_layout).setVisibility(View.GONE);
        findViewById(R.id.or_signup_with_email_title).setVisibility(View.GONE);
        findViewById(R.id.signup_with_row).setVisibility(View.GONE);
    }
    TextView agreementMessageView = (TextView) findViewById(R.id.by_creating_account_tv);
    agreementMessageView.setText(R.string.by_creating_account);
    createAccountBtn = (ViewGroup) findViewById(R.id.createAccount_button_layout);
    createAccountBtn.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
            SoftKeyboardUtil.hide(RegisterActivity.this);
            createAccount();
        }
    });
    createAccountTv = (TextView) findViewById(R.id.create_account_tv);
    requiredFieldsLayout = (LinearLayout) findViewById(R.id.required_fields_layout);
    optionalFieldsLayout = (LinearLayout) findViewById(R.id.optional_fields_layout);
    agreementLayout = (LinearLayout) findViewById(R.id.layout_agreement);
    final TextView optional_text = (TextView) findViewById(R.id.optional_field_tv);
    optional_text.setTextColor(optional_text.getLinkTextColors().getDefaultColor());
    optional_text.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
            if (optionalFieldsLayout.getVisibility() == View.VISIBLE) {
                optionalFieldsLayout.setVisibility(v.GONE);
                optional_text.setText(getString(R.string.show_optional_text));
            } else {
                optionalFieldsLayout.setVisibility(v.VISIBLE);
                optional_text.setText(getString(R.string.hide_optional_text));
            }
        }
    });
    getRegistrationForm();
    hideSoftKeypad();
    tryToSetUIInteraction(true);
}
Also used : DividerWithTextView(org.edx.mobile.view.custom.DividerWithTextView) RegistrationEditTextView(org.edx.mobile.module.registration.view.RegistrationEditTextView) TextView(android.widget.TextView) DividerWithTextView(org.edx.mobile.view.custom.DividerWithTextView) View(android.view.View) RegistrationEditTextView(org.edx.mobile.module.registration.view.RegistrationEditTextView) TextView(android.widget.TextView) RegistrationSelectView(org.edx.mobile.module.registration.view.RegistrationSelectView) IRegistrationFieldView(org.edx.mobile.module.registration.view.IRegistrationFieldView) ScrollView(android.widget.ScrollView) SocialLoginDelegate(org.edx.mobile.social.SocialLoginDelegate)

Aggregations

View (android.view.View)2 SocialLoginDelegate (org.edx.mobile.social.SocialLoginDelegate)2 NonNull (android.support.annotation.NonNull)1 ActionBar (android.support.v7.app.ActionBar)1 OnClickListener (android.view.View.OnClickListener)1 ScrollView (android.widget.ScrollView)1 TextView (android.widget.TextView)1 BuildConfig (org.edx.mobile.BuildConfig)1 IRegistrationFieldView (org.edx.mobile.module.registration.view.IRegistrationFieldView)1 RegistrationEditTextView (org.edx.mobile.module.registration.view.RegistrationEditTextView)1 RegistrationSelectView (org.edx.mobile.module.registration.view.RegistrationSelectView)1 Config (org.edx.mobile.util.Config)1 DividerWithTextView (org.edx.mobile.view.custom.DividerWithTextView)1