-import { mapActions, mapState } from 'pinia';
+
diff --git a/app/frontend/src/components/forms/PrintOptions.vue b/app/frontend/src/components/forms/PrintOptions.vue
index 718decbf2..e6b0c4d46 100644
--- a/app/frontend/src/components/forms/PrintOptions.vue
+++ b/app/frontend/src/components/forms/PrintOptions.vue
@@ -1,360 +1,339 @@
-
@@ -487,6 +466,7 @@ export default {
value="upload"
>
-import { mapState } from 'pinia';
+
diff --git a/app/frontend/src/components/forms/SubmissionsTable.vue b/app/frontend/src/components/forms/SubmissionsTable.vue
index 64ba3e9a8..4cc954038 100644
--- a/app/frontend/src/components/forms/SubmissionsTable.vue
+++ b/app/frontend/src/components/forms/SubmissionsTable.vue
@@ -1,8 +1,8 @@
-
@@ -687,7 +691,7 @@ export default {
hover
:items-length="totalSubmissions"
class="submissions-table"
- :items-per-page="itemsPerPage"
+ :items-per-page="itemsPP"
:headers="HEADERS"
item-value="submissionId"
:items="serverItems"
diff --git a/app/frontend/src/components/forms/manage/DocumentTemplate.vue b/app/frontend/src/components/forms/manage/DocumentTemplate.vue
index fa1f8d21a..a15b0ce28 100644
--- a/app/frontend/src/components/forms/manage/DocumentTemplate.vue
+++ b/app/frontend/src/components/forms/manage/DocumentTemplate.vue
@@ -27,6 +27,7 @@ const headers = ref([
const loading = ref(true);
const isFileInputEmpty = ref(true);
const isValidFile = ref(true);
+const isValidSize = ref(true);
const techdocsLinkTemplateUpload = ref(
'https://developer.gov.bc.ca/docs/default/component/chefs-techdocs/Capabilities/Functionalities/CDOGS-Template-Upload/'
);
@@ -38,6 +39,7 @@ const notificationStore = useNotificationStore();
const { form, isRTL } = storeToRefs(useFormStore());
const validationRules = computed(() => [
+ isValidSize.value || t('trans.documentTemplate.fileSizeError'),
isValidFile.value || t('trans.documentTemplate.invalidFileMessage'),
]);
@@ -83,6 +85,15 @@ function handleFileInput(event) {
if (event && event.length > 0) {
isFileInputEmpty.value = false;
uploadedFile = event[0];
+
+ // validate file size
+ if (uploadedFile.size > 25000000) {
+ isValidSize.value = false;
+ } else {
+ isValidSize.value = true;
+ }
+
+ // validate file extension
const fileExtension = event[0].name.split('.').pop();
if (validFileExtensions.includes(fileExtension)) {
isValidFile.value = true;
@@ -92,6 +103,7 @@ function handleFileInput(event) {
} else {
isFileInputEmpty.value = true;
isValidFile.value = true;
+ isValidSize.value = true;
}
}
@@ -120,12 +132,21 @@ async function handleFileUpload() {
...NotificationTypes.SUCCESS,
});
} catch (e) {
- notificationStore.addNotification({
- text: t('trans.documentTemplate.uploadError'),
- consoleError: t('trans.documentTemplate.uploadError', {
- error: e.message,
- }),
- });
+ if (e.response.status === 413) {
+ notificationStore.addNotification({
+ text: t('trans.documentTemplate.fileSizeError'),
+ consoleError: t('trans.documentTemplate.fileSizeError', {
+ error: e.message,
+ }),
+ });
+ } else {
+ notificationStore.addNotification({
+ text: t('trans.documentTemplate.uploadError'),
+ consoleError: t('trans.documentTemplate.uploadError', {
+ error: e.message,
+ }),
+ });
+ }
} finally {
loading.value = false;
}
@@ -196,6 +217,7 @@ defineExpose({
handleFileInput,
isFileInputEmpty,
isValidFile,
+ isValidSize,
uploadedFile,
});
@@ -322,7 +344,10 @@ defineExpose({
diff --git a/app/frontend/src/components/forms/submission/StatusPanel.vue b/app/frontend/src/components/forms/submission/StatusPanel.vue
index 9f3e824f3..c5075b3ea 100644
--- a/app/frontend/src/components/forms/submission/StatusPanel.vue
+++ b/app/frontend/src/components/forms/submission/StatusPanel.vue
@@ -1,6 +1,6 @@
@@ -428,14 +517,46 @@ defineExpose({
- {{
+ $t('trans.statusPanel.recipientEmail')
+ }}
+
+
+
+
+
+
+
+
+
+
+
+
@@ -553,13 +674,12 @@ defineExpose({
margin: 0;
}
-@media (max-width: 959px) {
+@media (max-width: 1279px) {
.hide-on-narrow {
display: none;
}
}
-
-@media (min-width: 960px) {
+@media (min-width: 1280px) {
.hide-on-wide {
display: none;
}
diff --git a/app/frontend/src/components/infolinks/GeneralLayout.vue b/app/frontend/src/components/infolinks/GeneralLayout.vue
index 10284a5f4..002279cd9 100644
--- a/app/frontend/src/components/infolinks/GeneralLayout.vue
+++ b/app/frontend/src/components/infolinks/GeneralLayout.vue
@@ -1,138 +1,144 @@
-
@@ -143,7 +149,7 @@ export default {
hide-default-header
hide-default-footer
disable-pagination
- :items="layoutList"
+ :items="formComponentNames"
:loading="loading"
:loading-text="$t('trans.generalLayout.loadingText')"
:lang="locale"
@@ -164,7 +170,7 @@ export default {
size="small"
variant="text"
:title="$t('trans.generalLayout.edit')"
- @click="onOpenDialog(item.componentName)"
+ @click="onOpenEditDialog(item.componentName)"
>
@@ -195,55 +201,45 @@ export default {
-
-
- {{
- publish[index]
- ? $t('trans.generalLayout.published')
- : $t('trans.generalLayout.unpublished')
- }}
-
+
+ {{
+ publish[index]
+ ? $t('trans.generalLayout.published')
+ : $t('trans.generalLayout.unpublished')
+ }}
+
+