diff --git a/services/web/frontend/extracted-translations.json b/services/web/frontend/extracted-translations.json index dd5f3eb6b3..9e286c5900 100644 --- a/services/web/frontend/extracted-translations.json +++ b/services/web/frontend/extracted-translations.json @@ -50,6 +50,7 @@ "access_denied": "", "access_edit_your_projects": "", "access_levels_changed": "", + "account_associated_with_x": "", "account_billed_manually": "", "account_has_been_link_to_group_account": "", "account_has_been_link_to_institution_account": "", @@ -241,6 +242,7 @@ "center": "", "change": "", "change_currency": "", + "change_email_address": "", "change_how_you_see_the_editor": "", "change_language": "", "change_or_cancel-cancel": "", @@ -257,7 +259,6 @@ "change_the_ownership_of_your_personal_projects": "", "change_to_group_plan": "", "change_to_this_plan": "", - "change_your_email": "", "changing_the_position_of_your_figure": "", "changing_the_position_of_your_table": "", "characters": "", @@ -842,6 +843,7 @@ "i_want_to_add_a_po_number": "", "i_want_to_stay": "", "id": "", + "if_personal_account_you_should_change_your_email_address": "", "if_you_find_any_issues_with_texlive": "", "if_you_need_to_customize_your_table_further_you_can": "", "if_you_need_to_delete_your_writefull_account": "", @@ -933,13 +935,14 @@ "it_looks_like_your_account_is_billed_manually_purchasing_additional_license_or_upgrading_subscription": "", "it_looks_like_your_payment_details_are_missing_please_update_your_billing_information": "", "italics": "", - "join": "", "join_beta_program": "", + "join_group": "", "join_now": "", "join_overleaf_labs": "", "join_project": "", "join_team_explanation": "", "join_x_enterprise_group": "", + "join_x_managed_enterprise_group": "", "joined_team": "", "joining": "", "jump_to_location_in_pdf": "", @@ -1224,7 +1227,6 @@ "optional": "", "or": "", "organization_name": "", - "organization_x_has_an_enterprise_license": "", "organize_tags": "", "other": "", "other_logs_and_files": "", @@ -1425,7 +1427,6 @@ "reactivating": "", "read_lines_from_path": "", "read_more": "", - "read_more_about_managed_users": "", "read_more_about_the_new_editor": "", "read_more_about_the_new_editor_or_explore_our_documentation_for_tips_and_tricks": "", "read_only_dropbox_sync_message": "", @@ -1489,7 +1490,7 @@ "remove_sso_login_option": "", "remove_tag": "", "remove_user": "", - "remove_your_company_email": "", + "remove_your_organization_email_from_this_account": "", "removed_from_project": "", "removing": "", "rename": "", @@ -1829,7 +1830,6 @@ "switch_to_new_editor_design": "", "switch_to_new_look": "", "switch_to_pdf": "", - "switch_to_personal_email_to_keep_your_accounts_separate": "", "switch_to_standard_plan": "", "symbol": "", "symbol_palette": "", @@ -2068,6 +2068,7 @@ "uncategorized_projects": "", "unconfirmed": "", "undelete": "", + "understand_managed_user_accounts": "", "understanding_labels": "", "undo": "", "unfold_line": "", @@ -2261,11 +2262,9 @@ "you_are_a_manager_of_publisher_x": "", "you_are_a_manager_of_x_plan_as_member_of_group_subscription_y_administered_by_z": "", "you_are_a_manager_of_x_plan_as_member_of_group_subscription_y_administered_by_z_you": "", - "you_are_currently_signed_in_as_x": "", "you_are_on_a_paid_plan_contact_support_to_find_out_more": "", "you_are_on_x_plan_as_a_confirmed_member_of_institution_y": "", "you_are_on_x_plan_as_member_of_group_subscription_y_administered_by_z": "", - "you_are_using_your_organization_email_x_would_like_you_to_take_action": "", "you_can_also_choose_to_view_anonymously_or_leave_the_project": "", "you_can_also_right_click_a_file_to_set_it_as_main": "", "you_can_buy_this_plan_but_not_as_a_trial": "", @@ -2293,7 +2292,6 @@ "you_need_to_configure_your_sso_settings": "", "you_unpaused_your_subscription": "", "you_will_be_able_to_reassign_subscription": "", - "youll_continue_to_have_access_to_all_of_your_projects": "", "youll_get_best_results_in_visual_but_can_be_used_in_source": "", "youll_need_to_ask_the_github_repository_owner": "", "youll_no_longer_need_to_remember_credentials": "", @@ -2346,6 +2344,7 @@ "youre_not_eligible_for_a_free_trial": "", "youre_on_free_trial_which_ends_on": "", "youre_signed_in_as_logout": "", + "youre_signed_in_using_your_organization_email": "", "youve_added_more_licenses": "", "youve_added_x_more_licenses_to_your_subscription_invite_people": "", "youve_hit_the_usage_limit": "", diff --git a/services/web/frontend/js/features/project-list/components/notifications/groups/institution.tsx b/services/web/frontend/js/features/project-list/components/notifications/groups/institution.tsx index 5dfab49252..4e8bb01bd9 100644 --- a/services/web/frontend/js/features/project-list/components/notifications/groups/institution.tsx +++ b/services/web/frontend/js/features/project-list/components/notifications/groups/institution.tsx @@ -125,7 +125,7 @@ function Institution() { href="/learn/how-to/Understanding_Managed_Overleaf_Accounts" target="_blank" > - {t('read_more_about_managed_users')} + {t('understand_managed_user_accounts')} } diff --git a/services/web/locales/en.json b/services/web/locales/en.json index 00d6b404db..d61f4633b6 100644 --- a/services/web/locales/en.json +++ b/services/web/locales/en.json @@ -55,6 +55,7 @@ "access_levels_changed": "Access levels changed", "account": "Account", "account_already_managed": "Your account is already managed.", + "account_associated_with_x": "Your account is associated with __companyName__.", "account_billed_manually": "Account billed manually", "account_has_been_link_to_group_account": "Your __appName__ account on __email__ has been linked to your __institutionName__ account.", "account_has_been_link_to_institution_account": "Your __appName__ account on __email__ has been linked to your __institutionName__ institutional account.", @@ -62,7 +63,7 @@ "account_help": "Account and help", "account_linking": "Account linking", "account_managed_by_group_administrator": "Your account is managed by your group administrator (__admin__)", - "account_managed_by_group_teamname": "Your __appName__ account on <0>__email__ is managed by <0>__teamName__.", + "account_managed_by_group_teamname": "This __appName__ account is managed by <0>__teamName__.", "account_not_linked_to_dropbox": "Your account is not linked to Dropbox", "account_settings": "Account settings", "account_with_email_exists": "It looks like an __appName__ account with the email __email__ already exists.", @@ -307,6 +308,7 @@ "certificate": "Certificate", "change": "Change", "change_currency": "Change currency", + "change_email_address": "Change email address", "change_how_you_see_the_editor": "Change how you see the editor using the updated Appearance settings.", "change_language": "Change language", "change_or_cancel-cancel": "cancel", @@ -323,7 +325,6 @@ "change_the_ownership_of_your_personal_projects": "Change the ownership of your personal projects to the new account. <0>Find out how to change project owner.", "change_to_group_plan": "Change to a group plan", "change_to_this_plan": "Change to this plan", - "change_your_email": "Change your email", "changing_the_position_of_your_figure": "Changing the position of your figure", "changing_the_position_of_your_table": "Changing the position of your table", "characters": "Characters", @@ -1069,6 +1070,7 @@ "id": "ID", "if_have_existing_can_link": "If you have an existing __appName__ account on another email, you can link it to your __institutionName__ account by clicking __clickText__.", "if_owner_can_link": "If you own the __appName__ account with __email__, you will be allowed to link it to your __institutionName__ institutional account.", + "if_personal_account_you_should_change_your_email_address": "If this is a personal __appName__ account, you should change your email address to keep ownership of your personal projects.", "if_theres_an_account_youll_get_reset_email": "If there’s an account for __email__, you’ll get an email with reset instructions.", "if_you_find_any_issues_with_texlive": "If you find any issues with TeX Live, packages, or compilation, please <0>provide feedback. If you hit problems, you can <1>switch your compiler.", "if_you_need_to_customize_your_table_further_you_can": "If you need to customize your table further, you can. Using LaTeX code, you can change anything from table styles and border styles to colors and column widths. <0>Read our guide to using tables in LaTeX to help you get started.", @@ -1194,8 +1196,8 @@ "italics": "Italics", "ja": "Japanese", "january": "January", - "join": "Join", "join_beta_program": "Join the beta program", + "join_group": "Join group", "join_labs": "Join Labs", "join_now": "Join now", "join_overleaf_labs": "Join Overleaf Labs", @@ -1203,6 +1205,7 @@ "join_sl_to_view_project": "Join __appName__ to view this project", "join_team_explanation": "Please click the button below to join the group subscription and enjoy the benefits of an upgraded __appName__ account", "join_x_enterprise_group": "Join __companyName__ enterprise group", + "join_x_managed_enterprise_group": "Join __companyName__ managed enterprise group", "joined_team": "You have joined the group subscription managed by __inviterName__", "joining": "Joining", "july": "July", @@ -1592,7 +1595,6 @@ "organization_name": "Organization name", "organization_or_company_name": "Organization or company name", "organization_or_company_type": "Organization or company type", - "organization_x_has_an_enterprise_license": "Your organization __companyName__ now has an Overleaf enterprise license", "organize_tags": "Organize Tags", "original_price": "Original price", "other": "Other", @@ -1845,7 +1847,6 @@ "reactivating": "Reactivating", "read_lines_from_path": "Read lines from __path__", "read_more": "Read more", - "read_more_about_managed_users": "Read more about managed users", "read_more_about_the_new_editor": "<0>Read more about the new editor design, or temporarily switch back to the old editor using the <1>Appearance settings.", "read_more_about_the_new_editor_or_explore_our_documentation_for_tips_and_tricks": "<0>Read more about the new editor, or <1>explore our documentation for tips and tricks.", "read_only_dropbox_sync_message": "As a read-only viewer you can sync the current project version to Dropbox, but changes made in Dropbox will <0>not sync back to Overleaf.", @@ -1926,7 +1927,7 @@ "remove_sso_login_option": "Remove the SSO login option for your users.", "remove_tag": "Remove tag __tagName__", "remove_user": "Remove user", - "remove_your_company_email": "Remove your company email from your personal account", + "remove_your_organization_email_from_this_account": "Remove your organization email address from this account", "removed": "removed", "removed_from_project": "Removed from project", "removing": "Removing", @@ -2304,7 +2305,7 @@ "subscription_will_remain_active_until_end_of_billing_period_x": "Your subscription will remain active until the end of your billing period, <0>__terminationDate__.", "subscription_will_remain_active_until_end_of_trial_period_x": "Your subscription will remain active until the end of your trial period, <0>__terminationDate__.", "success_sso_set_up": "Success! Single sign-on is all set up for you.", - "success_youve_successfully_joined_group": "Success! You’ve joined the <0>__groupName__ group subscription. Your group has SSO enabled.", + "success_youve_successfully_joined_group": "You’ve joined the <0>__groupName__ group. SSO is enabled.", "suggest_a_different_fix": "Suggest a different fix", "suggest_edits": "Suggest edits", "suggest_fix": "Suggest fix", @@ -2330,7 +2331,6 @@ "switch_to_new_editor_design": "Switch to new editor design", "switch_to_new_look": "Switch to new look", "switch_to_pdf": "Switch to PDF", - "switch_to_personal_email_to_keep_your_accounts_separate": "Switch to a personal email to keep your accounts separate.", "switch_to_standard_plan": "Switch to Standard plan", "symbol": "Symbol", "symbol_palette": "Symbol palette", @@ -2605,6 +2605,7 @@ "uncategorized_projects": "Uncategorized Projects", "unconfirmed": "Unconfirmed", "undelete": "Undelete", + "understand_managed_user_accounts": "Understand managed user accounts", "understanding_labels": "Understanding labels", "undo": "Undo", "unfold_line": "Unfold line", @@ -2822,11 +2823,9 @@ "you_are_a_manager_of_x_plan_as_member_of_group_subscription_y_administered_by_z": "You are a <1>manager of the <0>__planName__ group subscription <1>__groupName__ administered by <1>__adminEmail__.", "you_are_a_manager_of_x_plan_as_member_of_group_subscription_y_administered_by_z_you": "You are a <1>manager of the <0>__planName__ group subscription <1>__groupName__ administered by <1>you (__adminEmail__).", "you_are_currently_logged_in_as": "You are currently logged in as __email__.", - "you_are_currently_signed_in_as_x": "You are currently signed in as <0>__email__.", "you_are_on_a_paid_plan_contact_support_to_find_out_more": "You’re on an __appName__ Paid plan. <0>Contact Support to find out more.", "you_are_on_x_plan_as_a_confirmed_member_of_institution_y": "You are on our <0>__planName__ plan as a <1>confirmed member of <1>__institutionName__", "you_are_on_x_plan_as_member_of_group_subscription_y_administered_by_z": "You are on our <0>__planName__ plan as a <1>member of the group subscription <1>__groupName__ administered by <1>__adminEmail__", - "you_are_using_your_organization_email_x_would_like_you_to_take_action": "Because you are using your organization email on Overleaf, __companyName__ would like you to take one of the following actions.", "you_can_also_choose_to_view_anonymously_or_leave_the_project": "You can also choose to <0>view anonymously (you will lose edit access) or <1>leave the project.", "you_can_also_right_click_a_file_to_set_it_as_main": "You can also right-click a file to set it as main.", "you_can_buy_this_plan_but_not_as_a_trial": "You can buy this plan but not as a trial, as you’ve completed a trial before.", @@ -2858,7 +2857,6 @@ "you_unpaused_your_subscription": "You unpaused your subscription.", "you_will_be_able_to_contact_us_any_time_to_share_your_feedback": "<0>You will be able to contact us any time to share your feedback", "you_will_be_able_to_reassign_subscription": "You will be able to reassign their subscription membership to another person in your organization", - "youll_continue_to_have_access_to_all_of_your_projects": "You’ll continue to have access to all of your projects.", "youll_get_best_results_in_visual_but_can_be_used_in_source": "You’ll get the best results from using this tool in the <0>Visual Editor, although you can still use it to insert tables in the <1>Code Editor. Once you’ve selected the number of rows and columns you need, the table will appear in your document and you can double click in a cell to add contents to it.", "youll_need_to_ask_the_github_repository_owner": "You’ll need to ask the GitHub repository owner (<0>__repoOwnerEmail__) to reconnect the project.", "youll_no_longer_need_to_remember_credentials": "You’ll no longer need to remember a separate email address and password. Instead, you will use single-sign on to login to Overleaf. <0>Read more about SSO.", @@ -2916,6 +2914,7 @@ "youre_not_eligible_for_a_free_trial": "You’re not eligible for a free trial. Upgrade to start using premium features.", "youre_on_free_trial_which_ends_on": "You’re on a free trial which ends on <0>__date__.", "youre_signed_in_as_logout": "You’re signed in as <0>__email__. <1>Log out.", + "youre_signed_in_using_your_organization_email": "You’re signed in using your organization email <0>__email__. This means you need to take one of the following actions.", "youre_signed_up": "You’re signed up", "youve_added_more_licenses": "You’ve added more license(s)!", "youve_added_x_more_licenses_to_your_subscription_invite_people": "You’ve added __users__ more license(s) to your subscription. <0>Invite people.", diff --git a/services/web/test/frontend/features/group-management/components/domain-capture.spec.tsx b/services/web/test/frontend/features/group-management/components/domain-capture.spec.tsx index cf70e85984..90f6e61863 100644 --- a/services/web/test/frontend/features/group-management/components/domain-capture.spec.tsx +++ b/services/web/test/frontend/features/group-management/components/domain-capture.spec.tsx @@ -20,6 +20,7 @@ describe('', function () { 'ol-notificationsInstitution', this.notificationsInstitution ) + win.metaAttributesCache.set('ol-managedUsersEnabled', false) }) cy.mount() @@ -28,7 +29,7 @@ describe('', function () { it('renders the heading', function () { cy.findByRole('heading', { name: new RegExp( - `your organization ${this.groupName} now has an Overleaf enterprise license`, + `your account is associated with ${this.groupName}`, 'i' ), }) @@ -39,43 +40,65 @@ describe('', function () { .invoke('text') .should( 'match', - new RegExp(`you are currently signed in as ${this.email}`, 'i') + new RegExp( + `you’re signed in using your organization email ${this.email}. ` + + 'this means you need to take one of the following actions', + 'i' + ) ) - cy.findByText( - new RegExp( - `because you are using your organization email on Overleaf, ${this.groupName} would like you to take one of the following actions`, - 'i' - ) - ) }) - it('renders the join group card', function () { - cy.findByTestId('domain-capture-join-card').within(() => { - cy.findByRole('heading', { - name: new RegExp(`join ${this.groupName} enterprise group`, 'i'), + describe('join group card', function () { + describe('title', function () { + it('renders with managed users disabled', function () { + cy.findByTestId('domain-capture-join-card').within(() => { + cy.findByRole('heading', { + name: new RegExp(`join ${this.groupName} enterprise group`, 'i'), + }) + }) + }) + + it('renders with managed users enabled', function () { + cy.window().then(win => { + win.metaAttributesCache.set('ol-managedUsersEnabled', true) + }) + + cy.mount() + + cy.findByTestId('domain-capture-join-card').within(() => { + cy.findByRole('heading', { + name: new RegExp( + `join ${this.groupName} managed enterprise group`, + 'i' + ), + }) + }) + }) + }) + + it('renders the body', function () { + cy.findByTestId('domain-capture-join-card').within(() => { + cy.findByText( + /get access to enterprise features and benefits provided by your organization/i + ) + cy.findByRole('link', { name: /join group/i }).should( + 'have.attr', + 'href', + this.ssoInitPath + ) }) - cy.findByText( - /get access to enterprise features and benefits provided by your organization/i - ) - cy.findByText(/you’ll continue to have access to all of your projects/i) - cy.findByRole('link', { name: /join/i }).should( - 'have.attr', - 'href', - this.ssoInitPath - ) }) }) it('renders the remove company email card', function () { cy.findByTestId('domain-capture-remove-email-card').within(() => { cy.findByRole('heading', { - name: /remove your company email from your personal account/i, + name: /remove your organization email address from this account/i, }) cy.findByText( - /switch to a personal email to keep your accounts separate/i + /if this is a personal .* account, you should change your email address to keep ownership of your personal projects/i ) - cy.findByText(/you’ll continue to have access to all of your projects/i) - cy.findByRole('link', { name: /change your email/i }).should( + cy.findByRole('link', { name: /change email address/i }).should( 'have.attr', 'href', '/user/settings' diff --git a/services/web/test/frontend/features/project-list/components/notifications.test.tsx b/services/web/test/frontend/features/project-list/components/notifications.test.tsx index 5d595f4156..8db12d23e6 100644 --- a/services/web/test/frontend/features/project-list/components/notifications.test.tsx +++ b/services/web/test/frontend/features/project-list/components/notifications.test.tsx @@ -1105,7 +1105,7 @@ describe('', function () { renderWithinProjectListProvider(GroupSsoSetupSuccess) const alert = screen.getByRole('alert') expect(alert.textContent).to.contain( - `Success! You’ve joined the ${groupName} group subscription. Your group has SSO enabled.` + `You’ve joined the ${groupName} group. SSO is enabled.` ) }) })