Iterator iter = model.getPermissions().iterator();
int removed = 0;
int changed = 0;
while (iter.hasNext()) {
PermissionsData perms = (PermissionsData)iter.next();
String sval = request.getParameter("perm-" + perms.getId());
if (sval != null) {
short val = Short.parseShort(sval);
UserData user = rses.getAuthenticatedUser();
if (perms.getUser().getId().equals(user.getId())
&& val < perms.getPermissionMask()) {
errors.add(null,new ActionError(
"memberPermissions.noSelfDemotions"));
} else if (val != perms.getPermissionMask()) {
if (val == -1) {
userMgr.removePermissions(perms);
removed++;
} else {
perms.setPermissionMask(val);
userMgr.savePermissions(perms);
changed++;
}
}
}