package com.betaseries.betaseries.ui.login; import android.content.Intent; import android.os.Bundle; import android.support.annotation.Nullable; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.EditText; import android.widget.Toast; import com.betaseries.betaseries.BuildConfig; import com.betaseries.betaseries.R; import com.betaseries.betaseries.ui.AbstractFragment; import com.betaseries.betaseries.ui.MainActivity; import butterknife.Bind; import butterknife.ButterKnife; import butterknife.OnClick; import rx.android.schedulers.AndroidSchedulers; import rx.schedulers.Schedulers; /** * Created by florentchampigny on 24/08/15. */ public class LoginFragment extends AbstractFragment { public static AbstractFragment newInstance() { return new LoginFragment(); } @Bind(R.id.userName) EditText userName; @Bind(R.id.password) EditText password; @Nullable @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { return inflater.inflate(R.layout.fragment_login_3, container, false); } @Override public void onViewCreated(View view, Bundle savedInstanceState) { super.onViewCreated(view, savedInstanceState); ButterKnife.bind(this, view); if (!BuildConfig.BETASERIES_USER.isEmpty() && !BuildConfig.BETASERIES_PASSWORD.isEmpty()) { userName.setText(BuildConfig.BETASERIES_USER); password.setText(BuildConfig.BETASERIES_PASSWORD); } } @OnClick(R.id.login) public void onLoginClicked() { String user = userName.getText().toString(); String pass = password.getText().toString(); if (user.isEmpty()) Toast.makeText(getActivity(), "user.isEmpty()", Toast.LENGTH_SHORT).show(); else if (pass.isEmpty()) Toast.makeText(getActivity(), "pass.isEmpty()", Toast.LENGTH_SHORT).show(); else authenticationManager.authentifier(user, pass) .subscribeOn(Schedulers.io()) .observeOn(AndroidSchedulers.mainThread()) .onErrorReturn(throwable -> { Toast.makeText(getActivity(), "Authentication error", Toast.LENGTH_SHORT).show(); return null; }) .subscribe(authentification -> { if (getActivity() != null) { startActivity(new Intent(getActivity(), MainActivity.class)); getActivity().finish(); } }); } }