diff --git a/services/web/frontend/js/features/settings/components/emails/actions/make-primary.tsx b/services/web/frontend/js/features/settings/components/emails/actions/make-primary.tsx index 168a0bc35f..dcbec47dd7 100644 --- a/services/web/frontend/js/features/settings/components/emails/actions/make-primary.tsx +++ b/services/web/frontend/js/features/settings/components/emails/actions/make-primary.tsx @@ -12,6 +12,7 @@ import { } from '../../../context/user-email-context' import { UserEmailData } from '../../../../../../../types/user-email' import { UseAsyncReturnType } from '../../../../../shared/hooks/use-async' +import { ssoAvailableForInstitution } from '../../../utils/sso' const getDescription = ( t: (s: string) => string, @@ -26,8 +27,12 @@ const getDescription = ( return t('make_email_primary_description') } + const ssoAvailable = ssoAvailableForInstitution( + userEmailData.affiliation?.institution + ) + if (!institutionAlreadyLinked(state, userEmailData)) { - return userEmailData.ssoAvailable + return ssoAvailable ? t('please_link_before_making_primary') : t('please_confirm_your_email_before_making_it_default') } diff --git a/services/web/frontend/js/features/settings/components/emails/email.tsx b/services/web/frontend/js/features/settings/components/emails/email.tsx index 63e2d69cea..e227604e92 100644 --- a/services/web/frontend/js/features/settings/components/emails/email.tsx +++ b/services/web/frontend/js/features/settings/components/emails/email.tsx @@ -1,6 +1,7 @@ import { useTranslation } from 'react-i18next' import { UserEmailData } from '../../../../../../types/user-email' import ResendConfirmationEmailButton from './resend-confirmation-email-button' +import { ssoAvailableForInstitution } from '../../utils/sso' type EmailProps = { userEmailData: UserEmailData @@ -9,6 +10,10 @@ type EmailProps = { function Email({ userEmailData }: EmailProps) { const { t } = useTranslation() + const ssoAvailable = ssoAvailableForInstitution( + userEmailData.affiliation?.institution + ) + return ( <> {userEmailData.email} @@ -17,12 +22,10 @@ function Email({ userEmailData }: EmailProps) {
{t('unconfirmed')}. - {!userEmailData.ssoAvailable && ( - {t('please_check_your_inbox')}. - )} + {!ssoAvailable && {t('please_check_your_inbox')}.}
- {!userEmailData.ssoAvailable && ( + {!ssoAvailable && ( )}
diff --git a/services/web/types/user-email.ts b/services/web/types/user-email.ts index fc5328e0e5..f6dc33a00f 100644 --- a/services/web/types/user-email.ts +++ b/services/web/types/user-email.ts @@ -6,6 +6,5 @@ export type UserEmailData = { email: string default: boolean samlProviderId?: string - ssoAvailable?: boolean emailHasInstitutionLicence?: boolean }