diff --git a/cypress/integration/shared/sign_in.shared.ts b/cypress/integration/shared/sign_in.shared.ts
index 2c85e47d3..70b1f21aa 100644
--- a/cypress/integration/shared/sign_in.shared.ts
+++ b/cypress/integration/shared/sign_in.shared.ts
@@ -368,9 +368,9 @@ export const showsAnErrorMessageAndInformationParagraphWhenAccountLinkingRequire
: '/signin?error=accountLinkingRequired';
cy.visit(visitUrl);
cy.contains(
- 'We cannot sign you in with your social account credentials. Please enter your account password below to sign in.',
+ 'We could not sign you in with your social account credentials. Please sign in with your email below.',
);
- cy.contains('Account already exists');
+ cy.contains('Social sign-in unsuccessful');
},
] as const;
};
diff --git a/src/client/pages/SignIn.stories.tsx b/src/client/pages/SignIn.stories.tsx
index 41c5a6cd1..13cf81391 100644
--- a/src/client/pages/SignIn.stories.tsx
+++ b/src/client/pages/SignIn.stories.tsx
@@ -47,7 +47,7 @@ WithPageLevelErrorAndEmail.story = {
export const SocialSigninBlocked = (args: SignInProps) => (
);
@@ -72,7 +72,7 @@ WithFormLevelErrorAndEmail.story = {
export const WithFormLevelErrorAndSocialSigninBlocked = (args: SignInProps) => (
@@ -107,7 +107,7 @@ WithJobs.story = {
export const WithJobsAndSocialSigninBlocked = (args: SignInProps) => (
);
diff --git a/src/client/pages/SignIn.tsx b/src/client/pages/SignIn.tsx
index 18b9e2837..b9450c4fa 100644
--- a/src/client/pages/SignIn.tsx
+++ b/src/client/pages/SignIn.tsx
@@ -56,12 +56,30 @@ const Links = ({ children }: { children: React.ReactNode }) => (
);
-const getErrorContext = (error: string | undefined) => {
- if (error === SignInErrors.ACCOUNT_ALREADY_EXISTS) {
+const getErrorContext = (
+ error: string | undefined,
+ queryParams: QueryParams,
+) => {
+ if (error === SignInErrors.SOCIAL_SIGNIN_ERROR) {
return (
<>
- We cannot sign you in with your social account credentials. Please enter
- your account password below to sign in.
+
+ We could not sign you in with your social account credentials. Please
+ sign in with your email below. If you do not know your password, you
+ can{' '}
+
+ reset it here
+
+ .
+
+
+
+ If you are still having trouble, please contact our customer service
+ team at{' '}
+ {SUPPORT_EMAIL}.
+
>
);
} else if (error === RegistrationErrors.PROVISIONING_FAILURE) {
@@ -113,7 +131,7 @@ export const SignIn = ({
const formTrackingName = 'sign-in';
// The page level error is equivalent to this enum if social signin has been blocked.
- const socialSigninBlocked = pageError === SignInErrors.ACCOUNT_ALREADY_EXISTS;
+ const socialSigninBlocked = pageError === SignInErrors.SOCIAL_SIGNIN_ERROR;
const { clientId } = queryParams;
const isJobs = clientId === 'jobs';
@@ -129,7 +147,7 @@ export const SignIn = ({
return (
{
// show error if account linking required
if (error === FederationErrors.SOCIAL_SIGNIN_BLOCKED) {
- return SignInErrors.ACCOUNT_ALREADY_EXISTS;
+ return SignInErrors.SOCIAL_SIGNIN_ERROR;
}
// Show error if provisioning failed
if (error === RegistrationErrors.PROVISIONING_FAILURE) {
diff --git a/src/shared/model/Errors.ts b/src/shared/model/Errors.ts
index 16836256d..b0ee08eba 100644
--- a/src/shared/model/Errors.ts
+++ b/src/shared/model/Errors.ts
@@ -28,7 +28,7 @@ export enum ResetPasswordErrors {
export enum SignInErrors {
GENERIC = 'There was a problem signing in, please try again.',
AUTHENTICATION_FAILED = "Email and password don't match",
- ACCOUNT_ALREADY_EXISTS = 'Account already exists',
+ SOCIAL_SIGNIN_ERROR = 'Social sign-in unsuccessful',
}
export enum RegistrationErrors {
diff --git a/src/shared/model/OpenIdErrors.ts b/src/shared/model/OpenIdErrors.ts
index ba3cbe29d..af2f9a5b7 100644
--- a/src/shared/model/OpenIdErrors.ts
+++ b/src/shared/model/OpenIdErrors.ts
@@ -17,4 +17,5 @@ export enum OpenIdErrors {
export enum OpenIdErrorDescriptions {
ACCOUNT_LINKING_DENIED_GROUPS = 'User linking was denied because the user is not in any of the specified groups.',
+ USER_STATUS_INVALID = 'User status is invalid.',
}