diff --git a/app/frontend/src/components/base/BaseFilter.vue b/app/frontend/src/components/base/BaseFilter.vue index ed6519895..fedc171a4 100644 --- a/app/frontend/src/components/base/BaseFilter.vue +++ b/app/frontend/src/components/base/BaseFilter.vue @@ -62,7 +62,7 @@ const inputFilter = ref(''); const inputFilterPlaceholder = properties.inputFilterPlaceholder || t('trans.baseFilter.exampleText2'); const inputSaveButtonText = - properties.inputFilterPlaceholder || t('trans.baseFilter.filter'); + properties.inputSaveButtonText || t('trans.baseFilter.filter'); const selectedData = ref([]); const { isRTL } = storeToRefs(useFormStore()); diff --git a/app/frontend/src/components/designer/FormViewer.vue b/app/frontend/src/components/designer/FormViewer.vue index 102436eff..74ddcc4c4 100644 --- a/app/frontend/src/components/designer/FormViewer.vue +++ b/app/frontend/src/components/designer/FormViewer.vue @@ -115,6 +115,7 @@ export default { submissionRecord: {}, version: 0, versionIdToSubmitTo: this.versionId, + isAuthorized: true, }; }, computed: { @@ -130,6 +131,9 @@ export default { formScheduleExpireMessage() { return this.$t('trans.formViewer.formScheduleExpireMessage'); }, + formUnauthorizedMessage() { + return this.$t('trans.formViewer.formUnauthorizedMessage'); + }, NOTIFICATIONS_TYPES() { return NotificationTypes; }, @@ -190,7 +194,6 @@ export default { this.showModal = true; await this.getFormSchema(); } - window.addEventListener('beforeunload', this.beforeWindowUnload); this.reRenderFormIo += 1; @@ -403,19 +406,22 @@ export default { } } catch (error) { if (this.authenticated) { - this.isFormScheduleExpired = true; - this.isLateSubmissionAllowed = false; - this.formScheduleExpireMessage = error.message; - this.addNotification({ - text: this.$t('trans.formViewer.fecthingFormErrMsg'), - consoleError: this.$t( - 'trans.formViewer.fecthingFormConsoleErrMsg', - { - versionId: this.versionId, - error: error, - } - ), - }); + // if 401 error, the user is not authorized to view the form + if (error.response && error.response.status === 401) { + this.isAuthorized = false; + } else { + // throw a generic error message + this.addNotification({ + text: this.$t('trans.formViewer.fecthingFormErrMsg'), + consoleError: this.$t( + 'trans.formViewer.fecthingFormConsoleErrMsg', + { + versionId: this.versionId, + error: error, + } + ), + }); + } } } }, @@ -1144,7 +1150,18 @@ export default {