From 7c4617e6ba105b423b615e2b8a250b34b2f4fd4d Mon Sep 17 00:00:00 2001 From: Diogo Castro Date: Wed, 22 Jun 2022 21:33:17 +0200 Subject: [PATCH 1/4] Fix external apps: import make request back into app defaults --- packages/web-app-external/src/App.vue | 10 ++++------ .../src/composables/appDefaults/useAppDefaults.ts | 5 +++-- 2 files changed, 7 insertions(+), 8 deletions(-) diff --git a/packages/web-app-external/src/App.vue b/packages/web-app-external/src/App.vue index f58b64e56f9..37f9b3ecd02 100644 --- a/packages/web-app-external/src/App.vue +++ b/packages/web-app-external/src/App.vue @@ -130,9 +130,7 @@ export default { return } - const data = await response.json() - - if (!data.app_url || !data.method) { + if (!response.data.app_url || !response.data.method) { this.errorMessage = this.$gettext('Error in app server response') this.loading = false this.loadingError = true @@ -140,9 +138,9 @@ export default { return } - this.appUrl = data.app_url - this.method = data.method - if (data.form_parameters) this.formParameters = data.form_parameters + this.appUrl = response.data.app_url + this.method = response.data.method + if (response.data.form_parameters) this.formParameters = response.data.form_parameters if (this.method === 'POST' && this.formParameters) { this.$nextTick(() => this.$refs.subm.click()) diff --git a/packages/web-pkg/src/composables/appDefaults/useAppDefaults.ts b/packages/web-pkg/src/composables/appDefaults/useAppDefaults.ts index 6bda258deb4..fb39d45906c 100644 --- a/packages/web-pkg/src/composables/appDefaults/useAppDefaults.ts +++ b/packages/web-pkg/src/composables/appDefaults/useAppDefaults.ts @@ -15,7 +15,7 @@ import { useAppConfig, AppConfigResult } from './useAppConfig' import { useAppFileHandling, AppFileHandlingResult } from './useAppFileHandling' import { useAppFolderHandling, AppFolderHandlingResult } from './useAppFolderHandling' import { useAppDocumentTitle } from './useAppDocumentTitle' -import { usePublicLinkPassword, usePublicLinkContext } from '../authContext' +import { usePublicLinkPassword, usePublicLinkContext, useRequest } from '../authContext' import { useClientService } from '../clientService' // TODO: this file/folder contains file/folder loading logic extracted from preview and drawio extensions @@ -76,6 +76,7 @@ export function useAppDefaults(options: AppDefaultsOptions): AppDefaultsResult { isPublicLinkContext, publicLinkPassword }), - ...useAppFolderHandling({ clientService, store, isPublicLinkContext, publicLinkPassword }) + ...useAppFolderHandling({ clientService, store, isPublicLinkContext, publicLinkPassword }), + ...useRequest({ clientService, store, currentRoute: unref(currentRoute) }) } } From 83c245630587876031b4a99732bed9d14e6547e6 Mon Sep 17 00:00:00 2001 From: Diogo Castro Date: Wed, 22 Jun 2022 21:33:36 +0200 Subject: [PATCH 2/4] External app name back in the title --- packages/web-app-external/src/App.vue | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/packages/web-app-external/src/App.vue b/packages/web-app-external/src/App.vue index 37f9b3ecd02..2b40a285eaa 100644 --- a/packages/web-app-external/src/App.vue +++ b/packages/web-app-external/src/App.vue @@ -103,6 +103,17 @@ export default { return this.$route.query.fileId } }, + mounted() { + if (this.appName) { + document.title = [ + this.currentFileContext.fileName, + this.appName, + this.configuration.currentTheme.general.name + ] + .filter(Boolean) + .join(' - ') + } + }, async created() { await unauthenticatedUserReady(this.$router, this.$store) From 5421748b258a4e3b1fb2c305d04534ce8c951476 Mon Sep 17 00:00:00 2001 From: Diogo Castro Date: Wed, 22 Jun 2022 21:33:49 +0200 Subject: [PATCH 3/4] changelog --- changelog/unreleased/bugfix-external-apps | 7 +++++++ 1 file changed, 7 insertions(+) create mode 100644 changelog/unreleased/bugfix-external-apps diff --git a/changelog/unreleased/bugfix-external-apps b/changelog/unreleased/bugfix-external-apps new file mode 100644 index 00000000000..7490e72ae45 --- /dev/null +++ b/changelog/unreleased/bugfix-external-apps @@ -0,0 +1,7 @@ +Bugfix: External apps fixes + +Bug introduced in #6870. A method used to communicate with the backend was not properly added to the extension after being moved to a different location. + +(bonus: app name back in the title) + +https://github.com/owncloud/web/pull/7166 From bb5a42eb076a4ac1856fea2fcdd27b64703fe26c Mon Sep 17 00:00:00 2001 From: Diogo Castro Date: Wed, 22 Jun 2022 21:22:47 +0200 Subject: [PATCH 4/4] fix tests --- packages/web-app-external/tests/unit/app.spec.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/web-app-external/tests/unit/app.spec.js b/packages/web-app-external/tests/unit/app.spec.js index 91b3315c953..938a461aaaa 100644 --- a/packages/web-app-external/tests/unit/app.spec.js +++ b/packages/web-app-external/tests/unit/app.spec.js @@ -143,7 +143,7 @@ describe('The app provider extension', () => { Promise.resolve({ ok: true, status: 200, - json: () => providerSuccessResponseGet + data: providerSuccessResponseGet }) ) @@ -158,7 +158,7 @@ describe('The app provider extension', () => { Promise.resolve({ ok: true, status: 200, - json: () => providerSuccessResponsePost + data: providerSuccessResponsePost }) ) const wrapper = createShallowMountWrapper(makeRequest)