diff --git a/dashboard/src/components/AppInstallDialog.vue b/dashboard/src/components/AppInstallDialog.vue
index 8128b3052..d791c9afc 100644
--- a/dashboard/src/components/AppInstallDialog.vue
+++ b/dashboard/src/components/AppInstallDialog.vue
@@ -177,6 +177,10 @@ defineExpose({
domainProvider.value = '';
upstreamUri.value = '';
+ domainList.forEach(d => {
+ d.label = '@' + d.domain;
+ });
+
domains.value = domainList;
// preselect with dashboard domain
@@ -250,7 +254,7 @@ defineExpose({
-
+
{{ formError.location }}
@@ -262,7 +266,7 @@ defineExpose({
{{ port.description }}
-
+
diff --git a/dashboard/src/components/MailboxDialog.vue b/dashboard/src/components/MailboxDialog.vue
index c9b8a0acd..deaaa978f 100644
--- a/dashboard/src/components/MailboxDialog.vue
+++ b/dashboard/src/components/MailboxDialog.vue
@@ -24,11 +24,12 @@ const storageQuotaTicks = [ 500*1000*1000, 5*1000*1000*1000, 15*1000*1000*1000,
const storageQuota = ref(5*1000*1000*1000);
const active = ref(false);
const enablePop3 = ref(false);
+const domainList = ref([]);
function onAddAlias() {
aliases.value.push({
name: '',
- domain: props.domains[0].domain,
+ domain: '@' + props.domains[0].domain,
});
}
@@ -98,6 +99,13 @@ defineExpose({
u.name = u.name || u.username || u.label || u.fqdn;
});
+ domainList.value = props.domains.map(d => {
+ return {
+ domain: d.domain,
+ label: '@' + d.domain,
+ };
+ });
+
dialog.value.open();
}
});
@@ -125,8 +133,7 @@ defineExpose({
- @
-
+
{{ formError }}
@@ -154,8 +161,7 @@ defineExpose({
diff --git a/dashboard/src/components/MailinglistDialog.vue b/dashboard/src/components/MailinglistDialog.vue
index f3fbed6e8..6875d810f 100644
--- a/dashboard/src/components/MailinglistDialog.vue
+++ b/dashboard/src/components/MailinglistDialog.vue
@@ -18,6 +18,7 @@ const mailinglist = ref(null);
const membersText = ref('');
const membersOnly = ref(false);
const active = ref(true);
+const domainList = ref([]);
async function onSubmit() {
busy.value = true;
@@ -66,6 +67,13 @@ defineExpose({
membersOnly.value = m ? m.membersOnly : false;
active.value = m ? m.active : true;
+ domainList.value = props.domains.map(d => {
+ return {
+ domain: d.domain,
+ label: '@' + d.domain,
+ };
+ });
+
dialog.value.open();
}
});
@@ -94,8 +102,7 @@ defineExpose({
- @
-
+
{{ formError.name }}
diff --git a/dashboard/src/components/app/Location.vue b/dashboard/src/components/app/Location.vue
index 4eb4195b2..ea6ac5b6a 100644
--- a/dashboard/src/components/app/Location.vue
+++ b/dashboard/src/components/app/Location.vue
@@ -138,6 +138,10 @@ onMounted(async () => {
const [error, result] = await domainsModel.list();
if (error) return console.error(error);
+ result.forEach(d => {
+ d.label = '@' + d.domain;
+ });
+
domains.value = result;
subdomain.value = props.app.subdomain;
@@ -192,7 +196,7 @@ onMounted(async () => {
-
+
@@ -202,7 +206,7 @@ onMounted(async () => {
{{ item.description }}
-
+
@@ -217,7 +221,7 @@ onMounted(async () => {
-
+
@@ -235,7 +239,7 @@ onMounted(async () => {
-
+
diff --git a/dashboard/src/components/app/Repair.vue b/dashboard/src/components/app/Repair.vue
index 50245e953..4fd77c87a 100644
--- a/dashboard/src/components/app/Repair.vue
+++ b/dashboard/src/components/app/Repair.vue
@@ -85,8 +85,8 @@ onMounted(() => {
{{ $t('app.repair.taskError.description') }}
+
An error occurred during the {{ taskNameFromInstallationState(app.error.details.installationState) }} operation: {{ app.error.reason + ': ' + app.error.message }}
-
An error occurred during the {{ taskNameFromInstallationState(app.error.details.installationState) }} operation: {{ app.error.reason + ': ' + app.error.message }}