From b41d6c0e60b5775908ad484ec55d76a3af408a8e Mon Sep 17 00:00:00 2001 From: Favour Olayinka Date: Fri, 22 Mar 2024 12:10:18 +0100 Subject: [PATCH] fix: file size limit for guest pages (#359) --- client/components/open/forms/OpenFormField.vue | 6 +++++- .../open/forms/fields/components/FieldOptions.vue | 2 +- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/client/components/open/forms/OpenFormField.vue b/client/components/open/forms/OpenFormField.vue index c18f442f..71b145fb 100644 --- a/client/components/open/forms/OpenFormField.vue +++ b/client/components/open/forms/OpenFormField.vue @@ -272,7 +272,11 @@ export default { } } else if (field.type === 'files' || (field.type === 'url' && field.file_upload)) { inputProperties.multiple = (field.multiple !== undefined && field.multiple) - inputProperties.mbLimit = Math.min(Math.max(field.max_file_size, 1), this.form?.max_file_size ?? this.currentWorkspace?.max_file_size) + let maxFileSize = (this.form?.workspace && this.form?.workspace.max_file_size) ? this.form?.workspace?.max_file_size : 10 + if (field?.max_file_size > 0) { + maxFileSize = Math.min(field.max_file_size, maxFileSize) + } + inputProperties.mbLimit = maxFileSize inputProperties.accept = (this.form.is_pro && field.allowed_file_types) ? field.allowed_file_types : '' } else if (field.type === 'rating') { inputProperties.numberOfStars = parseInt(field.rating_max_value) ?? 5 diff --git a/client/components/open/forms/fields/components/FieldOptions.vue b/client/components/open/forms/fields/components/FieldOptions.vue index 1916a286..bae8fc2a 100644 --- a/client/components/open/forms/fields/components/FieldOptions.vue +++ b/client/components/open/forms/fields/components/FieldOptions.vue @@ -343,7 +343,7 @@ export default { return !this.typesWithoutPlaceholder.includes(this.field.type) }, mbLimit() { - return this.form?.max_file_size ?? this.currentWorkspace?.max_file_size + return (this.form?.workspace && this.form?.workspace.max_file_size) ? this.form?.workspace?.max_file_size : 10 }, prefillSelectsOptions() { if (!['select', 'multi_select'].includes(this.field.type)) return {}