diff --git a/htdocs/src/mixins/addDomainToSource.js b/htdocs/src/mixins/addDomainToSource.js index 551cff7..4a17d80 100644 --- a/htdocs/src/mixins/addDomainToSource.js +++ b/htdocs/src/mixins/addDomainToSource.js @@ -39,7 +39,7 @@ export default { }, methods: { - selectExistingSource (source, domain, redirect) { + addDomainToSource (source, domain, redirect, cbSUccess) { this.validatingNewDomain = true axios @@ -50,14 +50,17 @@ export default { .then( (response) => { this.$root.$bvToast.toast( - 'Great! ' + response.data.domain + ' has been added. You can manage it right now.', { - title: 'New domain attached to happyDNS!', + this.$t('domains.added-success', { domain: response.data.domain }), { + title: this.$t('domains.attached-new'), autoHideDelay: 5000, variant: 'success', + href: '/domains/' + response.data.domain, toaster: 'b-toaster-content-right' } ) - if (redirect) { + if (cbSUccess) { + cbSUccess(response.data) + } else if (redirect) { this.$router.push('/domains/' + encodeURIComponent(response.data.domain)) } else if (this.refreshDomains) { this.refreshDomains() @@ -69,7 +72,7 @@ export default { this.validatingNewDomain = false this.$bvToast.toast( error.response.data.errmsg, { - title: 'An error occurs when adding the domain!', + title: this.$t('errors.domain-attach'), autoHideDelay: 5000, variant: 'danger', toaster: 'b-toaster-content-right' diff --git a/htdocs/src/mixins/listGroupInputNewDomain.js b/htdocs/src/mixins/listGroupInputNewDomain.js index bc0a280..ad8e310 100644 --- a/htdocs/src/mixins/listGroupInputNewDomain.js +++ b/htdocs/src/mixins/listGroupInputNewDomain.js @@ -76,7 +76,7 @@ export default { submitNewDomain () { if (this.validateNewDomain()) { if (this.mySource) { - this.selectExistingSource(this.mySource, this.newDomain) + this.addDomainToSource(this.mySource, this.newDomain) } else { this.$router.push('/domains/' + encodeURIComponent(this.newDomain) + '/new') } diff --git a/htdocs/src/views/domain-new.vue b/htdocs/src/views/domain-new.vue index 4a18a6b..ce346d7 100644 --- a/htdocs/src/views/domain-new.vue +++ b/htdocs/src/views/domain-new.vue @@ -48,7 +48,7 @@ - +

{{ $t('source.find') }} {{ $t('domains.add-now') }} diff --git a/htdocs/src/views/source-list-domains.vue b/htdocs/src/views/source-list-domains.vue index 9468c89..0bef7a4 100644 --- a/htdocs/src/views/source-list-domains.vue +++ b/htdocs/src/views/source-list-domains.vue @@ -144,35 +144,10 @@ export default { }, importDomain (domain) { - axios - .post('/api/domains', { - id_source: this.mySource._id, - domain: domain - }) - .then( - (response) => { - this.$bvToast.toast( - this.$t('domains.added-success'), { domain: response.data.domain }, { - title: this.$t('domains.attached-new'), - autoHideDelay: 5000, - variant: 'success', - href: '/domains/' + response.data.domain, - toaster: 'b-toaster-content-right' - } - ) - this.myDomains.push(response.data) - }, - (error) => { - this.$bvToast.toast( - error.response.data.errmsg, { - title: this.$t('errors.domain-attach'), - autoHideDelay: 5000, - variant: 'danger', - toaster: 'b-toaster-content-right' - } - ) - } - ) + var vm = this + this.addDomainToSource(this.mySource, domain, null, function (data) { + vm.myDomains.push(data) + }) }, listImportableDomains () {