diff --git a/ui/public/locales/en.json b/ui/public/locales/en.json
index c36b96cc961..79ea9bb9d8f 100644
--- a/ui/public/locales/en.json
+++ b/ui/public/locales/en.json
@@ -3168,6 +3168,7 @@
"message.error.sbdomain.username": "Please enter SMB domain username.",
"message.error.secret.key": "Please enter secret key.",
"message.error.select": "Please select option.",
+"message.error.select.account.to.dedicate": "Please select an account to dedicate to.",
"message.error.select.domain.to.dedicate": "Please select domain to dedicate to.",
"message.error.select.zone.type": "Please select Zone type below.",
"message.error.server": "Please enter server.",
diff --git a/ui/src/views/infra/zone/ZoneWizardZoneDetailsStep.vue b/ui/src/views/infra/zone/ZoneWizardZoneDetailsStep.vue
index 05c5adc1bd2..584cbe6d1ba 100644
--- a/ui/src/views/infra/zone/ZoneWizardZoneDetailsStep.vue
+++ b/ui/src/views/infra/zone/ZoneWizardZoneDetailsStep.vue
@@ -195,7 +195,8 @@
optionFilterProp="label"
:filterOption="(input, option) => {
return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0
- }" >
+ }"
+ @change="val => { fetchDomainAccounts(val) }">
{{ dom.path }}
@@ -213,7 +214,20 @@
:label="$t('label.account')"
v-bind="formItemLayout"
v-if="isDedicated">
-
+
+
+ {{ acc.name }}
+
+
{
+ // Clean up the selected account from a previous domain
+ this.form.account = null
+ this.selectedDomainAccounts = response.listaccountsresponse.account || []
+ }).catch(error => {
+ this.$notifyError(error)
+ })
+ },
fetchData () {
api('listHypervisors').then(json => {
this.hypervisors = json.listhypervisorsresponse.hypervisor