176472ae40cd55d17edb0420e8fc2a7bae60c50deTony Mantlerpackage com.android.email.activity.setup;
276472ae40cd55d17edb0420e8fc2a7bae60c50deTony Mantler
376472ae40cd55d17edb0420e8fc2a7bae60c50deTony Mantlerimport android.app.Activity;
476472ae40cd55d17edb0420e8fc2a7bae60c50deTony Mantlerimport android.content.Context;
576472ae40cd55d17edb0420e8fc2a7bae60c50deTony Mantlerimport android.content.Intent;
676472ae40cd55d17edb0420e8fc2a7bae60c50deTony Mantlerimport android.os.Bundle;
776472ae40cd55d17edb0420e8fc2a7bae60c50deTony Mantlerimport android.view.View;
876472ae40cd55d17edb0420e8fc2a7bae60c50deTony Mantler
976472ae40cd55d17edb0420e8fc2a7bae60c50deTony Mantlerimport com.android.email.R;
1076472ae40cd55d17edb0420e8fc2a7bae60c50deTony Mantlerimport com.android.email.activity.UiUtilities;
1176472ae40cd55d17edb0420e8fc2a7bae60c50deTony Mantler
1276472ae40cd55d17edb0420e8fc2a7bae60c50deTony Mantlerpublic class AccountCredentials extends Activity
13ae980cd685a867b3fecfd38c876fd18d98b7c86bTony Mantler        implements AccountSetupCredentialsFragment.Callback {
1476472ae40cd55d17edb0420e8fc2a7bae60c50deTony Mantler
1576472ae40cd55d17edb0420e8fc2a7bae60c50deTony Mantler    private static final String EXTRA_EMAIL = "email";
1676472ae40cd55d17edb0420e8fc2a7bae60c50deTony Mantler    private static final String EXTRA_PROTOCOL = "protocol";
1776472ae40cd55d17edb0420e8fc2a7bae60c50deTony Mantler
1876472ae40cd55d17edb0420e8fc2a7bae60c50deTony Mantler    private static final String CREDENTIALS_FRAGMENT_TAG = "credentials";
1976472ae40cd55d17edb0420e8fc2a7bae60c50deTony Mantler
2076472ae40cd55d17edb0420e8fc2a7bae60c50deTony Mantler    public static Intent getAccountCredentialsIntent(final Context context, final String email,
2176472ae40cd55d17edb0420e8fc2a7bae60c50deTony Mantler            final String protocol) {
2276472ae40cd55d17edb0420e8fc2a7bae60c50deTony Mantler        final Intent i = new Intent(context, AccountCredentials.class);
2376472ae40cd55d17edb0420e8fc2a7bae60c50deTony Mantler        i.putExtra(EXTRA_EMAIL, email);
2476472ae40cd55d17edb0420e8fc2a7bae60c50deTony Mantler        i.putExtra(EXTRA_PROTOCOL, protocol);
2576472ae40cd55d17edb0420e8fc2a7bae60c50deTony Mantler        return i;
2676472ae40cd55d17edb0420e8fc2a7bae60c50deTony Mantler    }
2776472ae40cd55d17edb0420e8fc2a7bae60c50deTony Mantler
2876472ae40cd55d17edb0420e8fc2a7bae60c50deTony Mantler    @Override
2976472ae40cd55d17edb0420e8fc2a7bae60c50deTony Mantler    public void onCreate(final Bundle savedInstanceState) {
3076472ae40cd55d17edb0420e8fc2a7bae60c50deTony Mantler        super.onCreate(savedInstanceState);
3176472ae40cd55d17edb0420e8fc2a7bae60c50deTony Mantler        setContentView(R.layout.account_credentials);
3276472ae40cd55d17edb0420e8fc2a7bae60c50deTony Mantler        final String emailAddress = getIntent().getStringExtra(EXTRA_EMAIL);
3376472ae40cd55d17edb0420e8fc2a7bae60c50deTony Mantler        final String protocol = getIntent().getStringExtra(EXTRA_PROTOCOL);
3476472ae40cd55d17edb0420e8fc2a7bae60c50deTony Mantler
35751a029c315e642e5ea979f38927ede34d82edfaTony Mantler        setFinishOnTouchOutside(false);
36751a029c315e642e5ea979f38927ede34d82edfaTony Mantler
374822b266ef6b50f3d6d6aaf100c399db35d62df1Tony Mantler        if (savedInstanceState == null) {
384822b266ef6b50f3d6d6aaf100c399db35d62df1Tony Mantler            final AccountSetupCredentialsFragment f =
394822b266ef6b50f3d6d6aaf100c399db35d62df1Tony Mantler                    AccountSetupCredentialsFragment.newInstance(emailAddress, protocol,
404822b266ef6b50f3d6d6aaf100c399db35d62df1Tony Mantler                            null /* clientCert */, false /* passwordFailed */,
414822b266ef6b50f3d6d6aaf100c399db35d62df1Tony Mantler                            true /* standalone */);
424822b266ef6b50f3d6d6aaf100c399db35d62df1Tony Mantler            getFragmentManager().beginTransaction()
434822b266ef6b50f3d6d6aaf100c399db35d62df1Tony Mantler                    .add(R.id.account_credentials_fragment_container, f, CREDENTIALS_FRAGMENT_TAG)
444822b266ef6b50f3d6d6aaf100c399db35d62df1Tony Mantler                    .commit();
454822b266ef6b50f3d6d6aaf100c399db35d62df1Tony Mantler        }
4676472ae40cd55d17edb0420e8fc2a7bae60c50deTony Mantler        // Assume canceled until we find out otherwise.
4776472ae40cd55d17edb0420e8fc2a7bae60c50deTony Mantler        setResult(RESULT_CANCELED);
4876472ae40cd55d17edb0420e8fc2a7bae60c50deTony Mantler    }
4976472ae40cd55d17edb0420e8fc2a7bae60c50deTony Mantler
5076472ae40cd55d17edb0420e8fc2a7bae60c50deTony Mantler    @Override
5176472ae40cd55d17edb0420e8fc2a7bae60c50deTony Mantler    public void onCredentialsComplete(Bundle results) {
5276472ae40cd55d17edb0420e8fc2a7bae60c50deTony Mantler        final Intent intent = new Intent();
5376472ae40cd55d17edb0420e8fc2a7bae60c50deTony Mantler        intent.putExtras(results);
5476472ae40cd55d17edb0420e8fc2a7bae60c50deTony Mantler        setResult(RESULT_OK, intent);
5576472ae40cd55d17edb0420e8fc2a7bae60c50deTony Mantler        finish();
5676472ae40cd55d17edb0420e8fc2a7bae60c50deTony Mantler    }
5776472ae40cd55d17edb0420e8fc2a7bae60c50deTony Mantler
5876472ae40cd55d17edb0420e8fc2a7bae60c50deTony Mantler    @Override
59ae980cd685a867b3fecfd38c876fd18d98b7c86bTony Mantler    public void onNextButton() {
60ae980cd685a867b3fecfd38c876fd18d98b7c86bTony Mantler        final AccountSetupCredentialsFragment fragment = (AccountSetupCredentialsFragment)
61ae980cd685a867b3fecfd38c876fd18d98b7c86bTony Mantler                getFragmentManager().findFragmentByTag(CREDENTIALS_FRAGMENT_TAG);
62ae980cd685a867b3fecfd38c876fd18d98b7c86bTony Mantler        final Bundle results = fragment.getCredentialResults();
63ae980cd685a867b3fecfd38c876fd18d98b7c86bTony Mantler        onCredentialsComplete(results);
6476472ae40cd55d17edb0420e8fc2a7bae60c50deTony Mantler    }
6576472ae40cd55d17edb0420e8fc2a7bae60c50deTony Mantler}
66