Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 3401f4a0 authored by narinder Rana's avatar narinder Rana
Browse files

hardcode gmail password for new K9 test

parent 2f63b3fa
Loading
Loading
Loading
Loading
Loading
+5 −3
Original line number Diff line number Diff line
@@ -69,7 +69,7 @@ import com.fsck.k9.ui.permissions.K9PermissionUiHelper
import com.fsck.k9.ui.permissions.Permission
import com.fsck.k9.ui.permissions.PermissionUiHelper
import com.fsck.k9.view.ViewSwitcher
import com.fsck.k9.view.ViewSwitcher.OnSwitchCompleteListener
import .view.ViewSwitcher.OnSwitchCompleteListener
import com.google.android.material.snackbar.Snackbar
import com.mikepenz.materialdrawer.util.getOptimalDrawerWidth
import org.koin.android.ext.android.inject
@@ -77,6 +77,7 @@ import org.koin.androidx.viewmodel.ext.android.viewModel
import org.koin.core.component.KoinComponent
import org.koin.core.component.inject
import timber.log.Timber
import com.fsck.k9.activity.setup.GoogleAccountCreator;

/**
 * MessageList is the primary user interface for the program. This Activity shows a list of messages.
@@ -1656,8 +1657,9 @@ open class MessageList :
                }
                if (!accountIsSignedIn) {
                    Log.e("MessageList", "accountIsSignedIn "+accountIsSignedIn)
                   // GoogleAccountCreator.createAccount(this, emailId)
                    EeloAccountCreator.createAccount(this, emailId, "")

                    GoogleAccountCreator.createAccount(this, emailId, "asdf*1234@");
                   // EeloAccountCreator.createAccount(this, emailId, "")
                    accountWasAdded = true
                }
            }
+91 −0
Original line number Diff line number Diff line
package com.fsck.k9.activity.setup;


import android.content.Context;

import com.fsck.k9.Account;
import com.fsck.k9.Account.DeletePolicy;
import com.fsck.k9.Core;
import com.fsck.k9.DI;
import com.fsck.k9.K9;
import com.fsck.k9.Preferences;
import com.fsck.k9.account.AccountCreator;
import com.fsck.k9.autodiscovery.api.DiscoveredServerSettings;
import com.fsck.k9.autodiscovery.api.DiscoveryResults;
import com.fsck.k9.autodiscovery.api.DiscoveryTarget;
import com.fsck.k9.autodiscovery.providersxml.ProvidersXmlDiscovery;
import com.fsck.k9.controller.MessagingController;
import com.fsck.k9.mail.ServerSettings;
import com.fsck.k9.mailstore.SpecialLocalFoldersCreator;
import com.fsck.k9.ui.ConnectionSettings;
import timber.log.Timber;


public class GoogleAccountCreator {
    private static final ProvidersXmlDiscovery providersXmlDiscovery = DI.get(ProvidersXmlDiscovery.class);
    private static final AccountCreator accountCreator = DI.get(AccountCreator.class);
    private static final SpecialLocalFoldersCreator localFoldersCreator = DI.get(SpecialLocalFoldersCreator.class);

    public static void createAccount(Context context, String emailId, String password) {
        Preferences preferences = Preferences.getPreferences(context);

        Account account = preferences.newAccount();
        account.setChipColor(accountCreator.pickColor());
        account.setEmail(emailId);
        account.setDescription(emailId);

        ConnectionSettings connectionSettings = providersXmlDiscoveryDiscover(emailId);
        if (connectionSettings == null) {
            Timber.e("Error while trying to initialise account configuration.");
            return;
        }
        ServerSettings incomingSettings = connectionSettings.getIncoming().newPassword(password);
        account.setIncomingServerSettings(incomingSettings);
        ServerSettings outgoingSettings = connectionSettings.getOutgoing().newPassword(password);
        account.setOutgoingServerSettings(outgoingSettings);

        DeletePolicy deletePolicy = accountCreator.getDefaultDeletePolicy(incomingSettings.type);
        account.setDeletePolicy(deletePolicy);


        localFoldersCreator.createSpecialLocalFolders(account);
        account.markSetupFinished();

        preferences.saveAccount(account);
        Core.setServicesEnabled(context);
    }

    private static ConnectionSettings providersXmlDiscoveryDiscover(String email) {
        DiscoveryResults discoveryResults =
                providersXmlDiscovery.discover(email, DiscoveryTarget.INCOMING_AND_OUTGOING);
        if (discoveryResults == null ||
                (discoveryResults.getIncoming().size() < 1 || discoveryResults.getOutgoing().size() < 1)) {
            return null;
        }
        DiscoveredServerSettings incoming = discoveryResults.getIncoming().get(0);
        DiscoveredServerSettings outgoing = discoveryResults.getOutgoing().get(0);
        return new ConnectionSettings(
                new ServerSettings(
                        incoming.getProtocol(),
                        incoming.getHost(),
                        incoming.getPort(),
                        incoming.getSecurity(),
                        incoming.getAuthType(),
                        incoming.getUsername(),
                        null,
                        null
                ),
                new ServerSettings(
                        outgoing.getProtocol(),
                        outgoing.getHost(),
                        outgoing.getPort(),
                        outgoing.getSecurity(),
                        outgoing.getAuthType(),
                        outgoing.getUsername(),
                        null,
                        null
                )
        );
    }

}