aboutsummaryrefslogtreecommitdiffstats
path: root/src/main/java/de/pixart/messenger/entities/MucOptions.java
diff options
context:
space:
mode:
authorChristian Schneppe <christian@pix-art.de>2019-02-07 21:24:12 +0100
committerChristian Schneppe <christian@pix-art.de>2019-02-07 21:24:12 +0100
commitb31a9daf992012be7fa839cc3d25a042c55f9c7a (patch)
treee5b9ece969c8137f9849b87af6710a7bf3208c31 /src/main/java/de/pixart/messenger/entities/MucOptions.java
parent1b3406cdbb6c620cca975b0bc32b43b60fa246cb (diff)
show different room settings for channels and groups
Diffstat (limited to 'src/main/java/de/pixart/messenger/entities/MucOptions.java')
-rw-r--r--src/main/java/de/pixart/messenger/entities/MucOptions.java16
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() {