Skip to content

Commit a1bc462

Browse files
committed
Added option to verify email only if login is for self hosted credentials
1 parent c2f2bba commit a1bc462

6 files changed

Lines changed: 14 additions & 6 deletions

File tree

WordPressLoginFlow/src/main/java/org/wordpress/android/login/LoginEmailFragment.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -432,7 +432,7 @@ public void onAvailabilityChecked(OnAvailabilityChecked event) {
432432
showEmailError(R.string.email_not_registered_wpcom);
433433
} else if (mLoginListener != null) {
434434
ActivityUtils.hideKeyboardForced(mEmailInput);
435-
mLoginListener.gotWpcomEmail(event.value);
435+
mLoginListener.gotWpcomEmail(event.value, false);
436436
}
437437
break;
438438
default:

WordPressLoginFlow/src/main/java/org/wordpress/android/login/LoginListener.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ interface SelfSignedSSLCallback {
1818
LoginMode getLoginMode();
1919

2020
// Login Email input callbacks
21-
void gotWpcomEmail(String email);
21+
void gotWpcomEmail(String email, boolean verifyEmail);
2222
void loginViaSiteAddress();
2323
void loginViaSocialAccount(String email, String idToken, String service, boolean isPasswordRequired);
2424
void loggedInViaSocialAccount(ArrayList<Integer> oldSiteIds, boolean doLoginUpdate);

WordPressLoginFlow/src/main/java/org/wordpress/android/login/LoginMagicLinkRequestFragment.java

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -59,6 +59,7 @@ public class LoginMagicLinkRequestFragment extends Fragment {
5959
private static final String ARG_MAGIC_LINK_SCHEME = "ARG_MAGIC_LINK_SCHEME";
6060
private static final String ARG_IS_JETPACK_CONNECT = "ARG_IS_JETPACK_CONNECT";
6161
private static final String ARG_JETPACK_CONNECT_SOURCE = "ARG_JETPACK_CONNECT_SOURCE";
62+
private static final String ARG_VERIFY_MAGIC_LINK_EMAIL = "ARG_VERIFY_MAGIC_LINK_EMAIL";
6263

6364
private static final String ERROR_KEY = "error";
6465

@@ -74,18 +75,21 @@ public class LoginMagicLinkRequestFragment extends Fragment {
7475

7576
private boolean mInProgress;
7677
private boolean mIsJetpackConnect;
78+
private boolean mVerifyMagicLinkEmail;
7779

7880
@Inject protected Dispatcher mDispatcher;
7981

8082
@Inject protected LoginAnalyticsListener mAnalyticsListener;
8183
public static LoginMagicLinkRequestFragment newInstance(String email, AuthEmailPayloadScheme scheme,
82-
boolean isJetpackConnect, String jetpackConnectSource) {
84+
boolean isJetpackConnect, String jetpackConnectSource,
85+
boolean verifyEmail) {
8386
LoginMagicLinkRequestFragment fragment = new LoginMagicLinkRequestFragment();
8487
Bundle args = new Bundle();
8588
args.putString(ARG_EMAIL_ADDRESS, email);
8689
args.putSerializable(ARG_MAGIC_LINK_SCHEME, scheme);
8790
args.putBoolean(ARG_IS_JETPACK_CONNECT, isJetpackConnect);
8891
args.putString(ARG_JETPACK_CONNECT_SOURCE, jetpackConnectSource);
92+
args.putBoolean(ARG_VERIFY_MAGIC_LINK_EMAIL, verifyEmail);
8993
fragment.setArguments(args);
9094
return fragment;
9195
}
@@ -110,6 +114,7 @@ public void onCreate(Bundle savedInstanceState) {
110114
mMagicLinkScheme = (AuthEmailPayloadScheme) getArguments().getSerializable(ARG_MAGIC_LINK_SCHEME);
111115
mIsJetpackConnect = getArguments().getBoolean(ARG_IS_JETPACK_CONNECT);
112116
mJetpackConnectSource = getArguments().getString(ARG_JETPACK_CONNECT_SOURCE);
117+
mVerifyMagicLinkEmail = getArguments().getBoolean(ARG_VERIFY_MAGIC_LINK_EMAIL);
113118
}
114119

115120
setHasOptionsMenu(true);
@@ -148,7 +153,7 @@ public void onClick(View v) {
148153
ImageView avatarView = view.findViewById(R.id.gravatar);
149154

150155
// Design changes added to the Woo Magic link sign-in
151-
if (mLoginListener.getLoginMode() == LoginMode.WOO_LOGIN_MODE) {
156+
if (mVerifyMagicLinkEmail) {
152157
View avatarContainerView = view.findViewById(R.id.avatar_container);
153158

154159
LayoutParams lp = avatarContainerView.getLayoutParams();
@@ -162,6 +167,8 @@ public void onClick(View v) {
162167
TextView labelTextView = view.findViewById(R.id.label);
163168
labelTextView.setText(Html.fromHtml(String.format(getResources().getString(
164169
R.string.login_site_credentials_magic_link_label), mEmail)));
170+
171+
mRequestMagicLinkButton.setText(getString(R.string.send_verification_email));
165172
} else {
166173
Glide.with(this)
167174
.load(GravatarUtils.gravatarFromEmail(mEmail,

WordPressLoginFlow/src/main/java/org/wordpress/android/login/LoginUsernamePasswordFragment.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -569,7 +569,7 @@ public void onSiteChanged(OnSiteChanged event) {
569569
lastAddedXMLRPCSite.getXmlRpcUrl(), lastAddedXMLRPCSite.getUsername(),
570570
lastAddedXMLRPCSite.getPassword(), mAccountStore.getAccount().getAvatarUrl());
571571
} else {
572-
mLoginListener.gotWpcomEmail(userEmail);
572+
mLoginListener.gotWpcomEmail(userEmail, true);
573573
}
574574
} else {
575575
// Initiate the wp.getOptions endpoint to fetch the jetpack user email

WordPressLoginFlow/src/main/java/org/wordpress/android/login/SignupEmailFragment.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -271,7 +271,7 @@ public void onAvailabilityChecked(OnAvailabilityChecked event) {
271271
} else {
272272
mAnalyticsListener.trackSignupEmailToLogin();
273273
mLoginListener.showSignupToLoginMessage();
274-
mLoginListener.gotWpcomEmail(event.value);
274+
mLoginListener.gotWpcomEmail(event.value, false);
275275
// Kill connections with FluxC and this fragment since the flow is changing to login.
276276
mDispatcher.unregister(this);
277277
getActivity().getSupportFragmentManager().beginTransaction().remove(this).commit();

WordPressLoginFlow/src/main/res/values/strings.xml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
<string name="verification_code">Verification code</string>
55
<string name="invalid_verification_code">Invalid verification code</string>
66
<string name="send_link">Send link</string>
7+
<string name="send_verification_email">Send verification email</string>
78
<string name="enter_your_password_instead">Enter your password instead</string>
89
<string name="username">Username</string>
910
<string name="password">Password</string>

0 commit comments

Comments
 (0)