From d044899a2884c80fc7be34da5ccddfe1cda5b304 Mon Sep 17 00:00:00 2001 From: Alf Eaton Date: Fri, 7 Jul 2023 07:34:13 +0100 Subject: [PATCH] Merge pull request #13763 from overleaf/revert-13618-tw-reference-manager-access Revert "Tw reference manager access" GitOrigin-RevId: d520234bd125f734037afa5208b4ad09e8f6e124 --- .../web/frontend/extracted-translations.json | 3 +- .../file-view/components/file-view-header.js | 48 ++++--------------- services/web/locales/en.json | 4 +- .../components/file-view-header.test.js | 46 ++---------------- 4 files changed, 14 insertions(+), 87 deletions(-) diff --git a/services/web/frontend/extracted-translations.json b/services/web/frontend/extracted-translations.json index 58d0c942de..14290768b6 100644 --- a/services/web/frontend/extracted-translations.json +++ b/services/web/frontend/extracted-translations.json @@ -15,6 +15,7 @@ "about_to_trash_projects": "", "accept": "", "accepted_invite": "", + "access_denied": "", "account_has_been_link_to_institution_account": "", "account_has_past_due_invoice_change_plan_warning": "", "account_not_linked_to_dropbox": "", @@ -663,7 +664,6 @@ "ok": "", "on": "", "on_free_plan_upgrade_to_access_features": "", - "only_importer_can_refresh": "", "open_project": "", "optional": "", "or": "", @@ -914,7 +914,6 @@ "showing_x_out_of_n_projects": "", "showing_x_results": "", "showing_x_results_of_total": "", - "something_not_right": "", "something_went_wrong_loading_pdf_viewer": "", "something_went_wrong_processing_the_request": "", "something_went_wrong_rendering_pdf": "", diff --git a/services/web/frontend/js/features/file-view/components/file-view-header.js b/services/web/frontend/js/features/file-view/components/file-view-header.js index c124bcdf91..154860390e 100644 --- a/services/web/frontend/js/features/file-view/components/file-view-header.js +++ b/services/web/frontend/js/features/file-view/components/file-view-header.js @@ -7,8 +7,6 @@ import { formatTime, relativeDate } from '../../utils/format-date' import { postJSON } from '../../../infrastructure/fetch-json' import { useEditorContext } from '../../../shared/context/editor-context' import { useProjectContext } from '../../../shared/context/project-context' -import { useUserContext } from '../../../shared/context/user-context' -import { capitalize } from 'lodash' import importOverleafModules from '../../../../macros/import-overleaf-module.macro' import useAbortController from '../../../shared/hooks/use-abort-controller' @@ -42,7 +40,6 @@ export default function FileViewHeader({ file, storeReferencesKeys }) { const { permissionsLevel } = useEditorContext({ permissionsLevel: PropTypes.string, }) - const { id: userId } = useUserContext() const { t } = useTranslation() const [refreshing, setRefreshing] = useState(false) @@ -51,9 +48,7 @@ export default function FileViewHeader({ file, storeReferencesKeys }) { const { signal } = useAbortController() let fileInfo - let isImporter if (file.linkedFileData) { - isImporter = file.linkedFileData.importer_id === userId if (file.linkedFileData.provider === 'url') { fileInfo = (
@@ -122,9 +117,9 @@ export default function FileViewHeader({ file, storeReferencesKeys }) { ))} {file.linkedFileData && permissionsLevel !== 'readOnly' && ( -
+
+ {t('access_denied')}: {refreshError} + {tprLinkedFileRefreshError.map( + ({ import: { LinkedFileRefreshError }, path }) => ( + + ) + )}
)} diff --git a/services/web/locales/en.json b/services/web/locales/en.json index b376b6cabc..e201eb48da 100644 --- a/services/web/locales/en.json +++ b/services/web/locales/en.json @@ -730,7 +730,7 @@ "hundreds_templates_info": "Produce beautiful documents starting from our gallery of LaTeX templates for journals, conferences, theses, reports, CVs and much more.", "i_confirm_that_i_am_a_student": "I confirm that I am a student", "i_want_to_stay": "I want to stay", - "if_error_persists_try_relinking_provider": "It looks like you need to re-link your __provider__ account.", + "if_error_persists_try_relinking_provider": "If this error persists, try re-linking your __provider__ account here", "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.", "ignore_and_continue_institution_linking": "You can also ignore this and continue to __appName__ with your __email__ account.", @@ -1085,7 +1085,6 @@ "one_collaborator": "Only one collaborator", "one_free_collab": "One free collaborator", "online_latex_editor": "Online LaTeX Editor", - "only_importer_can_refresh": "Only the person who originally imported this __provider__ file can refresh it.", "open_a_file_on_the_left": "Open a file on the left", "open_as_template": "Open as Template", "open_project": "Open Project", @@ -1465,7 +1464,6 @@ "skip_to_content": "Skip to content", "sl_gives_you_free_stuff_see_progress_below": "When someone starts using __appName__ after your recommendation we’ll give you some free stuff to say thanks! Check your progress below.", "sl_included_history_of_changes_blurb": "__appName__ includes a history of all of your changes so you can see exactly who changed what, and when. This makes it extremely easy to keep up to date with any progress made by your collaborators and allows you to review recent work.", - "something_not_right": "Something’s not right", "something_went_wrong_canceling_your_subscription": "Something went wrong canceling your subscription. Please contact support.", "something_went_wrong_loading_pdf_viewer": "Something went wrong loading the PDF viewer. This might be caused by issues like <0>temporary network problems or an <0>outdated web browser. Please follow the <1>troubleshooting steps for access, loading and display problems. If the issue persists, please <2>let us know.", "something_went_wrong_processing_the_request": "Something went wrong processing the request", diff --git a/services/web/test/frontend/features/file-view/components/file-view-header.test.js b/services/web/test/frontend/features/file-view/components/file-view-header.test.js index 0973292327..6789462a3d 100644 --- a/services/web/test/frontend/features/file-view/components/file-view-header.test.js +++ b/services/web/test/frontend/features/file-view/components/file-view-header.test.js @@ -27,19 +27,6 @@ describe('', function () { source_project_id: 'source-project-id', source_entity_path: '/source-entity-path.ext', provider: 'project_file', - importer_id: '123abd', - }, - created: new Date(2021, 1, 17, 3, 24).toISOString(), - } - - const notOrignalImporterFile = { - name: 'references.bib', - linkedFileData: { - v1_source_doc_id: 'v1-source-id', - source_project_id: 'source-project-id', - source_entity_path: '/source-entity-path.ext', - provider: 'project_file', - importer_id: '123abc', }, created: new Date(2021, 1, 17, 3, 24).toISOString(), } @@ -58,7 +45,6 @@ describe('', function () { name: 'example.tex', linkedFileData: { provider: 'zotero', - importer_id: '123abd', }, created: new Date(2021, 1, 17, 3, 24).toISOString(), } @@ -117,13 +103,11 @@ describe('', function () { {}} /> ) - const refreshButton = screen.getByRole('button', { name: 'Refresh' }) - fireEvent.click(refreshButton) + fireEvent.click(screen.getByRole('button', { name: 'Refresh' })) await waitForElementToBeRemoved(() => screen.getByText('Refreshing', { exact: false }) ) - await screen.findByText('Refresh') }) @@ -153,38 +137,14 @@ describe('', function () { /> ) - const refreshButton = screen.getByRole('button', { name: 'Refresh' }) - fireEvent.click(refreshButton) + fireEvent.click(screen.getByRole('button', { name: 'Refresh' })) await waitForElementToBeRemoved(() => screen.getByText('Refreshing', { exact: false }) ) expect(fetchMock.done()).to.be.true - expect(storeReferencesKeys).to.have.been.calledWith(reindexResponse.keys) - }) - - it('Displays message when user is not original importer', function () { - renderWithEditorContext( - {}} - /> - ) - - const refreshButton = screen.getByRole('button', { name: 'Refresh' }) - if (refreshButton.disabled) { - const textBefore = screen.getByText( - 'Only the person who originally imported this', - { exact: false } - ) - expect(textBefore).to.exist - - const textAfter = screen.getByText('file can refresh it', { - exact: false, - }) - expect(textAfter).to.exist - } + expect(storeReferencesKeys).to.be.calledWith(reindexResponse.keys) }) })