groups ui fixes

This commit is contained in:
Girish Ramakrishnan
2024-03-01 18:37:34 +01:00
parent 6d8ae180b3
commit 35c5f19eac
4 changed files with 15 additions and 9 deletions
+10 -6
View File
@@ -56,7 +56,8 @@
<label class="control-label">{{ 'users.user.groups' | tr }}</label>
<div class="control-label">
<div ng-show="groups.length === 0">{{ 'users.user.noGroups' | tr }}</div>
<multiselect ng-show="groups.length !== 0" ng-model="userAdd.selectedLocalGroups" options="group.name for group in groups | filter:{ source: '' }" data-compare-by="name" data-multiple="true" filter-after-rows="5" scroll-after-rows="10"></multiselect>
<!-- local groups. they can have local and external users . angular cannot filter empty strings - https://github.com/angular/angular.js/issues/7890 -->
<multiselect ng-show="groups.length !== 0" ng-model="userAdd.selectedLocalGroups" options="group.name for group in groups | filter:{ source: '!ldap' }" data-compare-by="name" data-multiple="true" filter-after-rows="5" scroll-after-rows="10"></multiselect>
</div>
</div>
@@ -158,14 +159,17 @@
<div ng-switch on="groups.length">
<div ng-switch-when="0">{{ 'users.user.noGroups' | tr }}</div>
<div ng-switch-default>
<!-- local groups. they can have local and external users-->
<multiselect ng-show="hasLocalGroups" ng-model="userEdit.selectedLocalGroups" options="group.name for group in groups | filter: { source: '' }" data-compare-by="id" data-multiple="true" filter-after-rows="5" scroll-after-rows="10"></multiselect>
<!-- remote groups. cannot be edited -->
<div ng-show="userEdit.externalGroups.length"><br/>LDAP: <span ng-repeat="group in externalGroups">{{ group.name }}</span></div>
<!-- local groups. they can have local and external users . angular cannot filter empty strings - https://github.com/angular/angular.js/issues/7890 -->
<multiselect ng-show="hasLocalGroups" ng-model="userEdit.selectedLocalGroups" options="group.name for group in groups | filter:{ source: '!ldap' }" data-compare-by="id" data-multiple="true" filter-after-rows="5" scroll-after-rows="10"></multiselect>
</div>
</div>
</div>
</div>
<div class="form-group" ng-show="userEdit.externalGroups.length">
<!-- remote groups. cannot be edited -->
<label class="control-label">{{ 'users.user.ldapGroups' | tr }}</label>
<div><span ng-repeat="group in userEdit.externalGroups">{{ group.name }}</span></div>
</div>
<div class="form-group" ng-hide="isMe(userEdit.userInfo)">
<div class="checkbox">
<label>
@@ -246,7 +250,7 @@
<label class="control-label">{{ 'users.group.users' | tr }}</label>
<div class="control-label">
<multiselect ng-hide="groupEdit.source" ng-model="groupEdit.selectedUsers" ng-disabled="groupEdit.busy" options="(user.username || user.email) for user in allUsers" data-compare-by="email" data-multiple="true" filter-after-rows="5" scroll-after-rows="10"></multiselect>
<div ng-show="groupEdit.source"><span ng-repeat="user in selectedUsers"> {{ (user.username || user.email) }}</span></div>
<div ng-show="groupEdit.source"><span ng-repeat="user in groupEdit.selectedUsers"> {{ (user.username || user.email) }}</span></div>
</div>
</div>
<div class="form-group">