diff --git a/dashboard/src/components/DashboardDomain.vue b/dashboard/src/components/DashboardDomain.vue index 208c6b3bc..d34b9e6a6 100644 --- a/dashboard/src/components/DashboardDomain.vue +++ b/dashboard/src/components/DashboardDomain.vue @@ -14,6 +14,8 @@ const taskModel = TasksModel.create(); const domainsModel = DomainsModel.create(); const dashboardModel = DashboardModel.create(); +const formError = ref(''); +const originalDomain = ref(''); const domains = ref([]); const newDomain = ref(''); const lastTask = ref({}); @@ -62,12 +64,20 @@ async function refreshTasks() { } async function onSubmit() { + formError.value = ''; + lastTask.value.active = true; lastTask.value.percent = 0; lastTask.value.message = 'Preparing dashboard domain'; const [error] = await dashboardModel.prepareDomain(newDomain.value); - if (error) return console.error(error); + if (error) { + formError.value = error.body ? error.body.message : 'Internal error'; + lastTask.value = {}; + return; + } + + originalDomain.value = newDomain.value; await refreshTasks(); } @@ -82,6 +92,7 @@ onMounted(async () => { if (error) return console.error(error); newDomain.value = (domains.value.find(d => d.domain === result.adminDomain) || domains.value[0]).domain; + originalDomain.value = (domains.value.find(d => d.domain === result.adminDomain) || domains.value[0]).domain; await refreshTasks(); }); @@ -94,21 +105,23 @@ onMounted(async () => { -