Search in sources :

Example 1 with GoogleAccountLoginner

use of cl.smartcities.isci.transportinspector.gamification.socialAccount.google.GoogleAccountLoginner in project androidApp by InspectorIncognito.

the class LoginFragment method onCreateView.

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
    View view = inflater.inflate(R.layout.activity_account_login_fragment, container, false);
    facebookCallbackManager = CallbackManager.Factory.create();
    googleCallbackManager = new GoogleAccountLoginner.CallbackManager();
    facebookLoginView = view.findViewById(R.id.login_button);
    googleLoginView = view.findViewById(R.id.google_signin_button);
    loadingView = view.findViewById(R.id.loading_layout);
    termsAndConditions = view.findViewById(R.id.terms_and_conditions);
    termsAndConditions.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
            Intent browserIntent = new Intent(Intent.ACTION_VIEW, Uri.parse(getString(R.string.terms_and_conditions_url)));
            startActivity(browserIntent);
        }
    });
    // termsAndConditions.setMovementMethod(LinkMovementMethod.getInstance());
    // termsAndConditions.setText(text);
    final CredentialsListener listener = new CredentialsListener() {

        @Override
        public void onSuccess(SocialMediaAccount account) {
            SocialMediaAccount.setCurrentAccount(account);
            loginCallback.onSocialNetworkLogin();
        }

        @Override
        public void onError(ServerStatusCode error) {
            facebookLoginView.setClickable(true);
            googleLoginView.setClickable(true);
            if (error.getErrorCode() == ServerStatusCode.INVALID_USER) {
                throw new IllegalStateException("Point of no return: There is no possible flow for this");
            } else {
                Toast.makeText(TranSappApplication.getAppContext(), "No se pudo iniciar sesiĆ³n", Toast.LENGTH_SHORT).show();
            }
        }
    };
    facebookLoginView.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
            facebookLoginView.setClickable(false);
            googleLoginView.setClickable(false);
            FacebookAccountLoginner loginner = new FacebookAccountLoginner(listener, LoginFragment.this);
            loginner.login();
        }
    });
    googleLoginView.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View view) {
            googleLoginView.setClickable(false);
            facebookLoginView.setClickable(false);
            GoogleAccountLoginner loginner = new GoogleAccountLoginner(listener, LoginFragment.this, googleCallbackManager);
            loginner.login();
        }
    });
    return view;
}
Also used : SocialMediaAccount(cl.smartcities.isci.transportinspector.gamification.socialAccount.SocialMediaAccount) ServerStatusCode(cl.smartcities.isci.transportinspector.serverConnection.ServerStatusCode) GoogleAccountLoginner(cl.smartcities.isci.transportinspector.gamification.socialAccount.google.GoogleAccountLoginner) Intent(android.content.Intent) TextView(android.widget.TextView) View(android.view.View) FacebookAccountLoginner(cl.smartcities.isci.transportinspector.gamification.socialAccount.facebook.FacebookAccountLoginner) CredentialsListener(cl.smartcities.isci.transportinspector.gamification.socialAccount.CredentialsListener)

Aggregations

Intent (android.content.Intent)1 View (android.view.View)1 TextView (android.widget.TextView)1 CredentialsListener (cl.smartcities.isci.transportinspector.gamification.socialAccount.CredentialsListener)1 SocialMediaAccount (cl.smartcities.isci.transportinspector.gamification.socialAccount.SocialMediaAccount)1 FacebookAccountLoginner (cl.smartcities.isci.transportinspector.gamification.socialAccount.facebook.FacebookAccountLoginner)1 GoogleAccountLoginner (cl.smartcities.isci.transportinspector.gamification.socialAccount.google.GoogleAccountLoginner)1 ServerStatusCode (cl.smartcities.isci.transportinspector.serverConnection.ServerStatusCode)1