You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openmeetings.apache.org by so...@apache.org on 2020/05/05 15:57:39 UTC

[openmeetings] branch master updated: [OPENMEETINGS-2332] room scope is taken into account on exit

This is an automated email from the ASF dual-hosted git repository.

solomax pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/openmeetings.git


The following commit(s) were added to refs/heads/master by this push:
     new 4b7405c  [OPENMEETINGS-2332] room scope is taken into account on exit
4b7405c is described below

commit 4b7405cab44b35bae54186c1fb44ceea5e41e2a1
Author: Maxim Solodovnik <so...@gmail.com>
AuthorDate: Tue May 5 22:56:44 2020 +0700

    [OPENMEETINGS-2332] room scope is taken into account on exit
---
 .../org/apache/openmeetings/web/room/menu/RoomMenuPanel.java | 12 +++++++++++-
 .../java/org/apache/openmeetings/web/util/OmUrlFragment.java |  2 ++
 2 files changed, 13 insertions(+), 1 deletion(-)

diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/RoomMenuPanel.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/RoomMenuPanel.java
index 063e7db..ada3493 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/RoomMenuPanel.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/RoomMenuPanel.java
@@ -22,8 +22,11 @@ import static org.apache.openmeetings.util.OpenmeetingsVariables.ATTR_CLASS;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.ATTR_TITLE;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_REDIRECT_URL_FOR_EXTERNAL;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.getBaseUrl;
+import static org.apache.openmeetings.util.OpenmeetingsVariables.isMyRoomsEnabled;
 import static org.apache.openmeetings.web.app.WebSession.getUserId;
 import static org.apache.openmeetings.web.util.GroupLogoResourceReference.getUrl;
+import static org.apache.openmeetings.web.util.OmUrlFragment.ROOMS_GROUP;
+import static org.apache.openmeetings.web.util.OmUrlFragment.ROOMS_MY;
 import static org.apache.openmeetings.web.util.OmUrlFragment.ROOMS_PUBLIC;
 
 import java.util.ArrayList;
@@ -248,7 +251,14 @@ public class RoomMenuPanel extends Panel {
 	public void exit(IPartialPageRequestHandler handler) {
 		cm.exitRoom(room.getClient());
 		if (WebSession.getRights().contains(User.Right.DASHBOARD)) {
-			room.getMainPanel().updateContents(ROOMS_PUBLIC, handler);
+			final Room r = room.getRoom();
+			if (isMyRoomsEnabled() && r != null && getUserId().equals(r.getOwnerId())) {
+				room.getMainPanel().updateContents(ROOMS_MY, handler);
+			} else if (r != null && !r.getIspublic()) {
+				room.getMainPanel().updateContents(ROOMS_GROUP, handler);
+			} else {
+				room.getMainPanel().updateContents(ROOMS_PUBLIC, handler);
+			}
 		} else {
 			String url = cfgDao.getString(CONFIG_REDIRECT_URL_FOR_EXTERNAL, "");
 			throw new RedirectToUrlException(Strings.isEmpty(url) ? getBaseUrl() : url);
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/OmUrlFragment.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/OmUrlFragment.java
index 4f26e8b..86d8eb5 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/OmUrlFragment.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/OmUrlFragment.java
@@ -81,6 +81,8 @@ public class OmUrlFragment implements Serializable {
 	public static final OmUrlFragment PROFILE_MESSAGES = new OmUrlFragment(AreaKeys.profile, TYPE_MESSAGES);
 	public static final OmUrlFragment CALENDAR = new OmUrlFragment(AreaKeys.user, TYPE_CALENDAR);
 	public static final OmUrlFragment ROOMS_PUBLIC = new OmUrlFragment(AreaKeys.rooms, TYPE_PUBLIC);
+	public static final OmUrlFragment ROOMS_GROUP = new OmUrlFragment(AreaKeys.rooms, TYPE_GROUP);
+	public static final OmUrlFragment ROOMS_MY = new OmUrlFragment(AreaKeys.rooms, TYPE_MY);
 
 	public enum AreaKeys {
 		user