Skip to content

Commit 5ae2a86

Browse files
committed
coderabbitai suggestions
1 parent 8cb42fe commit 5ae2a86

2 files changed

Lines changed: 25 additions & 20 deletions

File tree

msgcntr/messageforums-app/src/java/org/sakaiproject/tool/messageforums/DiscussionForumTool.java

Lines changed: 20 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1647,7 +1647,7 @@ private boolean needToUpdateSynopticOnForumSave(Object target, boolean isDraft){
16471647
boolean isDraftOld = false;
16481648
boolean availabilityChanged = false;
16491649

1650-
Set oldMembershipItemSet = null;
1650+
Set<DBMembershipItem> oldMembershipItemSet = null;
16511651

16521652
if (target instanceof DiscussionForum){
16531653
DiscussionForum forum = ((DiscussionForum) target);
@@ -1691,23 +1691,25 @@ else if (target instanceof Topic){
16911691
update = true;
16921692
break;
16931693
}
1694-
1695-
Iterator iter2 = oldMembershipItemSet.iterator();
1696-
while(iter2.hasNext())
1697-
{
1698-
DBMembershipItem oldItem = (DBMembershipItem) iter2.next();
1699-
if(permBean.getItem().getId().equals(oldItem.getId())){
1700-
PermissionLevel oldLevel = oldItem.getPermissionLevel();
1701-
if (oldLevel == null) {
1702-
oldLevel = permissionLevelManager.getPermissionLevelByName(oldItem.getPermissionLevelName());
1703-
}
1704-
Boolean oldModerate = (oldLevel != null) ? oldLevel.getModeratePostings() : Boolean.FALSE;
1705-
if(permBean.getModeratePostings() != Boolean.TRUE.equals(oldModerate)){
1706-
update = true;
1707-
break;
1708-
}
1709-
}
1710-
}
1694+
1695+
for (DBMembershipItem oldItem : oldMembershipItemSet) {
1696+
if (permBean.getItem().getId().equals(oldItem.getId())) {
1697+
PermissionLevel oldLevel = oldItem.getPermissionLevel();
1698+
if (oldLevel == null) {
1699+
if (PermissionLevelManager.PERMISSION_LEVEL_NAME_CUSTOM.equals(oldItem.getPermissionLevelName())) {
1700+
// Custom item with no stored level — permissions are unknown, treat as changed
1701+
update = true;
1702+
break;
1703+
}
1704+
oldLevel = permissionLevelManager.getPermissionLevelByName(oldItem.getPermissionLevelName());
1705+
}
1706+
Boolean oldModerate = (oldLevel != null) ? oldLevel.getModeratePostings() : Boolean.FALSE;
1707+
if (permBean.getModeratePostings() != Boolean.TRUE.equals(oldModerate)) {
1708+
update = true;
1709+
break;
1710+
}
1711+
}
1712+
}
17111713
if(update){
17121714
break;
17131715
}

msgcntr/messageforums-app/src/java/org/sakaiproject/tool/messageforums/ui/PermissionBean.java

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -78,12 +78,15 @@ private void setPermissionsForLevel(String selectedLevel)
7878
{
7979
if (!"Custom".equals(selectedLevel))
8080
{
81-
this.displayLevel = permissionLevelManager.getPermissionLevelByName(selectedLevel);
81+
PermissionLevel level = permissionLevelManager.getPermissionLevelByName(selectedLevel);
82+
if (level != null) {
83+
this.displayLevel = level;
84+
}
8285
}
8386
else
8487
{
8588
MessageForumsTypeManager typeManager = (MessageForumsTypeManager) ComponentManager.get("org.sakaiproject.api.app.messageforums.MessageForumsTypeManager");
86-
if (this.displayLevel == null || !this.displayLevel.getTypeUuid().equals(typeManager.getCustomLevelType()))
89+
if (this.displayLevel == null || !typeManager.getCustomLevelType().equals(this.displayLevel.getTypeUuid()))
8790
{
8891
this.displayLevel = permissionLevelManager.createPermissionLevel(selectedLevel, typeManager.getCustomLevelType(), new PermissionsMask());
8992
}

0 commit comments

Comments
 (0)