diff options
author | Christian Schneppe <christian@pix-art.de> | 2019-02-07 21:24:12 +0100 |
---|---|---|
committer | Christian Schneppe <christian@pix-art.de> | 2019-02-07 21:24:12 +0100 |
commit | b31a9daf992012be7fa839cc3d25a042c55f9c7a (patch) | |
tree | e5b9ece969c8137f9849b87af6710a7bf3208c31 /src/main/java/de/pixart/messenger/entities | |
parent | 1b3406cdbb6c620cca975b0bc32b43b60fa246cb (diff) |
show different room settings for channels and groups
Diffstat (limited to 'src/main/java/de/pixart/messenger/entities')
-rw-r--r-- | src/main/java/de/pixart/messenger/entities/MucOptions.java | 16 |
1 files changed, 12 insertions, 4 deletions
diff --git a/src/main/java/de/pixart/messenger/entities/MucOptions.java b/src/main/java/de/pixart/messenger/entities/MucOptions.java index c1b776b9a..3ab763632 100644 --- a/src/main/java/de/pixart/messenger/entities/MucOptions.java +++ b/src/main/java/de/pixart/messenger/entities/MucOptions.java @@ -155,13 +155,21 @@ public class MucOptions { } public boolean canInvite() { - Field field = getRoomInfoForm().getFieldByName("muc#roomconfig_allowinvites"); - return !membersOnly() || self.getRole().ranks(Role.MODERATOR) || (field != null && "1".equals(field.getValue())); + return !membersOnly() || self.getRole().ranks(Role.MODERATOR) || allowInvites(); + } + + public boolean allowInvites() { + final Field field = getRoomInfoForm().getFieldByName("muc#roomconfig_allowinvites"); + return field != null && "1".equals(field.getValue()); } public boolean canChangeSubject() { - Field field = getRoomInfoForm().getFieldByName("muc#roominfo_changesubject"); - return self.getRole().ranks(Role.MODERATOR) || (field != null && "1".equals(field.getValue())); + return self.getRole().ranks(Role.MODERATOR) || participantsCanChangeSubject(); + } + + public boolean participantsCanChangeSubject() { + final Field field = getRoomInfoForm().getFieldByName("muc#roominfo_changesubject"); + return field != null && "1".equals(field.getValue()); } public boolean allowPm() { |