diff options
-rw-r--r-- | src/store/modules/AccessControl/LdapStore.js | 32 | ||||
-rw-r--r-- | src/views/AccessControl/Ldap/Ldap.vue | 10 |
2 files changed, 29 insertions, 13 deletions
diff --git a/src/store/modules/AccessControl/LdapStore.js b/src/store/modules/AccessControl/LdapStore.js index 722384c1..5aa31c2d 100644 --- a/src/store/modules/AccessControl/LdapStore.js +++ b/src/store/modules/AccessControl/LdapStore.js @@ -46,36 +46,48 @@ const LdapStore = { state, { ServiceEnabled, - ServiceAddresses, + ServiceAddresses = [], Authentication = {}, - LDAPService: { SearchSettings = {} } = {}, + LDAPService: { + SearchSettings: { + BaseDistinguishedNames = [], + UsernameAttribute, + GroupsAttribute, + } = {}, + } = {}, RemoteRoleMapping = [], } ) => { state.ldap.serviceAddress = ServiceAddresses[0]; state.ldap.serviceEnabled = ServiceEnabled; - state.ldap.baseDn = SearchSettings.BaseDistinguishedNames[0]; + state.ldap.baseDn = BaseDistinguishedNames[0]; state.ldap.bindDn = Authentication.Username; - state.ldap.userAttribute = SearchSettings.UsernameAttribute; - state.ldap.groupsAttribute = SearchSettings.GroupsAttribute; + state.ldap.userAttribute = UsernameAttribute; + state.ldap.groupsAttribute = GroupsAttribute; state.ldap.roleGroups = RemoteRoleMapping; }, setActiveDirectoryProperties: ( state, { ServiceEnabled, - ServiceAddresses, + ServiceAddresses = [], Authentication = {}, - LDAPService: { SearchSettings = {} } = {}, + LDAPService: { + SearchSettings: { + BaseDistinguishedNames = [], + UsernameAttribute, + GroupsAttribute, + } = {}, + } = {}, RemoteRoleMapping = [], } ) => { state.activeDirectory.serviceEnabled = ServiceEnabled; state.activeDirectory.serviceAddress = ServiceAddresses[0]; state.activeDirectory.bindDn = Authentication.Username; - state.activeDirectory.baseDn = SearchSettings.BaseDistinguishedNames[0]; - state.activeDirectory.userAttribute = SearchSettings.UsernameAttribute; - state.activeDirectory.groupsAttribute = SearchSettings.GroupsAttribute; + state.activeDirectory.baseDn = BaseDistinguishedNames[0]; + state.activeDirectory.userAttribute = UsernameAttribute; + state.activeDirectory.groupsAttribute = GroupsAttribute; state.activeDirectory.roleGroups = RemoteRoleMapping; }, }, diff --git a/src/views/AccessControl/Ldap/Ldap.vue b/src/views/AccessControl/Ldap/Ldap.vue index 25e50cbf..78bb830b 100644 --- a/src/views/AccessControl/Ldap/Ldap.vue +++ b/src/views/AccessControl/Ldap/Ldap.vue @@ -350,7 +350,9 @@ export default { this.$store .dispatch('ldap/getAccountSettings') .finally(() => this.endLoader()); - this.$store.dispatch('sslCertificates/getCertificates'); + this.$store + .dispatch('sslCertificates/getCertificates') + .finally(() => this.endLoader()); this.setFormValues(); }, methods: { @@ -398,11 +400,13 @@ export default { .dispatch('ldap/saveAccountSettings', data) .then((success) => { this.successToast(success); - this.$v.form.$reset(); }) - .catch(({ message }) => this.errorToast(message)) + .catch(({ message }) => { + this.errorToast(message); + }) .finally(() => { this.form.bindPassword = ''; + this.$v.form.$reset(); this.endLoader(); }); }, |