Skip to content

Commit 6432ae5

Browse files
committed
Fix list update when deleting one entity.
1 parent cb928f9 commit 6432ae5

File tree

2 files changed

+40
-15
lines changed

2 files changed

+40
-15
lines changed

usr/lib/linuxmuster-webui/plugins/lmn_groupmembership/resources/partial/groupDetails.modal.html

Lines changed: 36 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -67,8 +67,12 @@ <h4 translate>Admins</h4>
6767
{{admin.sn}} {{admin.givenName}}
6868
<span class="cardbtn">
6969
{{admin.sophomorixAdminClass}}
70-
<button class="cardbtn" ng:show="editGroup" title="{{text.removeFromAdmin}}"><i class="fas fa-level-down-alt" ng:click="demoteMember(admin)"></i></button>
71-
<button class="cardbtn" ng:show="editGroup" title="{{text.remove}}"><i class="fas fa-trash" ng:click="removeAdmin(admin)"></i></button>
70+
<button class="cardbtn" ng:show="editGroup" title="{{text.removeFromAdmin}}">
71+
<i class="fas fa-level-down-alt" ng:click="demoteMember(admin)"></i>
72+
</button>
73+
<button class="cardbtn" ng:show="editGroup" title="{{text.remove}}">
74+
<i class="fas fa-trash" ng:click="removeAdmin(admin)"></i>
75+
</button>
7276
</span>
7377
</li>
7478
</ul>
@@ -78,8 +82,12 @@ <h4 translate>Groups</h4>
7882
<li ng:repeat="group in groupadminlist" class="cardlist">
7983
{{group}}
8084
<span class="cardbtn" ng:show="editGroup">
81-
<button class="cardbtn" title="{{text.removeFromAdmin}}"><i class="fas fa-level-down-alt" ng:click="demoteGroup(group)"></i></button>
82-
<button class="cardbtn" title="{{text.remove}}"><i class="fas fa-trash" ng:click="removeAdminGroup(group)"></i></button>
85+
<button class="cardbtn" title="{{text.removeFromAdmin}}">
86+
<i class="fas fa-level-down-alt" ng:click="demoteGroup(group)"></i>
87+
</button>
88+
<button class="cardbtn" title="{{text.remove}}">
89+
<i class="fas fa-trash" ng:click="removeAdminGroup(group)"></i>
90+
</button>
8391
</span>
8492
</li>
8593
</ul>
@@ -103,9 +111,15 @@ <h4 translate>Members</h4>
103111
<div class="cardbtn">
104112
{{member.sophomorixAdminClass}}
105113
<span ng:show="editGroup">
106-
<button class="cardbtn" ng:show="type == 'project'" title="{{text.addAsAdmin}}"><i class="fas fa-level-up-alt" ng:click="elevateMember(member)"></i></button>
107-
<button class="cardbtn" ng:show="type == 'project' || type == 'group'" title="{{text.remove}}"><i class="fas fa-trash" ng:click="removeMember(member)"></i></button>
108-
<button class="cardbtn" ng:show="type == 'class' && member.sophomorixRole == 'teacher'" title="{{text.remove}}"><i class="fas fa-trash" ng:click="removeTeacherClass(member)"></i></button>
114+
<button class="cardbtn" ng:show="type == 'project'" title="{{text.addAsAdmin}}">
115+
<i class="fas fa-level-up-alt" ng:click="elevateMember(member)"></i>
116+
</button>
117+
<button class="cardbtn" ng:show="type == 'project' || type == 'group'" title="{{text.remove}}">
118+
<i class="fas fa-trash" ng:click="removeMember(member)"></i>
119+
</button>
120+
<button class="cardbtn" ng:show="type == 'class' && member.sophomorixRole == 'teacher'" title="{{text.remove}}">
121+
<i class="fas fa-trash" ng:click="removeTeacherClass(member)"></i>
122+
</button>
109123
</span>
110124
</div>
111125
</li>
@@ -116,8 +130,12 @@ <h4 translate>Groups</h4>
116130
<li ng:repeat="group in groupmemberlist" class="cardlist">
117131
{{group}}
118132
<span class="cardbtn" ng:show="editGroup">
119-
<button class="cardbtn" ng:show="type == 'project'" title="{{text.addAsAdmin}}"><i class="fas fa-level-up-alt " ng:click="elevateGroup(group)"></i></button>
120-
<button class="cardbtn" title="{{text.remove}}"><i class="fas fa-trash" ng:click="removeMemberGroup(group)"></i></button>
133+
<button class="cardbtn" ng:show="type == 'project'" title="{{text.addAsAdmin}}">
134+
<i class="fas fa-level-up-alt " ng:click="elevateGroup(group)"></i>
135+
</button>
136+
<button class="cardbtn" title="{{text.remove}}">
137+
<i class="fas fa-trash" ng:click="removeMemberGroup(group)"></i>
138+
</button>
121139
</span>
122140
</li>
123141
</ul>
@@ -138,7 +156,9 @@ <h4 translate>Search for a teacher</h4>
138156
<div ng:show="$parent._.newGroup.length + $parent._.newUser.length > 0">
139157
<h3 translate>To add</h3>
140158
<ul ng:show="$parent._.newUser.length > 0">
141-
<li ng:repeat="user in $parent._.newUser"><span translate>User</span> {{user.sn}} {{user.givenName}} {{user.sophomorixAdminClass}}</li>
159+
<li ng:repeat="user in $parent._.newUser">
160+
<span translate>User</span> {{user.sn}} {{user.givenName}} {{user.sophomorixAdminClass}}
161+
</li>
142162
</ul>
143163
</div>
144164
</div>
@@ -157,10 +177,14 @@ <h4 translate>Add a whole group</h4>
157177
<div ng:show="$parent._.newGroup.length + $parent._.newUser.length > 0">
158178
<h3 translate>To add</h3>
159179
<ul ng:show="$parent._.newGroup.length > 0">
160-
<li ng:repeat="group in $parent._.newGroup"><span translate>Group</span> {{group}}</li>
180+
<li ng:repeat="group in $parent._.newGroup">
181+
<span translate>Group</span> {{group}}
182+
</li>
161183
</ul>
162184
<ul ng:show="$parent._.newUser.length > 0">
163-
<li ng:repeat="user in $parent._.newUser"><span translate>User</span> {{user.sn}} {{user.givenName}} {{user.sophomorixAdminClass}}</li>
185+
<li ng:repeat="user in $parent._.newUser">
186+
<span translate>User</span> {{user.sn}} {{user.givenName}} {{user.sophomorixAdminClass}}
187+
</li>
164188
</ul>
165189
</div>
166190
</div>

usr/lib/linuxmuster-webui/plugins/lmn_groupmembership/views.py

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -274,12 +274,13 @@ def handle_api_set_members(self, http_context):
274274
]
275275

276276
if action in possible_actions:
277-
if len(entity) > 1 and objtype == 'group':
277+
entities = entity.split(',')
278+
if len(entities) > 1 and objtype == 'group':
278279
# sophomorix-group does not support multiple users assignment to a group
279280
# not the best solution, can be slow
280281
results = {'TYPE':'', 'LOG':''}
281-
for user in entity.split(','):
282-
sophomorixCommand = ['sophomorix-group', '--' + action, user, '--group', groupname, '-jj']
282+
for ent in entities:
283+
sophomorixCommand = ['sophomorix-group', '--' + action, ent, '--group', groupname, '-jj']
283284
result = lmn_getSophomorixValue(sophomorixCommand, 'OUTPUT/0')
284285
if result['TYPE'] == "ERROR":
285286
results['TYPE'] += result['TYPE'] + "\n"

0 commit comments

Comments
 (0)