diff --git a/dashboard/src/views/EmailSettingsView.vue b/dashboard/src/views/EmailSettingsView.vue
index 4a1f3262f..0899d53f5 100644
--- a/dashboard/src/views/EmailSettingsView.vue
+++ b/dashboard/src/views/EmailSettingsView.vue
@@ -105,7 +105,7 @@ async function onChangeFts(value) {
const spamFilterDialog = useTemplateRef('spamFilterDialog');
const spamFilterBusy = ref(false);
-const spamFilterError = ref('');
+const spamFilterError = ref({});
const blocklist = ref([]);
const blocklistString = ref('');
const allowlist = ref([]);
@@ -117,7 +117,7 @@ const blocklistCount = computed(() => {
});
function onShowSpamFilterDialog() {
- spamFilterError.value = '';
+ spamFilterError.value = {};
spamFilterBusy.value = false;
blocklistString.value = blocklist.value.join('\n');
allowlistString.value = allowlist.value.join('\n');
@@ -126,7 +126,7 @@ function onShowSpamFilterDialog() {
}
async function onSubmitSpamFilter() {
- spamFilterError.value = '';
+ spamFilterError.value = {};
spamFilterBusy.value = true;
const block = blocklistString.value.split('\n').filter((l) => { return l !== ''; });
@@ -134,16 +134,16 @@ async function onSubmitSpamFilter() {
let [error] = await mailModel.setSpamAcl(allow, block);
if (error) {
- spamFilterError.value = error.body ? error.body.message : 'Internal error';
+ spamFilterError.value.blocklist = error.body ? error.body.message : 'Internal error';
spamFilterBusy.value = false;
- return console.error(error);
+ return;
}
[error] = await mailModel.setSpamCustomConfig(spamCustomConfig.value);
if (error) {
- spamFilterError.value = error.body ? error.body.message : 'Internal error';
+ spamFilterError.value.config = error.body ? error.body.message : 'Internal error';
spamFilterBusy.value = false;
- return console.error(error);
+ return;
}
spamFilterDialog.value.close();
@@ -215,7 +215,7 @@ onMounted(async () => {
{{ $t('emails.aclDialog.dnsblZonesInfo') }} {{ $t('emails.spamFilterDialog.blacklisteAddressesInfo') }}