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 2021/09/20 04:15:34 UTC
[openmeetings] branch master updated: [OPENMEETINGS-2668] upload to
various 'roots' should work
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 63dd35e [OPENMEETINGS-2668] upload to various 'roots' should work
new ca98a7a Merge branch 'master' of github.com:apache/openmeetings
63dd35e is described below
commit 63dd35eee32cfe60db605793bb8ddd374e8190a4
Author: Maxim Solodovnik <so...@gmail.com>
AuthorDate: Mon Sep 20 11:14:42 2021 +0700
[OPENMEETINGS-2668] upload to various 'roots' should work
---
.../sidebar/RoomFileUploadResourceReference.java | 24 ++++++++++++----
.../web/room/sidebar/UploadDialog.html | 5 +++-
.../web/room/sidebar/UploadDialog.java | 32 ++++++++++++++--------
3 files changed, 43 insertions(+), 18 deletions(-)
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/RoomFileUploadResourceReference.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/RoomFileUploadResourceReference.java
index 7c9278f..3a8af9f 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/RoomFileUploadResourceReference.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/RoomFileUploadResourceReference.java
@@ -71,7 +71,10 @@ public class RoomFileUploadResourceReference extends ResourceReference {
private static final String PARAM_TO_WB_NAME = "room-upload-to-wb";
private static final String PARAM_CLEAN_NAME = "room-upload-clean";
private static final String PARAM_SID_NAME = "room-upload-sid";
- private static final String PARAM_LAST_SELECTED_NAME = "room-upload-last-selected";
+ public static final String PARAM_LAST_SELECTED_ID = "room-upload-last-selected-id";
+ public static final String PARAM_LAST_SELECTED_ROOM = "room-upload-last-selected-room";
+ public static final String PARAM_LAST_SELECTED_OWNER = "room-upload-last-selected-pwner";
+ public static final String PARAM_LAST_SELECTED_GROUP = "room-upload-last-selected-group";
private enum Status {
SUCCESS
, PROGRESS
@@ -114,9 +117,12 @@ public class RoomFileUploadResourceReference extends ResourceReference {
final boolean toWb = multiPartRequest.getPostParameters().getParameterValue(PARAM_TO_WB_NAME).toBoolean(false);
final boolean clean = multiPartRequest.getPostParameters().getParameterValue(PARAM_CLEAN_NAME).toBoolean(false);
- final long lastSelected = multiPartRequest.getPostParameters().getParameterValue(PARAM_LAST_SELECTED_NAME).toLong(-1L);
+ final long lastSelectedId = multiPartRequest.getPostParameters().getParameterValue(PARAM_LAST_SELECTED_ID).toLong(-1L);
+ final long lastSelectedRoom = multiPartRequest.getPostParameters().getParameterValue(PARAM_LAST_SELECTED_ROOM).toLong(-1L);
+ final long lastSelectedOwner = multiPartRequest.getPostParameters().getParameterValue(PARAM_LAST_SELECTED_OWNER).toLong(-1L);
+ final long lastSelectedGroup = multiPartRequest.getPostParameters().getParameterValue(PARAM_LAST_SELECTED_GROUP).toLong(-1L);
final String uuid = randomUUID().toString();
- startRunnable(() -> convertAll(c, fileItems, uuid, toWb, clean, lastSelected));
+ startRunnable(() -> convertAll(c, fileItems, uuid, toWb, clean, lastSelectedId, lastSelectedRoom, lastSelectedOwner, lastSelectedGroup));
prepareResponse(response, Status.SUCCESS, uuid, Application.getString("54", langId));
} else {
@@ -157,8 +163,8 @@ public class RoomFileUploadResourceReference extends ResourceReference {
return !r.isHidden(RoomElement.FILES) && c.hasRight(Right.PRESENTER);
}
- private void convertAll(Client c, List<FileItem> files, String uuid, boolean toWb, boolean clean, long lastSelected) {
- final BaseFileItem parent = fileDao.get(lastSelected);
+ private void convertAll(Client c, List<FileItem> files, String uuid, boolean toWb, boolean clean, long lastSelectedId, long lastSelectedRoom, long lastSelectedOwner, long lastSelectedGroup) {
+ final BaseFileItem parent = fileDao.get(lastSelectedId);
final long langId = getLangId(c);
final long totalSize = files.stream().mapToLong(FileItem::getSize).sum();
final AtomicInteger progress = new AtomicInteger(0);
@@ -170,7 +176,13 @@ public class RoomFileUploadResourceReference extends ResourceReference {
f.setSize(size);
f.setName(curItem.getName());
if (parent == null || BaseFileItem.Type.RECORDING == parent.getType()) {
- f.setOwnerId(getUserId());
+ if (lastSelectedGroup > -1) {
+ f.setGroupId(lastSelectedGroup);
+ } else if (lastSelectedRoom > -1) {
+ f.setRoomId(lastSelectedRoom);
+ } else {
+ f.setOwnerId(lastSelectedOwner > -1 ? lastSelectedOwner : getUserId());
+ }
} else {
f.setRoomId(parent.getRoomId());
f.setOwnerId(parent.getOwnerId());
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/UploadDialog.html b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/UploadDialog.html
index 1600d66..2333d66 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/UploadDialog.html
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/UploadDialog.html
@@ -38,7 +38,10 @@
</div>
</div>
<input wicket:id="sid" name="room-upload-sid" type="hidden"/>
- <input wicket:id="lastSelected" name="room-upload-last-selected" type="hidden" value=""/>
+ <input wicket:id="lastSelectedId" name="room-upload-last-selected-id" type="hidden" value=""/>
+ <input wicket:id="lastSelectedRoom" name="room-upload-last-selected-room" type="hidden" value=""/>
+ <input wicket:id="lastSelectedOwner" name="room-upload-last-selected-owner" type="hidden" value=""/>
+ <input wicket:id="lastSelectedGroup" name="room-upload-last-selected-group" type="hidden" value=""/>
</form>
<div class="progress d-none">
<div class="progress-bar" role="progressbar" aria-valuenow="0" aria-valuemin="0" aria-valuemax="100">0%</div>
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/UploadDialog.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/UploadDialog.java
index 270e763..c1b6510 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/UploadDialog.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/UploadDialog.java
@@ -19,9 +19,12 @@
package org.apache.openmeetings.web.room.sidebar;
import static org.apache.openmeetings.util.OpenmeetingsVariables.getMaxUploadSize;
+import static org.apache.openmeetings.web.room.sidebar.RoomFileUploadResourceReference.PARAM_LAST_SELECTED_GROUP;
+import static org.apache.openmeetings.web.room.sidebar.RoomFileUploadResourceReference.PARAM_LAST_SELECTED_ID;
+import static org.apache.openmeetings.web.room.sidebar.RoomFileUploadResourceReference.PARAM_LAST_SELECTED_OWNER;
+import static org.apache.openmeetings.web.room.sidebar.RoomFileUploadResourceReference.PARAM_LAST_SELECTED_ROOM;
-import org.apache.openmeetings.core.data.file.FileProcessor;
-import org.apache.openmeetings.db.dao.file.FileItemLogDao;
+import org.apache.openmeetings.db.entity.file.BaseFileItem;
import org.apache.openmeetings.web.app.WebSession;
import org.apache.openmeetings.web.common.OmModalCloseButton;
import org.apache.openmeetings.web.room.RoomPanel;
@@ -35,7 +38,6 @@ import org.apache.wicket.markup.html.WebMarkupContainer;
import org.apache.wicket.model.ResourceModel;
import org.apache.wicket.request.mapper.parameter.PageParameters;
import org.apache.wicket.request.resource.JavaScriptResourceReference;
-import org.apache.wicket.spring.injection.annot.SpringBean;
import org.apache.wicket.util.lang.Bytes;
import de.agilecoders.wicket.core.markup.html.bootstrap.dialog.Modal;
@@ -45,12 +47,10 @@ public class UploadDialog extends Modal<String> {
private final WebMarkupContainer form = new WebMarkupContainer("form");
private final RoomFilePanel roomFiles;
private final RoomPanel room;
- private final WebMarkupContainer lastSelected = new WebMarkupContainer("lastSelected");
-
- @SpringBean
- private FileProcessor processor;
- @SpringBean
- private FileItemLogDao fileLogDao;
+ private final WebMarkupContainer lastSelectedId = new WebMarkupContainer("lastSelectedId");
+ private final WebMarkupContainer lastSelectedRoom = new WebMarkupContainer("lastSelectedRoom"); // required for "fake" root
+ private final WebMarkupContainer lastSelectedOwner = new WebMarkupContainer("lastSelectedOwner"); // required for "fake" root
+ private final WebMarkupContainer lastSelectedGroup = new WebMarkupContainer("lastSelectedGroup"); // required for "fake" root
public UploadDialog(String id, RoomPanel room, RoomFilePanel roomFiles) {
super(id);
@@ -72,7 +72,10 @@ public class UploadDialog extends Modal<String> {
.setOutputMarkupId(true)
.setOutputMarkupPlaceholderTag(true));
form.add(new WebMarkupContainer("sid").add(AttributeModifier.append("value", room.getClient().getSid())).setMarkupId("room-upload-sid").setOutputMarkupId(true));
- form.add(lastSelected.setMarkupId("room-upload-last-selected").setOutputMarkupId(true));
+ form.add(lastSelectedId.setMarkupId(PARAM_LAST_SELECTED_ID).setOutputMarkupId(true));
+ form.add(lastSelectedRoom.setMarkupId(PARAM_LAST_SELECTED_ROOM).setOutputMarkupId(true));
+ form.add(lastSelectedOwner.setMarkupId(PARAM_LAST_SELECTED_OWNER).setOutputMarkupId(true));
+ form.add(lastSelectedGroup.setMarkupId(PARAM_LAST_SELECTED_GROUP).setOutputMarkupId(true));
add(BootstrapFileUploadBehavior.INSTANCE);
addButton(OmModalCloseButton.of("85"));
@@ -81,7 +84,14 @@ public class UploadDialog extends Modal<String> {
@Override
public Modal<String> show(IPartialPageRequestHandler handler) {
- lastSelected.add(AttributeModifier.replace("value", roomFiles.getLastSelected().getId()));
+ BaseFileItem last = roomFiles.getLastSelected();
+ if (last.getId() == null) {
+ lastSelectedRoom.add(AttributeModifier.replace("value", last.getRoomId()));
+ lastSelectedOwner.add(AttributeModifier.replace("value", last.getOwnerId()));
+ lastSelectedGroup.add(AttributeModifier.replace("value", last.getGroupId()));
+ } else {
+ lastSelectedId.add(AttributeModifier.replace("value", last.getId()));
+ }
handler.add(form.setVisible(true));
handler.appendJavaScript("Upload.bindUpload();");
return super.show(handler);