mirror of
https://github.com/jwinterm/modoboa.git
synced 2026-10-17 05:41:25 +02:00
@@ -175,11 +175,18 @@ export default {
|
||||
getObserver (step) {
|
||||
return this.$refs[`form_${step}`].$refs.observer
|
||||
},
|
||||
validateAccount () {
|
||||
if (this.account.mailbox.message_limit === '') {
|
||||
this.$set(this.account.mailbox, 'message_limit', undefined)
|
||||
preparePayload (payload) {
|
||||
if (payload.role === 'SuperAdmins' && payload.username && payload.username.indexOf('@') === -1) {
|
||||
delete payload.mailbox
|
||||
}
|
||||
return accounts.validate(this.account)
|
||||
if (payload.mailbox && payload.mailbox.message_limit === '') {
|
||||
this.$set(payload.mailbox, 'message_limit', undefined)
|
||||
}
|
||||
},
|
||||
validateAccount () {
|
||||
const payload = { ...this.account }
|
||||
this.preparePayload(payload)
|
||||
return accounts.validate(payload)
|
||||
},
|
||||
close () {
|
||||
this.account = this.getInitialForm()
|
||||
@@ -188,9 +195,7 @@ export default {
|
||||
},
|
||||
submit () {
|
||||
const data = { ...this.account }
|
||||
if (this.account.role === 'SuperAdmins' && this.account.username.indexOf('@') === -1) {
|
||||
delete data.mailbox
|
||||
}
|
||||
this.preparePayload(data)
|
||||
accounts.create(data).then(() => {
|
||||
bus.$emit('notification', { msg: this.$gettext('Account created') })
|
||||
this.$emit('created')
|
||||
|
||||
@@ -56,7 +56,7 @@ export default {
|
||||
AccountPasswordForm,
|
||||
EmailField
|
||||
},
|
||||
props: ['value', 'account'],
|
||||
props: ['value'],
|
||||
data () {
|
||||
return {
|
||||
form: {}
|
||||
@@ -76,6 +76,7 @@ export default {
|
||||
methods: {
|
||||
reset () {
|
||||
this.form = {}
|
||||
this.$refs.passwordForm.reset()
|
||||
},
|
||||
async validateForm () {
|
||||
return await this.$refs.observer.validate() && await this.$refs.passwordForm.validate()
|
||||
@@ -84,8 +85,18 @@ export default {
|
||||
this.$emit('input', this.form)
|
||||
}
|
||||
},
|
||||
mounted () {
|
||||
this.form = { ...this.value }
|
||||
watch: {
|
||||
value: {
|
||||
handler (newValue) {
|
||||
if (newValue) {
|
||||
this.form = { ...newValue }
|
||||
} else {
|
||||
this.form = {}
|
||||
}
|
||||
},
|
||||
deep: true,
|
||||
immediate: true
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
@@ -116,15 +116,18 @@ export default {
|
||||
},
|
||||
async validate () {
|
||||
return await this.$refs.observer.validate()
|
||||
},
|
||||
reset () {
|
||||
if (this.account) {
|
||||
this.form.random_password = this.account.random_password
|
||||
if (this.form.random_password) {
|
||||
this.updatePassword(true)
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
mounted () {
|
||||
if (this.account) {
|
||||
this.form.random_password = this.account.random_password
|
||||
if (this.form.random_password) {
|
||||
this.updatePassword(true)
|
||||
}
|
||||
}
|
||||
this.reset()
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
@@ -18,7 +18,7 @@ export const importExportMixin = {
|
||||
} else {
|
||||
bus.$emit('notification', { msg: resp.data.message, type: 'error' })
|
||||
}
|
||||
}).catch(error => {
|
||||
}).catch(() => {
|
||||
bus.$emit('notification', {
|
||||
msg: this.$gettext('CSV seems to be badly formatted'),
|
||||
type: 'error'
|
||||
|
||||
Reference in New Issue
Block a user