diff options
Diffstat (limited to 'apps/user_ldap/js')
-rw-r--r-- | apps/user_ldap/js/wizard/wizardTabAbstractFilter.js | 14 | ||||
-rw-r--r-- | apps/user_ldap/js/wizard/wizardTabElementary.js | 9 | ||||
-rw-r--r-- | apps/user_ldap/js/wizard/wizardTabGeneric.js | 11 | ||||
-rw-r--r-- | apps/user_ldap/js/wizard/wizardTabUserFilter.js | 6 |
4 files changed, 34 insertions, 6 deletions
diff --git a/apps/user_ldap/js/wizard/wizardTabAbstractFilter.js b/apps/user_ldap/js/wizard/wizardTabAbstractFilter.js index 702c30a5a69..c9c3aeb241d 100644 --- a/apps/user_ldap/js/wizard/wizardTabAbstractFilter.js +++ b/apps/user_ldap/js/wizard/wizardTabAbstractFilter.js @@ -158,15 +158,19 @@ OCA = OCA || {}; /** * sets the selected groups * - * @param {Array} groups + * @param {string} groups */ setGroups: function(groups) { + if(typeof groups === 'string') { + groups = groups.split("\n"); + } if(!this.isComplexGroupChooser) { this.setElementValue(this.getGroupsItem().$element, groups); this.getGroupsItem().$element.multiselect('refresh'); } else { var $element = $(this.tabID).find('.ldapGroupListSelected'); this.equipMultiSelect($element, groups); + this.updateFilterOnType('selected'); } }, @@ -224,10 +228,10 @@ OCA = OCA || {}; $selectedGroups, $(this.tabID).find('.ldapManyGroupsSearch') )); } else { - if(_.isUndefined || only.toLowerCase() === 'available') { + if(_.isUndefined(only) || only.toLowerCase() === 'available') { this.filterOnType[0].updateOptions(); } - if(_.isUndefined || only.toLowerCase() === 'selected') { + if(_.isUndefined(only) || only.toLowerCase() === 'selected') { this.filterOnType[1].updateOptions(); } } @@ -357,7 +361,7 @@ OCA = OCA || {}; this._saveGroups(selected.concat($available.val())); $available.find('option:selected').prependTo($selected); - this.updateFilterOnType(); + this.updateFilterOnType('available'); // selected groups are not updated yet }, /** @@ -370,7 +374,7 @@ OCA = OCA || {}; this._saveGroups(selected); $selected.find('option:selected').appendTo($available); - this.updateFilterOnType(); + this.updateFilterOnType('available'); // selected groups are not updated yet } }); diff --git a/apps/user_ldap/js/wizard/wizardTabElementary.js b/apps/user_ldap/js/wizard/wizardTabElementary.js index b8ab367dfd1..75664275a9c 100644 --- a/apps/user_ldap/js/wizard/wizardTabElementary.js +++ b/apps/user_ldap/js/wizard/wizardTabElementary.js @@ -165,6 +165,12 @@ OCA = OCA || {}; * @inheritdoc */ overrideErrorMessage: function(message, key) { + var original = message; + message = this._super(message, key); + if(original !== message) { + // we pass the parents change + return message; + } switch(key) { case 'ldap_port': if (message === 'Invalid credentials') { @@ -267,7 +273,8 @@ OCA = OCA || {}; message = t('user_ldap', objectsFound + ' entries available within the provided Base DN'); } } else { - message = t('user_ldap', 'An error occurred. Please check the Base DN, as well as connection settings and credentials.'); + message = view.overrideErrorMessage(payload.data.message); + message = message || t('user_ldap', 'An error occurred. Please check the Base DN, as well as connection settings and credentials.'); if(payload.data.message) { console.warn(payload.data.message); } diff --git a/apps/user_ldap/js/wizard/wizardTabGeneric.js b/apps/user_ldap/js/wizard/wizardTabGeneric.js index 720628fa609..b755f3ca060 100644 --- a/apps/user_ldap/js/wizard/wizardTabGeneric.js +++ b/apps/user_ldap/js/wizard/wizardTabGeneric.js @@ -70,6 +70,17 @@ OCA = OCA || {}; * @returns {string} */ overrideErrorMessage: function(message, key) { + if(message === 'LDAP authentication method rejected' + && !this.configModel.configuration.ldap_dn) + { + message = t('user_ldap', 'Anonymous bind is not allowed. Please provide a User DN and Password.'); + } else if (message === 'LDAP Operations error' + && !this.configModel.configuration.ldap_dn + && !this.configModel.configuration.ldap_agent_password) + { + message = t('user_ldap', 'LDAP Operations error. Anonymous bind might not be allowed.'); + } + return message; }, diff --git a/apps/user_ldap/js/wizard/wizardTabUserFilter.js b/apps/user_ldap/js/wizard/wizardTabUserFilter.js index 992c1ccf379..4fe223ee075 100644 --- a/apps/user_ldap/js/wizard/wizardTabUserFilter.js +++ b/apps/user_ldap/js/wizard/wizardTabUserFilter.js @@ -122,6 +122,12 @@ OCA = OCA || {}; * @inheritdoc */ overrideErrorMessage: function(message, key) { + var original = message; + message = this._super(message, key); + if(original !== message) { + // we pass the parents change + return message; + } if( key === 'ldap_userfilter_groups' && message === 'memberOf is not supported by the server' ) { |