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 2017/03/28 03:35:20 UTC

svn commit: r1789037 [2/2] - in /openmeetings/application: branches/3.2.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/file/ branches/3.2.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/user/ branches/3.2.x/openmeeting...

Modified: openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_ru.properties.xml
URL: http://svn.apache.org/viewvc/openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_ru.properties.xml?rev=1789037&r1=1789036&r2=1789037&view=diff
==============================================================================
--- openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_ru.properties.xml (original)
+++ openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_ru.properties.xml Tue Mar 28 03:35:19 2017
@@ -1917,4 +1917,6 @@
 	<entry key="widget.recent.title">Последние комнаты</entry>
 	<entry key="widget.recent.desc">Эта секция отображает комнаты в которые Вы недавно заходили</entry>
 	<entry key="files.root.group">Файлы группы</entry>
+	<entry key="recordings.root.group">Записи группы</entry>
+	<entry key="restricted.group.files">Доступ к групповым файлам ограничен</entry>
 </properties>

Modified: openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_sk.properties.xml
URL: http://svn.apache.org/viewvc/openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_sk.properties.xml?rev=1789037&r1=1789036&r2=1789037&view=diff
==============================================================================
--- openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_sk.properties.xml (original)
+++ openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_sk.properties.xml Tue Mar 28 03:35:19 2017
@@ -1916,4 +1916,6 @@
 	<entry key="widget.recent.title">Recent Rooms</entry>
 	<entry key="widget.recent.desc">This sections displays rooms recently opened by you</entry>
 	<entry key="files.root.group">Group files</entry>
+	<entry key="recordings.root.group">Group recordings</entry>
+	<entry key="restricted.group.files">Group files are restricted</entry>
 </properties>

Modified: openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_sv.properties.xml
URL: http://svn.apache.org/viewvc/openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_sv.properties.xml?rev=1789037&r1=1789036&r2=1789037&view=diff
==============================================================================
--- openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_sv.properties.xml (original)
+++ openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_sv.properties.xml Tue Mar 28 03:35:19 2017
@@ -1916,4 +1916,6 @@
 	<entry key="widget.recent.title">Recent Rooms</entry>
 	<entry key="widget.recent.desc">This sections displays rooms recently opened by you</entry>
 	<entry key="files.root.group">Group files</entry>
+	<entry key="recordings.root.group">Group recordings</entry>
+	<entry key="restricted.group.files">Group files are restricted</entry>
 </properties>

Modified: openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_th.properties.xml
URL: http://svn.apache.org/viewvc/openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_th.properties.xml?rev=1789037&r1=1789036&r2=1789037&view=diff
==============================================================================
--- openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_th.properties.xml (original)
+++ openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_th.properties.xml Tue Mar 28 03:35:19 2017
@@ -1916,4 +1916,6 @@
 	<entry key="widget.recent.title">Recent Rooms</entry>
 	<entry key="widget.recent.desc">This sections displays rooms recently opened by you</entry>
 	<entry key="files.root.group">Group files</entry>
+	<entry key="recordings.root.group">Group recordings</entry>
+	<entry key="restricted.group.files">Group files are restricted</entry>
 </properties>

Modified: openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_tr.properties.xml
URL: http://svn.apache.org/viewvc/openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_tr.properties.xml?rev=1789037&r1=1789036&r2=1789037&view=diff
==============================================================================
--- openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_tr.properties.xml (original)
+++ openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_tr.properties.xml Tue Mar 28 03:35:19 2017
@@ -1916,4 +1916,6 @@
 	<entry key="widget.recent.title">Recent Rooms</entry>
 	<entry key="widget.recent.desc">This sections displays rooms recently opened by you</entry>
 	<entry key="files.root.group">Group files</entry>
+	<entry key="recordings.root.group">Group recordings</entry>
+	<entry key="restricted.group.files">Group files are restricted</entry>
 </properties>

Modified: openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_uk.properties.xml
URL: http://svn.apache.org/viewvc/openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_uk.properties.xml?rev=1789037&r1=1789036&r2=1789037&view=diff
==============================================================================
--- openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_uk.properties.xml (original)
+++ openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_uk.properties.xml Tue Mar 28 03:35:19 2017
@@ -1917,4 +1917,6 @@
 	<entry key="widget.recent.title">Recent Rooms</entry>
 	<entry key="widget.recent.desc">This sections displays rooms recently opened by you</entry>
 	<entry key="files.root.group">Group files</entry>
+	<entry key="recordings.root.group">Group recordings</entry>
+	<entry key="restricted.group.files">Group files are restricted</entry>
 </properties>

Modified: openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_zh_CN.properties.xml
URL: http://svn.apache.org/viewvc/openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_zh_CN.properties.xml?rev=1789037&r1=1789036&r2=1789037&view=diff
==============================================================================
--- openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_zh_CN.properties.xml (original)
+++ openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_zh_CN.properties.xml Tue Mar 28 03:35:19 2017
@@ -1902,4 +1902,6 @@
 	<entry key="widget.recent.title">Recent Rooms</entry>
 	<entry key="widget.recent.desc">This sections displays rooms recently opened by you</entry>
 	<entry key="files.root.group">Group files</entry>
+	<entry key="recordings.root.group">Group recordings</entry>
+	<entry key="restricted.group.files">Group files are restricted</entry>
 </properties>

Modified: openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_zh_TW.properties.xml
URL: http://svn.apache.org/viewvc/openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_zh_TW.properties.xml?rev=1789037&r1=1789036&r2=1789037&view=diff
==============================================================================
--- openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_zh_TW.properties.xml (original)
+++ openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_zh_TW.properties.xml Tue Mar 28 03:35:19 2017
@@ -1916,4 +1916,6 @@
 	<entry key="widget.recent.title">Recent Rooms</entry>
 	<entry key="widget.recent.desc">This sections displays rooms recently opened by you</entry>
 	<entry key="files.root.group">Group files</entry>
+	<entry key="recordings.root.group">Group recordings</entry>
+	<entry key="restricted.group.files">Group files are restricted</entry>
 </properties>

Modified: openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/FileTreePanel.java
URL: http://svn.apache.org/viewvc/openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/FileTreePanel.java?rev=1789037&r1=1789036&r2=1789037&view=diff
==============================================================================
--- openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/FileTreePanel.java (original)
+++ openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/FileTreePanel.java Tue Mar 28 03:35:19 2017
@@ -339,6 +339,10 @@ public abstract class FileTreePanel exte
 		return false;
 	}
 
+	private static boolean isDownloadable(FileItem f) {
+		return !f.isReadOnly() && (f.getType() == Type.Presentation || f.getType() == Type.Image);
+	}
+
 	public void select(FileItem fi, AjaxRequestTarget target, boolean shift, boolean ctrl) {
 		updateSelected(target); //all previously selected are in update list
 		if (ctrl) {
@@ -374,7 +378,7 @@ public abstract class FileTreePanel exte
 		}
 		updateSelected(target); //all finaly selected are in the update list
 		if (target != null) {
-			target.add(trashBorder, download.setVisible(lastSelected.getType() == Type.Presentation || lastSelected.getType() == Type.Image));
+			target.add(trashBorder, download.setVisible(isDownloadable(lastSelected)));
 		}
 	}
 

Modified: openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/OmTreeProvider.java
URL: http://svn.apache.org/viewvc/openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/OmTreeProvider.java?rev=1789037&r1=1789036&r2=1789037&view=diff
==============================================================================
--- openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/OmTreeProvider.java (original)
+++ openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/OmTreeProvider.java Tue Mar 28 03:35:19 2017
@@ -18,7 +18,9 @@
  */
 package org.apache.openmeetings.web.common.tree;
 
+import static org.apache.openmeetings.db.util.AuthLevelUtil.hasAdminLevel;
 import static org.apache.openmeetings.web.app.Application.getBean;
+import static org.apache.openmeetings.web.app.WebSession.getRights;
 import static org.apache.openmeetings.web.app.WebSession.getUserId;
 
 import java.util.ArrayList;
@@ -51,12 +53,13 @@ public class OmTreeProvider implements I
 	public static String FILES_GROUP = "files-group-%s";
 	private final Long roomId;
 	private final List<FileItem> roots = new ArrayList<>();
-	private final String PUBLIC, GROUP;
+	private final String PUBLIC, GROUP_FILE, GROUP_REC;
 
 	public OmTreeProvider(Long roomId) {
 		this.roomId = roomId;
 		PUBLIC = Application.getString(861);
-		GROUP = Application.getString("files.root.group");
+		GROUP_FILE = Application.getString("files.root.group");
+		GROUP_REC = Application.getString("recordings.root.group");
 		refreshRoots(true);
 	}
 
@@ -87,15 +90,18 @@ public class OmTreeProvider implements I
 		}
 		for (GroupUser gu : getBean(UserDao.class).get(getUserId()).getGroupUsers()) {
 			Group g = gu.getGroup();
+			boolean readOnly = g.isRestricted() && !hasAdminLevel(getRights()) && !gu.isModerator();
 			if (all) {
-				FileItem r = createRoot(String.format("%s (%s)", PUBLIC, g.getName()), String.format(RECORDINGS_GROUP, g.getId()), true);
+				FileItem r = createRoot(String.format("%s (%s)", GROUP_REC, g.getName()), String.format(RECORDINGS_GROUP, g.getId()), true);
+				r.setReadOnly(readOnly);
 				r.setGroupId(g.getId());
 				rRoot.add(r);
 			}
-			/*FileItem r = createRoot(String.format("%s (%s)", GROUP, g.getName()), String.format(FILES_GROUP, g.getId()), false);
+			FileItem r = createRoot(String.format("%s (%s)", GROUP_FILE, g.getName()), String.format(FILES_GROUP, g.getId()), false);
 			r.setGroupId(g.getId());
-			r.setReadOnly(roomId == null); //group videos are read-only in recordings tree
-			fRoot.add(r);*/
+			//group videos are read-only in recordings tree
+			r.setReadOnly(roomId == null || readOnly);
+			fRoot.add(r);
 		}
 		roots.clear();
 		if (roomId == null) {
@@ -147,12 +153,12 @@ public class OmTreeProvider implements I
 				if (node.getRoomId() != null) {
 					_list = dao.getByRoom(node.getRoomId());
 				} else if (node.getGroupId() != null) {
-					_list = dao.getByGroup(node.getGroupId(), /*roomId == null ? VIDEO_TYPES : */null);
+					_list = dao.getByGroup(node.getGroupId(), roomId == null ? VIDEO_TYPES : null);
 				} else {
 					_list = dao.getByOwner(node.getOwnerId());
 				}
 			} else {
-				_list = dao.getByParent(id, /*roomId == null ? VIDEO_TYPES : */null);
+				_list = dao.getByParent(id, roomId == null ? VIDEO_TYPES : null);
 			}
 			list.addAll(_list);
 		}

Modified: openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomResourceReference.java
URL: http://svn.apache.org/viewvc/openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomResourceReference.java?rev=1789037&r1=1789036&r2=1789037&view=diff
==============================================================================
--- openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomResourceReference.java (original)
+++ openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomResourceReference.java Tue Mar 28 03:35:19 2017
@@ -25,6 +25,7 @@ import static org.apache.openmeetings.ut
 import static org.apache.openmeetings.util.OmFileHelper.getOmHome;
 import static org.apache.openmeetings.web.app.Application.getBean;
 import static org.apache.openmeetings.web.app.Application.getOnlineClient;
+import static org.apache.openmeetings.web.app.WebSession.getUserId;
 
 import java.io.File;
 import java.util.Map.Entry;
@@ -32,6 +33,7 @@ import java.util.Map.Entry;
 import org.apache.directory.api.util.Strings;
 import org.apache.openmeetings.core.data.whiteboard.WhiteboardCache;
 import org.apache.openmeetings.db.dao.file.FileExplorerItemDao;
+import org.apache.openmeetings.db.dao.user.GroupUserDao;
 import org.apache.openmeetings.db.dto.room.Whiteboard;
 import org.apache.openmeetings.db.dto.room.Whiteboards;
 import org.apache.openmeetings.db.entity.basic.Client;
@@ -111,6 +113,9 @@ public class RoomResourceReference exten
 				}
 			}
 		}
+		if (f.getGroupId() != null && getBean(GroupUserDao.class).isUserInGroup(f.getGroupId(), getUserId())) {
+			return f;
+		}
 		return null;
 	}
 

Modified: openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/record/VideoInfo.java
URL: http://svn.apache.org/viewvc/openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/record/VideoInfo.java?rev=1789037&r1=1789036&r2=1789037&view=diff
==============================================================================
--- openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/record/VideoInfo.java (original)
+++ openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/record/VideoInfo.java Tue Mar 28 03:35:19 2017
@@ -147,8 +147,8 @@ public class VideoInfo extends Panel {
 			}
 		}
 		reConvert.setEnabled(reConvEnabled);
-		downloadBtn.setEnabled(exists);
-		share.setEnabled(exists);
+		downloadBtn.setEnabled(exists && !_r.isReadOnly());
+		share.setEnabled(exists && !_r.isReadOnly());
 		if (target != null) {
 			target.add(form);
 		}
@@ -178,8 +178,8 @@ public class VideoInfo extends Panel {
 
 			@Override
 			public boolean isEnabled() {
-				Recording r = rm.getObject();
-				return r != null && r.exists(EXTENSION_MP4);
+				FileItem r = rm.getObject();
+				return r != null && r.exists(EXTENSION_MP4) && !r.isReadOnly();
 			}
 
 			@Override