Author: solomax
Date: Thu Jan 19 06:44:28 2017
New Revision: 1779425
URL: http://svn.apache.org/viewvc?rev=1779425&view=rev
Log:
[OPENMEETINGS-1527] multi-drag works, only single drop
Modified:
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/FileTreePanel.html
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/FileTreePanel.java
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/FolderPanel.java
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/webapp/public/config.xml
openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/FileTreePanel.html
openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/FileTreePanel.java
openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/FolderPanel.java
openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java
Modified:
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/FileTreePanel.html
URL:
http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/FileTreePanel.html?rev=1779425&r1=1779424&r2=1779425&view=diff
==============================================================================
---
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/FileTreePanel.html
(original)
+++
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/FileTreePanel.html
Thu Jan 19 06:44:28 2017
@@ -22,6 +22,15 @@
<wicket:panel>
<form wicket:id="form">
<script type="text/javascript">
+ function dragHelper() {
+ var s = $(this);
+ if (s.parents('a').hasClass('ui-state-active')) {
+ s = $('.ui-state-active
.ui-draggable.ui-draggable-handle');
+ }
+ var c = $('<div/>').attr('id', 'draggingContainer');
+ c.append(s.clone());
+ return c;
+ }
function treeRevert(dropped) {
$('.file.tree .trees')[0].scrollTop =
$(this).parent()[0].offsetTop - 32;
return !dropped || (!!dropped && !!dropped.context &&
$(dropped.context).hasClass('wb', 'room'));
Modified:
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/FileTreePanel.java
URL:
http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/FileTreePanel.java?rev=1779425&r1=1779424&r2=1779425&view=diff
==============================================================================
---
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/FileTreePanel.java
(original)
+++
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/FileTreePanel.java
Thu Jan 19 06:44:28 2017
@@ -99,6 +99,7 @@ public abstract class FileTreePanel exte
super.onConfigure(behavior);
behavior.setOption("hoverClass",
Options.asString("ui-state-hover trash-toolbar-hover"));
behavior.setOption("accept",
Options.asString(".recorditem, .fileitem"));
+ behavior.setOption("drop", "function(event, ui)
{$(this).append(ui.helper.children());}");
}
@Override
@@ -262,7 +263,7 @@ public abstract class FileTreePanel exte
}
}
- private boolean sameParent(FileItem f1, FileItem f2) {
+ private static boolean sameParent(FileItem f1, FileItem f2) {
if (f1 instanceof Recording && f2 instanceof FileExplorerItem) {
return false;
}
Modified:
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/FolderPanel.java
URL:
http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/FolderPanel.java?rev=1779425&r1=1779424&r2=1779425&view=diff
==============================================================================
---
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/FolderPanel.java
(original)
+++
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/FolderPanel.java
Thu Jan 19 06:44:28 2017
@@ -58,8 +58,9 @@ public class FolderPanel extends Panel {
super.onConfigure(behavior);
behavior.setOption("hoverClass",
Options.asString("ui-state-hover"));
behavior.setOption("accept",
Options.asString(getDefaultModelObject() instanceof Recording ? ".recorditem" :
".fileitem"));
+ behavior.setOption("drop", "function(event, ui)
{$(this).append(ui.helper.children());}");
}
-
+
@Override
public void onDrop(AjaxRequestTarget target, Component
component) {
Object o = component.getDefaultModelObject();
@@ -98,19 +99,19 @@ public class FolderPanel extends Panel {
super.onConfigure(behavior);
behavior.setOption("revert",
"treeRevert");
behavior.setOption("cursor",
Options.asString("move"));
- behavior.setOption("helper", "'clone'");
+ behavior.setOption("helper",
"dragHelper");
}
}.setContainment(treePanel.getContainment());
drag.add(AttributeAppender.append("class", r instanceof
Recording ? "recorditem" : "fileitem"));
}
drag.add(r.getId() == null ? new Label("name", r.getName()) :
new AjaxEditableLabel<String>("name", Model.of(model.getObject().getName())) {
private static final long serialVersionUID = 1L;
-
+
@Override
protected String getLabelAjaxEvent() {
return "dblClick";
}
-
+
@Override
protected void onSubmit(AjaxRequestTarget target) {
super.onSubmit(target);
@@ -122,7 +123,7 @@ public class FolderPanel extends Panel {
getBean(FileExplorerItemDao.class).update((FileExplorerItem)fi);
}
}
-
+
@Override
public void onEdit(AjaxRequestTarget target) {
super.onEdit(target);
Modified:
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java
URL:
http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java?rev=1779425&r1=1779424&r2=1779425&view=diff
==============================================================================
---
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java
(original)
+++
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java
Thu Jan 19 06:44:28 2017
@@ -149,11 +149,11 @@ public class RoomPanel extends BasePanel
private String recordingUser = null;
private String publishingUser = null; //TODO add
private long activeWbId = -1;
-
+
public RoomPanel(String id, Room r) {
super(id);
this.r = r;
- //TODO check here and set
+ //TODO check here and set
//private String recordingUser = null;
//private String sharingUser = null;
//private String publishingUser = null;
@@ -174,8 +174,9 @@ public class RoomPanel extends BasePanel
super.onConfigure(behavior);
behavior.setOption("hoverClass",
Options.asString("ui-state-hover"));
behavior.setOption("accept",
Options.asString(".recorditem, .fileitem"));
+ behavior.setOption("drop", "function(event, ui)
{$(this).append(ui.helper.children());}");
}
-
+
@Override
public void onDrop(AjaxRequestTarget target, Component
component) {
Object o = component.getDefaultModelObject();
@@ -252,14 +253,14 @@ public class RoomPanel extends BasePanel
if (r.isWaitForRecording()) {
add(new MessageDialog("wait-for-recording",
getString("1316"), getString("1315"), DialogButtons.OK, DialogIcon.LIGHT) {
private static final long serialVersionUID = 1L;
-
+
@Override
public void onConfigure(JQueryBehavior
behavior) {
super.onConfigure(behavior);
behavior.setOption("autoOpen", true);
behavior.setOption("resizable", false);
}
-
+
@Override
public void onClose(IPartialPageRequestHandler
handler, DialogButton button) {
}
@@ -281,7 +282,7 @@ public class RoomPanel extends BasePanel
}
});
}
-
+
@Override
public void onEvent(IEvent<?> event) {
if (event.getPayload() instanceof WebSocketPushPayload) {
@@ -441,11 +442,11 @@ public class RoomPanel extends BasePanel
}
}
}
-
+
public static boolean isModerator(long userId, long roomId) {
return hasRight(userId, roomId, Right.moderator);
}
-
+
public static boolean hasRight(long userId, long roomId, Right r) {
for (Client c : getRoomClients(roomId)) {
if (c.getUserId().equals(userId) && c.hasRight(r)) {
@@ -454,7 +455,7 @@ public class RoomPanel extends BasePanel
}
return false;
}
-
+
public static void sendRoom(long roomId, String msg) {
IWebSocketConnectionRegistry reg =
WebSocketSettings.Holder.get(Application.get()).getConnectionRegistry();
for (Client c : getRoomClients(roomId)) {
@@ -555,7 +556,7 @@ public class RoomPanel extends BasePanel
RoomPanel.broadcast(new
TextRoomMessage(getRoom().getId(), getUserId(), reqType, getClient().getUid()));
}
}
-
+
public void allowRight(AjaxRequestTarget target, Client client,
Right... rights) {
for (Right right : rights) {
client.getRights().add(right);
@@ -579,16 +580,16 @@ public class RoomPanel extends BasePanel
public void kickUser(AjaxRequestTarget target, Client client) {
RoomPanel.broadcast(new TextRoomMessage(client.getRoomId(),
client.getUserId(), Type.kick, client.getUid()));
}
-
+
public void broadcast(AjaxRequestTarget target, Client client) {
broadcast(new RoomMessage(getRoom().getId(), getUserId(),
RoomMessage.Type.rightUpdated));
RoomBroadcaster.sendUpdatedClient(client);
}
-
+
public Room getRoom() {
return r;
}
-
+
public Client getClient() {
return getMainPanel().getClient();
}
@@ -598,7 +599,7 @@ public class RoomPanel extends BasePanel
return Room.Type.interview != r.getType() &&
!r.isHidden(RoomElement.ScreenSharing)
&& r.isAllowRecording() &&
getClient().hasRight(Right.share) && getSharingUser() == null;
}
-
+
public RoomSidebar getSidebar() {
return sidebar;
}
@@ -606,7 +607,7 @@ public class RoomPanel extends BasePanel
public ActivitiesPanel getActivities() {
return activities;
}
-
+
public String getSharingUser() {
return sharingUser;
}
Modified:
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/webapp/public/config.xml
URL:
http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-web/src/main/webapp/public/config.xml?rev=1779425&r1=1779424&r2=1779425&view=diff
==============================================================================
---
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/webapp/public/config.xml
(original)
+++
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/webapp/public/config.xml
Thu Jan 19 06:44:28 2017
@@ -138,7 +138,7 @@ of the red5-servlet
h264
If you want to use red5sip, set value to "h264"
-->
-<codecType>h264</codecType>
+<codecType>h263</codecType>
<!-- Camera Settings for the FramesPerSecond
Modified:
openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/FileTreePanel.html
URL:
http://svn.apache.org/viewvc/openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/FileTreePanel.html?rev=1779425&r1=1779424&r2=1779425&view=diff
==============================================================================
---
openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/FileTreePanel.html
(original)
+++
openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/FileTreePanel.html
Thu Jan 19 06:44:28 2017
@@ -22,6 +22,15 @@
<wicket:panel>
<form wicket:id="form">
<script type="text/javascript">
+ function dragHelper() {
+ var s = $(this);
+ if (s.parents('a').hasClass('ui-state-active')) {
+ s = $('.ui-state-active
.ui-draggable.ui-draggable-handle');
+ }
+ var c = $('<div/>').attr('id', 'draggingContainer');
+ c.append(s.clone());
+ return c;
+ }
function treeRevert(dropped) {
$('.file.tree .trees')[0].scrollTop =
$(this).parent()[0].offsetTop - 32;
return !dropped || (!!dropped && !!dropped.context &&
$(dropped.context).hasClass('wb', 'room'));
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=1779425&r1=1779424&r2=1779425&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
Thu Jan 19 06:44:28 2017
@@ -99,6 +99,7 @@ public abstract class FileTreePanel exte
super.onConfigure(behavior);
behavior.setOption("hoverClass",
Options.asString("ui-state-hover trash-toolbar-hover"));
behavior.setOption("accept",
Options.asString(".recorditem, .fileitem"));
+ behavior.setOption("drop", "function(event, ui)
{$(this).append(ui.helper.children());}");
}
@Override
@@ -262,7 +263,7 @@ public abstract class FileTreePanel exte
}
}
- private boolean sameParent(FileItem f1, FileItem f2) {
+ private static boolean sameParent(FileItem f1, FileItem f2) {
if (f1 instanceof Recording && f2 instanceof FileExplorerItem) {
return false;
}
Modified:
openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/FolderPanel.java
URL:
http://svn.apache.org/viewvc/openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/FolderPanel.java?rev=1779425&r1=1779424&r2=1779425&view=diff
==============================================================================
---
openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/FolderPanel.java
(original)
+++
openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/FolderPanel.java
Thu Jan 19 06:44:28 2017
@@ -58,8 +58,9 @@ public class FolderPanel extends Panel {
super.onConfigure(behavior);
behavior.setOption("hoverClass",
Options.asString("ui-state-hover"));
behavior.setOption("accept",
Options.asString(getDefaultModelObject() instanceof Recording ? ".recorditem" :
".fileitem"));
+ behavior.setOption("drop", "function(event, ui)
{$(this).append(ui.helper.children());}");
}
-
+
@Override
public void onDrop(AjaxRequestTarget target, Component
component) {
Object o = component.getDefaultModelObject();
@@ -98,19 +99,19 @@ public class FolderPanel extends Panel {
super.onConfigure(behavior);
behavior.setOption("revert",
"treeRevert");
behavior.setOption("cursor",
Options.asString("move"));
- behavior.setOption("helper", "'clone'");
+ behavior.setOption("helper",
"dragHelper");
}
}.setContainment(treePanel.getContainment());
drag.add(AttributeAppender.append("class", r instanceof
Recording ? "recorditem" : "fileitem"));
}
drag.add(r.getId() == null ? new Label("name", r.getName()) :
new AjaxEditableLabel<String>("name", Model.of(model.getObject().getName())) {
private static final long serialVersionUID = 1L;
-
+
@Override
protected String getLabelAjaxEvent() {
return "dblClick";
}
-
+
@Override
protected void onSubmit(AjaxRequestTarget target) {
super.onSubmit(target);
@@ -122,7 +123,7 @@ public class FolderPanel extends Panel {
getBean(FileExplorerItemDao.class).update((FileExplorerItem)fi);
}
}
-
+
@Override
public void onEdit(AjaxRequestTarget target) {
super.onEdit(target);
Modified:
openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java
URL:
http://svn.apache.org/viewvc/openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java?rev=1779425&r1=1779424&r2=1779425&view=diff
==============================================================================
---
openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java
(original)
+++
openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java
Thu Jan 19 06:44:28 2017
@@ -150,11 +150,11 @@ public class RoomPanel extends BasePanel
private String recordingUser = null;
private String publishingUser = null; //TODO add
private long activeWbId = -1;
-
+
public RoomPanel(String id, Room r) {
super(id);
this.r = r;
- //TODO check here and set
+ //TODO check here and set
//private String recordingUser = null;
//private String sharingUser = null;
//private String publishingUser = null;
@@ -175,8 +175,9 @@ public class RoomPanel extends BasePanel
super.onConfigure(behavior);
behavior.setOption("hoverClass",
Options.asString("ui-state-hover"));
behavior.setOption("accept",
Options.asString(".recorditem, .fileitem"));
+ behavior.setOption("drop", "function(event, ui)
{$(this).append(ui.helper.children());}");
}
-
+
@Override
public void onDrop(AjaxRequestTarget target, Component
component) {
Object o = component.getDefaultModelObject();
@@ -255,14 +256,14 @@ public class RoomPanel extends BasePanel
if (r.isWaitForRecording()) {
add(new MessageDialog("wait-for-recording",
getString("1316"), getString("1315"), DialogButtons.OK, DialogIcon.LIGHT) {
private static final long serialVersionUID = 1L;
-
+
@Override
public void onConfigure(JQueryBehavior
behavior) {
super.onConfigure(behavior);
behavior.setOption("autoOpen", true);
behavior.setOption("resizable", false);
}
-
+
@Override
public void onClose(IPartialPageRequestHandler
handler, DialogButton button) {
}
@@ -284,7 +285,7 @@ public class RoomPanel extends BasePanel
}
});
}
-
+
@Override
public void onEvent(IEvent<?> event) {
if (event.getPayload() instanceof WebSocketPushPayload) {
@@ -444,11 +445,11 @@ public class RoomPanel extends BasePanel
}
}
}
-
+
public static boolean isModerator(long userId, long roomId) {
return hasRight(userId, roomId, Right.moderator);
}
-
+
public static boolean hasRight(long userId, long roomId, Right r) {
for (Client c : getRoomClients(roomId)) {
if (c.getUserId().equals(userId) && c.hasRight(r)) {
@@ -457,7 +458,7 @@ public class RoomPanel extends BasePanel
}
return false;
}
-
+
public static void sendRoom(long roomId, String msg) {
IWebSocketConnectionRegistry reg =
WebSocketSettings.Holder.get(Application.get()).getConnectionRegistry();
for (Client c : getRoomClients(roomId)) {
@@ -557,7 +558,7 @@ public class RoomPanel extends BasePanel
RoomPanel.broadcast(new
TextRoomMessage(getRoom().getId(), getUserId(), reqType, getClient().getUid()));
}
}
-
+
public void allowRight(AjaxRequestTarget target, Client client,
Right... rights) {
for (Right right : rights) {
client.getRights().add(right);
@@ -581,16 +582,16 @@ public class RoomPanel extends BasePanel
public void kickUser(AjaxRequestTarget target, Client client) {
RoomPanel.broadcast(new TextRoomMessage(client.getRoomId(),
client.getUserId(), Type.kick, client.getUid()));
}
-
+
public void broadcast(AjaxRequestTarget target, Client client) {
broadcast(new RoomMessage(getRoom().getId(), getUserId(),
RoomMessage.Type.rightUpdated));
RoomBroadcaster.sendUpdatedClient(client);
}
-
+
public Room getRoom() {
return r;
}
-
+
public Client getClient() {
return getMainPanel().getClient();
}
@@ -600,7 +601,7 @@ public class RoomPanel extends BasePanel
return Room.Type.interview != r.getType() &&
!r.isHidden(RoomElement.ScreenSharing)
&& r.isAllowRecording() &&
getClient().hasRight(Right.share) && getSharingUser() == null;
}
-
+
public RoomSidebar getSidebar() {
return sidebar;
}
@@ -608,7 +609,7 @@ public class RoomPanel extends BasePanel
public ActivitiesPanel getActivities() {
return activities;
}
-
+
public String getSharingUser() {
return sharingUser;
}