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 2015/11/27 06:59:50 UTC
svn commit: r1716796 - in /openmeetings:
branches/3.1.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/servlet/outputhandler/
branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/file/
branches/3.1.x/openmeetings-db...
Author: solomax
Date: Fri Nov 27 05:59:50 2015
New Revision: 1716796
URL: http://svn.apache.org/viewvc?rev=1716796&view=rev
Log:
[OPENMEETINGS-1279] folder add/rename works as expected, code clean-up
Removed:
openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/base/remote/datasetHelper.lzx
Modified:
openmeetings/branches/3.1.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/servlet/outputhandler/UploadController.java
openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/file/FileExplorerItemDao.java
openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/file/FileExplorerItemDTO.java
openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/base/hibernate/hibRtmpConnection.lzx
openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/base/mainMethods.lzx
openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/base/remote/library.lzx
openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/modules/conference/tabcontent/fileexplorer/dynamicFileName.lzx
openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/modules/conference/tabcontent/fileexplorer/fileExplorer.lzx
openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/modules/conference/tabcontent/fileexplorer/restCall.lzx
openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/modules/conference/tabcontent/fileexplorer/treeitems/baseFileExplorerItem.lzx
openmeetings/branches/3.1.x/openmeetings-web/src/main/webapp/WEB-INF/web.xml
openmeetings/branches/3.1.x/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/ErrorWebService.java
openmeetings/branches/3.1.x/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/FileWebService.java
openmeetings/trunk/singlewebapp/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/file/FileExplorerItemDao.java
openmeetings/trunk/singlewebapp/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/file/FileExplorerItemDTO.java
openmeetings/trunk/singlewebapp/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/ErrorWebService.java
openmeetings/trunk/singlewebapp/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/FileWebService.java
Modified: openmeetings/branches/3.1.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/servlet/outputhandler/UploadController.java
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/servlet/outputhandler/UploadController.java?rev=1716796&r1=1716795&r2=1716796&view=diff
==============================================================================
--- openmeetings/branches/3.1.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/servlet/outputhandler/UploadController.java (original)
+++ openmeetings/branches/3.1.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/servlet/outputhandler/UploadController.java Fri Nov 27 05:59:50 2015
@@ -156,17 +156,6 @@ public class UploadController extends Ab
msg.setFileHash(fileExplorerItem.getHash());
}
- @RequestMapping(value = "/remotelog.upload", method = RequestMethod.POST)
- public void handleRemoteLog(HttpServletRequest request, HttpServletResponse response) throws ServletException {
- String message = request.getParameter("message");
- String sid = request.getParameter("sid");
- if (sid == null || message == null) return;
- Long userId = sessiondataDao.checkSession(sid);
- if (userId != null && userId != 0) {
- log.debug("[CLIENT MESSAGE] " + message);
- }
- }
-
@RequestMapping(value = "/upload.upload", method = RequestMethod.POST)
public void handleFormUpload(HttpServletRequest request, HttpServletResponse response) throws ServletException {
try {
Modified: openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/file/FileExplorerItemDao.java
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/file/FileExplorerItemDao.java?rev=1716796&r1=1716795&r2=1716796&view=diff
==============================================================================
--- openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/file/FileExplorerItemDao.java (original)
+++ openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/file/FileExplorerItemDao.java Fri Nov 27 05:59:50 2015
@@ -205,25 +205,17 @@ public class FileExplorerItemDao {
* @param id
* @param name
*/
- public void updateFileOrFolderName(Long id, String name) {
- log.debug(".updateFileOrFolderName() started");
+ public FileExplorerItem rename(Long id, String name) {
+ log.debug("rename started");
- try {
+ FileExplorerItem f = get(id);
- FileExplorerItem fId = get(id);
+ f.setName(name);
- fId.setName(name);
- fId.setUpdated(new Date());
-
- update(fId);
- } catch (Exception ex2) {
- log.error("[updateFileOrFolderName]: ", ex2);
- }
+ return update(f);
}
public FileExplorerItem update(FileExplorerItem f) {
- // fId.setUpdated(new Date());
-
if (f.getId() == null) {
f.setInserted(new Date());
em.persist(f);
Modified: openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/file/FileExplorerItemDTO.java
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/file/FileExplorerItemDTO.java?rev=1716796&r1=1716795&r2=1716796&view=diff
==============================================================================
--- openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/file/FileExplorerItemDTO.java (original)
+++ openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/file/FileExplorerItemDTO.java Fri Nov 27 05:59:50 2015
@@ -74,9 +74,9 @@ public class FileExplorerItemDTO impleme
f.setId(id);
f.setName(name);
f.setHash(hash);
- f.setParentId(parentId);
- f.setRoomId(roomId);
- f.setOwnerId(ownerId);
+ f.setParentId(parentId != null && parentId > 0 ? parentId : null);
+ f.setRoomId(roomId != null && roomId > 0 ? roomId : null);
+ f.setOwnerId(ownerId != null && ownerId > 0 ? ownerId : null);
f.setSize(size);
f.setExternalId(externalId);
f.setExternalType(externalType);
Modified: openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/base/hibernate/hibRtmpConnection.lzx
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/base/hibernate/hibRtmpConnection.lzx?rev=1716796&r1=1716795&r2=1716796&view=diff
==============================================================================
--- openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/base/hibernate/hibRtmpConnection.lzx (original)
+++ openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/base/hibernate/hibRtmpConnection.lzx Fri Nov 27 05:59:50 2015
@@ -20,10 +20,6 @@
-->
<library>
-<dataset name="myresultnavi" />
-
-<dataset name="languagesSet" />
-
<class name="userStatus" extends="view" width="250" height="30">
<attribute name="statusText" type="string" />
<attribute name="statusColor" type="number" value="0" />
@@ -329,47 +325,7 @@
if (userlang == -1 && canvas.language_id != 0) {
userlang = canvas.language_id;
} else if (userlang == -1) {
- var lang_id = canvas.default_lang_id;
-
- var browserLang = ExternalInterface.call("function(){return window.navigator.systemLanguage || window.navigator.userLanguage || window.navigator.language;}");
- if (browserLang == null) {
- browserLang = "" + Capabilities.language;
- }
- if (browserLang != null && browserLang.length > 1) {
- var lngCode = browserLang.substring(0, 2);
-
- //openlaszlo XPath is able to search nothing, so will iterate
- var xpath = "languagesSet:/item";
- var list = languagesSet.getPointer().xpathQuery(xpath);
-
- var partMatch = -1, fullMatch = -1;
- for (var i = 1; list != null && i <= list.length; ++i) {
- xpath = "languagesSet:/item[" + i + "]/code/text()";
- var val = languagesSet.getPointer().xpathQuery(xpath);
- if (val != null && val.length > 1) {
- var partCode = ("" + val).substring(0, 2);
-
- if (browserLang == val) {
- fullMatch = i;
- } else if (lngCode == val) {
- partMatch = i;
- } else if (partCode == lngCode) {
- partMatch = i;
- }
- }
- }
- if (partMatch != -1 || fullMatch != -1) {
- i = (fullMatch != -1) ? fullMatch : partMatch;
- xpath = "languagesSet:/item[" + i + "]/language_id/text()";
- lang_id = languagesSet.getPointer().xpathQuery(xpath);
- }
- }
-
- if (canvas.language_id == 0) {
- userlang = lang_id;
- } else {
- userlang = canvas.language_id;
- }
+ userlang = canvas.default_lang_id;
}
]]>
</method>
Modified: openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/base/mainMethods.lzx
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/base/mainMethods.lzx?rev=1716796&r1=1716795&r2=1716796&view=diff
==============================================================================
--- openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/base/mainMethods.lzx (original)
+++ openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/base/mainMethods.lzx Fri Nov 27 05:59:50 2015
@@ -130,6 +130,7 @@
-->
<attribute name="colorArray" value="null" />
+ <attribute name="errorLoader" />
<method name="getColorForUser">
<![CDATA[
@@ -141,18 +142,15 @@
<method name="remoteLogWrite" args="message">
if ($debug) Debug.warn("remoteLogWrite:: ", message);
- var request:URLRequest = new URLRequest(canvas.getUrl() + "remotelog.upload");
- var requestVars:URLVariables = new URLVariables();
- requestVars.message = message;
- requestVars.sid = canvas.sessionId;
- request.data = requestVars;
- request.method = URLRequestMethod.POST;
-
- try {
- new URLLoader().load(request);
- } catch (e:Error) {
- if ($debug) Debug.error(e);
+ if (!errorLoader) {
+ errorLoader = new RestCall({
+ url: canvas.getUrl() + 'services/error/report/'
+ , method: URLRequestMethod.POST
+ });
}
+ var vars:URLVariables = new URLVariables();
+ vars.message = message;
+ errorLoader.load(vars);
</method>
<method name="getHttpHost">
@@ -166,8 +164,7 @@
<method name="getUrl">
<![CDATA[
- return canvas.protocol + '://' + getHttpHost()
- + ':' + canvas.red5httpport + canvas.httpRootKey;
+ return canvas.protocol + '://' + getHttpHost() + ':' + canvas.red5httpport + canvas.httpRootKey;
]]>
</method>
Modified: openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/base/remote/library.lzx
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/base/remote/library.lzx?rev=1716796&r1=1716795&r2=1716796&view=diff
==============================================================================
--- openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/base/remote/library.lzx (original)
+++ openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/base/remote/library.lzx Fri Nov 27 05:59:50 2015
@@ -22,6 +22,5 @@
<include href="baseVideoView.lzx" />
<include href="baseVideoStream.lzx" />
<include href="baseVideoStreamDevice.lzx" />
- <include href="datasetHelper.lzx" />
<include href="rtmpConnection.lzx" />
</library>
Modified: openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/modules/conference/tabcontent/fileexplorer/dynamicFileName.lzx
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/modules/conference/tabcontent/fileexplorer/dynamicFileName.lzx?rev=1716796&r1=1716795&r2=1716796&view=diff
==============================================================================
--- openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/modules/conference/tabcontent/fileexplorer/dynamicFileName.lzx (original)
+++ openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/modules/conference/tabcontent/fileexplorer/dynamicFileName.lzx Fri Nov 27 05:59:50 2015
@@ -51,82 +51,73 @@
</handler>
<method name="add">
- <![CDATA[
- if ($debug) Debug.write("addFolder:: ", this);
- if (!addFolderLoader) {
- addFolderLoader = new RestCall({
- url: canvas.getUrl() + 'services/file/'
- , method: URLRequestMethod.POST
- , dataFormat: URLLoaderDataFormat.BINARY
- , contentType: "multipart/form-data; boundary=" + UploadPostHelper.getBoundary()
- , errorCallback: httpRequestError
- , successCallback: addFolderComplete
- });
- }
- var vars = UploadPostHelper.getPostData(null, null, [
- {
- name: 'file'
- , type: 'application/json'
- , value: JSON.stringify({fileExplorerItemDTO: {
- name: this.text
- , parentId: this.refObj.parentId > 0 ? this.refObj.parentId : null
- , roomId: this.refObj.roomId > 0 ? this.refObj.roomId : null
- , ownerId: this.refObj.ownerId > 0 ? this.refObj.ownerId : null
- , type: this.refObj.type
- }})
- }
- ]);
- if ($debug) Debug.write("addFolder:: ", vars);
- addFolderLoader.load(vars);
- //FIXME TODO revert changes on error
- ]]>
- </method>
-
+ <![CDATA[
+ if ($debug) Debug.write("addFolder:: ", this);
+ if (!addFolderLoader) {
+ addFolderLoader = new RestCall({
+ url: canvas.getUrl() + 'services/file/'
+ , method: URLRequestMethod.POST
+ , dataFormat: URLLoaderDataFormat.BINARY
+ , contentType: "multipart/form-data; charset=utf-8; boundary=" + UploadPostHelper.getBoundary()
+ , errorCallback: addFolderError
+ , successCallback: addFolderComplete
+ });
+ }
+ var vars = UploadPostHelper.getPostData(null, null, [
+ {
+ name: 'file'
+ , type: 'application/json'
+ , value: JSON.stringify({fileExplorerItemDTO: {
+ name: this.text
+ , parentId: this.refObj.parentId
+ , roomId: this.refObj.roomId
+ , ownerId: this.refObj.ownerId
+ , type: this.refObj.type
+ }})
+ }
+ ]);
+ //if ($debug) Debug.write("addFolder:: ", vars);
+ addFolderLoader.load(vars);
+ ]]>
+ </method>
+
<method name="addFolderComplete" args="event">
- if ($debug) Debug.info("addFolderComplete ", event);
- completed();
+ var o = JSON.parse(event.target.data);
+ var f = o.fileExplorerItemDTO;
+ if ($debug) Debug.info("addFolderComplete ", event, o);
+ this.refObj.setAttribute("fileName", f.name);
+ this.refObj.setAttribute("fileId", f.id);
+ this.refObj.parent.parent.doOpen();
+ this.destroy();
</method>
- <method name="httpRequestError" args="event">
- if ($debug) Debug.error("httpRequestError ", event);
- completed();
+ <method name="addFolderError" args="event">
+ if ($debug) Debug.error("addFolderError ", event);
+ this.refObj.destroy();
+ this.destroy();
</method>
- <method name="rename">
- <![CDATA[
- if ($debug) Debug.write("moveFile HTTP 1: ");
- var downloadurl = canvas.getUrl()+'services/FileService/updateFileOrFolderNameSelf?'
- +'SID='+canvas.sessionId
- +'&fileId='+this.fileId
- +'&fileName='+this.text;
-
- this.updateFileOrFolderNameSelf.setAttribute("src",downloadurl);
- if ($debug) Debug.write("updateFileOrFolderNameSelf doRequest ",downloadurl);
- this.updateFileOrFolderNameSelf.doRequest();
- ]]>
- </method>
-
- <dataset name="updateFileOrFolderNameSelf" type="http" >
- <handler name="ondata" args="d">
- <![CDATA[
- //if ($debug) Debug.write("ondata ",d);
- if ($debug) Debug.write("updateFileOrFolderNameSelf: ",d);
- parent.completedRename();
- ]]>
- </handler>
- </dataset>
-
- <method name="completed">
+ <method name="rename">
+ <![CDATA[
+ var moveLoader = new RestCall({
+ url: canvas.getUrl() + 'services/file/rename/' + this.refObj.fileId + '/' + this.text
+ , method: URLRequestMethod.POST
+ , errorCallback: renameError
+ , successCallback: renameComplete
+ });
+ moveLoader.load(' ');
+ ]]>
+ </method>
+
+ <method name="renameComplete" args="event">
this.refObj.setAttribute("fileName", this.text);
- this.refObj.parent.parent.doOpen();
this.destroy();
</method>
- <method name="completedRename">
- this.refObj.setAttribute("fileName",this.text);
+ <method name="renameError" args="event">
+ if ($debug) Debug.error("renameError ", event);
this.destroy();
</method>
-
</class>
</library>
Modified: openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/modules/conference/tabcontent/fileexplorer/fileExplorer.lzx
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/modules/conference/tabcontent/fileexplorer/fileExplorer.lzx?rev=1716796&r1=1716795&r2=1716796&view=diff
==============================================================================
--- openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/modules/conference/tabcontent/fileexplorer/fileExplorer.lzx (original)
+++ openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/modules/conference/tabcontent/fileexplorer/fileExplorer.lzx Fri Nov 27 05:59:50 2015
@@ -185,96 +185,6 @@
el.setAttribute("text","" + sizem + " MBytes");
</method>
- <method name="setNodes" args="list, root">
- <![CDATA[
- //if ($debug) Debug.info("setNodes:: ", list.length, list);
- if (!list) {
- return;
- }
- if (!list.length) {
- list = [list];
- }
- for (var i = 0; i < list.length; ++i) {
- var f = list[i];
- //if ($debug) Debug.write("fileItem, ", f, root);
- switch (f.type) {
- case 'Folder':
- new lz.folderFileExplorerItem(root.content,{
- fileId: f.id
- , fileName: f.name
- , fileIcon: 'icon_folder_rsc'
- , type: f.type
- , ownerId: f.ownerId
- , roomId: f.roomId
- , refObjListRoot:this
- });
- break;
- case 'Image':
- new lz.imageFileExplorerItem(root.content,{
- fileId: f.id
- , fileName: f.name
- , fileHash: f.hash
- , type: f.type
- , ownerId: f.ownerId
- , roomId: f.roomId
- , fileIcon: 'file_explorer_image_rsc'
- , refObjListRoot: this
- });
- break;
- case 'Presentation':
- new lz.documentFileExplorerItem(root.content,{
- fileId: f.id
- , fileName: f.name
- , fileHash: f.hash
- , type: f.type
- , ownerId: f.ownerId
- , roomId: f.roomId
- , fileIcon: 'file_explorer_document_rsc'
- , refObjListRoot: this
- });
- break;
- case 'Video':
- new lz.videoFileExplorerItem(root.content,{
- fileId: f.id
- , fileName: f.name
- , fileHash: f.hash
- , type: f.type
- , ownerId: f.ownerId
- , roomId: f.roomId
- , fileIcon: 'file_explorer_video_rsc'
- , flvHeight: f.flvHeight
- , flvWidth: f.flvWidth
- , refObjListRoot: this
- });
- break;
- case 'WmlFile':
- new lz.wmlFileExplorerItem(root.content,{
- fileId: f.id
- , fileName: f.name
- , fileIcon: 'file_explorer_wml_rsc'
- , type: f.type
- , ownerId: f.ownerId
- , roomId: f.roomId
- , isWmlFile: true
- , refObjListRoot: this
- });
- break;
- case 'PollChart':
- new lz.wmlFileExplorerItem(root.content,{
- fileId: f.id
- , fileName: f.name
- , fileIcon: 'file_explorer_chart_rsc'
- , type: f.type
- , ownerId: f.ownerId
- , roomId: f.roomId
- , refObjListRoot: this
- });
- break;
- }
- }
- ]]>
- </method>
-
<method name="createRootItems" args="roomObject">
<![CDATA[
this.clearContent();
@@ -296,8 +206,7 @@
userHome.content.setAttribute("visibility", "visible");
userHome.icon_folder_pre.setAttribute("frame", 2);
userHome._folderIcon.setAttribute("frame", 2);
- if ($debug) Debug.info("createUserRootItems ");
- setNodes(roomObject.userHome, userHome);
+ userHome.setNodes(roomObject.userHome);
var roomHome = new lz.rootFileExplorerItem(this._filearea._contentarea,{
open: true
@@ -312,8 +221,7 @@
roomHome.content.setAttribute("visibility", "visible");
roomHome.icon_folder_pre.setAttribute("frame", 2);
roomHome._folderIcon.setAttribute("frame", 2);
- if ($debug) Debug.info("createRoomRootItems ");
- setNodes(roomObject.roomHome, roomHome);
+ roomHome.setNodes(roomObject.roomHome);
]]>
</method>
Modified: openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/modules/conference/tabcontent/fileexplorer/restCall.lzx
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/modules/conference/tabcontent/fileexplorer/restCall.lzx?rev=1716796&r1=1716795&r2=1716796&view=diff
==============================================================================
--- openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/modules/conference/tabcontent/fileexplorer/restCall.lzx (original)
+++ openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/modules/conference/tabcontent/fileexplorer/restCall.lzx Fri Nov 27 05:59:50 2015
@@ -194,7 +194,7 @@
import flash.net.*;
}#
private var url:String = null;
- private var method:String = null;
+ private var method:String = URLRequestMethod.GET;
private var contentType:String = null;
private var dataFormat:String = "text";
private var errorCallback:Function;
@@ -245,7 +245,11 @@
//Add the URL vars
request.data = vars;
- requestor.load(request);
+ try {
+ requestor.load(request);
+ } catch (e:Error) {
+ if ($debug) Debug.error(e);
+ }
}
}
]]>
Modified: openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/modules/conference/tabcontent/fileexplorer/treeitems/baseFileExplorerItem.lzx
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/modules/conference/tabcontent/fileexplorer/treeitems/baseFileExplorerItem.lzx?rev=1716796&r1=1716795&r2=1716796&view=diff
==============================================================================
--- openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/modules/conference/tabcontent/fileexplorer/treeitems/baseFileExplorerItem.lzx (original)
+++ openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/modules/conference/tabcontent/fileexplorer/treeitems/baseFileExplorerItem.lzx Fri Nov 27 05:59:50 2015
@@ -21,6 +21,13 @@
<library>
<class name="baseFileExplorerItem" extends="view">
+ <switch>
+ <when property="$as3">
+ <passthrough>
+ import flash.net.*;
+ </passthrough>
+ </when>
+ </switch>
<attribute name="refObjListRoot" value="null"/>
<attribute name="isRoot" value="false" type="boolean" />
<attribute name="fileIcon" type="string" value="string" />
@@ -39,19 +46,20 @@
<attribute name="mouseDownClickUsed" value="false" type="boolean" />
<attribute name="mouseDownClickDelegate" value="null" />
<attribute name="isTrashCan" value="false" type="boolean" />
-
+ <attribute name="folderLoader" />
+
<handler name="oninit">
this.singleClickDelegate = new LzDelegate( this, "doSingleClick" );
this.resetClickDelegate = new LzDelegate( this, "doResetSingleClick" );
this.mouseDownClickDelegate = new LzDelegate( this, "doMouseDownClick" );
- if (this.type = 'Folder') {
+ if (this.type == 'Folder') {
lz.Track.register(this._fileName, canvas.currentImagesListdraw.currentTrackGroupName);
}
</handler>
<method name="doOpen">
this.open = true;
- if (this.type = 'Folder') {
+ if (this.type == 'Folder') {
this.icon_folder_pre.setAttribute("frame",2);
this.content.setAttribute("visibility","visible");
this._folderIcon.setAttribute("frame",2);
@@ -61,7 +69,7 @@
<method name="doClose">
this.open = false;
- if (this.type = 'Folder') {
+ if (this.type == 'Folder') {
this.icon_folder_pre.setAttribute("frame",1);
this.content.setAttribute("visibility","hidden");
this._folderIcon.setAttribute("frame",1);
@@ -378,37 +386,37 @@
</method>
<method name="clearContent">
- <![CDATA[
- for (var eg in this.content.subviews) {
- this.content.subviews[eg].destroy();
- }
- ]]>
- </method>
-
- <method name="loadFiles">
- <![CDATA[
- var downloadurl = canvas.getUrl()+'services/FileService/getFileExplorerByParentSelfInternal?'
- +'SID='+canvas.sessionId
- +'&parentFileExplorerItemId='+this.fileId
- +'&roomId='+hib.currentroomid
- +'&isOwner='+this.isOwner;
-
- this.getFileExplorerByParentSelf.setAttribute("src",downloadurl);
- if ($debug) Debug.write("getFileExplorerByParentSelf doRequest ",downloadurl);
- this.getFileExplorerByParentSelf.doRequest();
- ]]>
- </method>
+ <![CDATA[
+ while (this.content.subviews.length > 0) {
+ this.content.subviews[0].destroy();
+ }
+ ]]>
+ </method>
- <dataset name="getFileExplorerByParentSelf" type="http" >
- <handler name="ondata" args="d">
- <![CDATA[
- //if ($debug) Debug.write("ondata ",d);
- //FIXME TODO
- parent.renderFilesAndFolders(canvas.currentFileExplorer.parseParentToRoomObject(d));
- ]]>
- </handler>
- </dataset>
+ <method name="loadFiles">
+ <![CDATA[
+ if (!folderLoader) {
+ folderLoader = new RestCall({
+ url: canvas.getUrl() + 'services/file/room/' + hib.currentroomid + '/' + this.fileId
+ , method: URLRequestMethod.GET
+ , errorCallback: loadFilesError
+ , successCallback: loadFilesComplete
+ });
+ }
+ folderLoader.load('');
+ ]]>
+ </method>
+
+ <method name="loadFilesComplete" args="event">
+ var o = JSON.parse(event.target.data);
+ if ($debug) Debug.info("base::loadFilesComplete ", o);
+ setNodes(o.fileExplorerItemDTO);
+ </method>
+ <method name="loadFilesError" args="event">
+ if ($debug) Debug.error("base::loadFilesError ", event);
+ </method>
+
<view name="icon_folder_pre" visible="$once{ parent.type == 'Folder' }" resource="icon_folder_pre_rsc" frame="1" >
<handler name="onclick">
parent.toggleOpen(false);
@@ -465,7 +473,96 @@
<method name="downloadImageByName">
lz.Browser.loadURL(this.getDownloadURL(this.fileHash, ''), '_parent');
</method>
-</class>
-
+ <method name="setNodes" args="list">
+ <![CDATA[
+ this.clearContent();
+ //if ($debug) Debug.info("setNodes:: ", list.length, list);
+ if (!list) {
+ return;
+ }
+ if (!list.length) {
+ list = [list];
+ }
+ for (var i = 0; i < list.length; ++i) {
+ var f = list[i];
+ //if ($debug) Debug.write("fileItem, ", f);
+ switch (f.type) {
+ case 'Folder':
+ new lz.folderFileExplorerItem(this.content,{
+ fileId: f.id
+ , fileName: f.name
+ , fileIcon: 'icon_folder_rsc'
+ , type: f.type
+ , ownerId: f.ownerId
+ , roomId: f.roomId
+ , refObjListRoot:this
+ });
+ break;
+ case 'Image':
+ new lz.imageFileExplorerItem(this.content,{
+ fileId: f.id
+ , fileName: f.name
+ , fileHash: f.hash
+ , type: f.type
+ , ownerId: f.ownerId
+ , roomId: f.roomId
+ , fileIcon: 'file_explorer_image_rsc'
+ , refObjListRoot: this
+ });
+ break;
+ case 'Presentation':
+ new lz.documentFileExplorerItem(this.content,{
+ fileId: f.id
+ , fileName: f.name
+ , fileHash: f.hash
+ , type: f.type
+ , ownerId: f.ownerId
+ , roomId: f.roomId
+ , fileIcon: 'file_explorer_document_rsc'
+ , refObjListRoot: this
+ });
+ break;
+ case 'Video':
+ new lz.videoFileExplorerItem(this.content,{
+ fileId: f.id
+ , fileName: f.name
+ , fileHash: f.hash
+ , type: f.type
+ , ownerId: f.ownerId
+ , roomId: f.roomId
+ , fileIcon: 'file_explorer_video_rsc'
+ , flvHeight: f.flvHeight
+ , flvWidth: f.flvWidth
+ , refObjListRoot: this
+ });
+ break;
+ case 'WmlFile':
+ new lz.wmlFileExplorerItem(this.content,{
+ fileId: f.id
+ , fileName: f.name
+ , fileIcon: 'file_explorer_wml_rsc'
+ , type: f.type
+ , ownerId: f.ownerId
+ , roomId: f.roomId
+ , isWmlFile: true
+ , refObjListRoot: this
+ });
+ break;
+ case 'PollChart':
+ new lz.wmlFileExplorerItem(this.content,{
+ fileId: f.id
+ , fileName: f.name
+ , fileIcon: 'file_explorer_chart_rsc'
+ , type: f.type
+ , ownerId: f.ownerId
+ , roomId: f.roomId
+ , refObjListRoot: this
+ });
+ break;
+ }
+ }
+ ]]>
+ </method>
+</class>
</library>
Modified: openmeetings/branches/3.1.x/openmeetings-web/src/main/webapp/WEB-INF/web.xml
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-web/src/main/webapp/WEB-INF/web.xml?rev=1716796&r1=1716795&r2=1716796&view=diff
==============================================================================
--- openmeetings/branches/3.1.x/openmeetings-web/src/main/webapp/WEB-INF/web.xml (original)
+++ openmeetings/branches/3.1.x/openmeetings-web/src/main/webapp/WEB-INF/web.xml Fri Nov 27 05:59:50 2015
@@ -71,7 +71,7 @@
</init-param>
<init-param>
<param-name>ignorePaths</param-name>
- <param-value>conf,css,default,docs,images,js,persistence,public,screensharing,streams,upload,uploadtemp,services,networktest.,file.,remotelog.,screen.,DownloadHandler</param-value>
+ <param-value>conf,css,default,docs,images,js,persistence,public,screensharing,streams,upload,uploadtemp,services,networktest.,file.,screen.,DownloadHandler</param-value>
</init-param>
</filter>
<filter-mapping>
Modified: openmeetings/branches/3.1.x/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/ErrorWebService.java
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/ErrorWebService.java?rev=1716796&r1=1716795&r2=1716796&view=diff
==============================================================================
--- openmeetings/branches/3.1.x/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/ErrorWebService.java (original)
+++ openmeetings/branches/3.1.x/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/ErrorWebService.java Fri Nov 27 05:59:50 2015
@@ -20,17 +20,21 @@ package org.apache.openmeetings.webservi
import static org.apache.openmeetings.util.OpenmeetingsVariables.webAppRootKey;
+import javax.jws.WebMethod;
import javax.jws.WebParam;
import javax.jws.WebService;
import javax.ws.rs.GET;
+import javax.ws.rs.POST;
import javax.ws.rs.Path;
import javax.ws.rs.PathParam;
import javax.ws.rs.Produces;
+import javax.ws.rs.QueryParam;
import javax.ws.rs.core.MediaType;
import org.apache.cxf.feature.Features;
import org.apache.openmeetings.db.dao.basic.ErrorDao;
import org.apache.openmeetings.db.dao.label.LabelDao;
+import org.apache.openmeetings.db.dao.server.SessiondataDao;
import org.apache.openmeetings.db.dto.basic.ServiceResult;
import org.apache.openmeetings.db.entity.basic.ErrorValue;
import org.red5.logging.Red5LoggerFactory;
@@ -56,6 +60,8 @@ public class ErrorWebService {
private ErrorDao errorDao;
@Autowired
private LabelDao labelDao;
+ @Autowired
+ private SessiondataDao sessionDao;
/**
* loads an Error-Object. If a Method returns a negative Result, its an
@@ -70,6 +76,7 @@ public class ErrorWebService {
*
* @return - error with the code given
*/
+ @WebMethod
@GET
@Path("/{id}/{lang}")
public ServiceResult get(@WebParam(name="id") @PathParam("id") long id, @WebParam(name="lang") @PathParam("lang") long lang) {
@@ -93,4 +100,16 @@ public class ErrorWebService {
}
return null;
}
+
+ @WebMethod
+ @POST
+ @Path("/report/")
+ public void report(@WebParam(name="sid") @QueryParam("sid") String sid, @WebParam(name="message") @QueryParam("message") String message) {
+ if (sid != null && message != null) {
+ Long userId = sessionDao.checkSession(sid);
+ if (userId != null && userId != 0) {
+ log.debug("[CLIENT MESSAGE] " + message);
+ }
+ }
+ }
}
Modified: openmeetings/branches/3.1.x/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/FileWebService.java
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/FileWebService.java?rev=1716796&r1=1716795&r2=1716796&view=diff
==============================================================================
--- openmeetings/branches/3.1.x/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/FileWebService.java (original)
+++ openmeetings/branches/3.1.x/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/FileWebService.java Fri Nov 27 05:59:50 2015
@@ -353,38 +353,38 @@ public class FileWebService {
*
* @param sid
* SID The SID of the User. This SID must be marked as logged in
- * @param fileId
+ * @param id
* file or folder id
- * @param fileName
+ * @param name
* new file or folder name
* @return - null
* @throws ServiceException
*/
- public Long rename(String sid, Long fileId, String fileName) throws ServiceException {
-
+ @WebMethod
+ @POST
+ @Path("/rename/{id}/{name}")
+ public FileExplorerItemDTO rename(@WebParam(name="sid") @QueryParam("sid") String sid
+ , @WebParam(name="id") @PathParam("id") long id
+ , @WebParam(name="name") @PathParam("name") String name) throws ServiceException
+ {
try {
-
Long userId = sessionDao.checkSession(sid);
if (AuthLevelUtil.hasUserLevel(userDao.getRights(userId))) {
+ // FIXME TODO: check if this user is allowed to change this file
- // TODO: check if this user is allowed to change this file
- /*
- * FileExplorerItem fileExItem = fileExplorerItemDao.getFileExplorerItemsById (fileExplorerItemId);
- *
- * if (fileExItem.getOwnerId() != null && !fileExItem.getOwnerId().equals(users_id)) { throw new
- * Exception( "This user is not the owner of the file and not allowed to edit its name" ); }
- */
-
- log.debug("updateFileOrFolderSelf " + fileId);
-
- fileDao.updateFileOrFolderName(fileId, fileName);
+ log.debug("rename " + id);
+ return new FileExplorerItemDTO(fileDao.rename(id, name));
+ } else {
+ throw new ServiceException("Insufficient permissins"); //TODO code -26
}
- } catch (Exception err) {
- log.error("[updateFileOrFolderNameSelf] ", err);
+ } catch (ServiceException e) {
+ throw e;
+ } catch (Exception e) {
+ log.error("[rename] ", e);
+ throw new ServiceException(e.getMessage());
}
- return null;
}
/**
Modified: openmeetings/trunk/singlewebapp/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/file/FileExplorerItemDao.java
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/file/FileExplorerItemDao.java?rev=1716796&r1=1716795&r2=1716796&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/file/FileExplorerItemDao.java (original)
+++ openmeetings/trunk/singlewebapp/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/file/FileExplorerItemDao.java Fri Nov 27 05:59:50 2015
@@ -205,25 +205,17 @@ public class FileExplorerItemDao {
* @param id
* @param name
*/
- public void updateFileOrFolderName(Long id, String name) {
- log.debug(".updateFileOrFolderName() started");
+ public FileExplorerItem rename(Long id, String name) {
+ log.debug("rename started");
- try {
+ FileExplorerItem f = get(id);
- FileExplorerItem fId = get(id);
+ f.setName(name);
- fId.setName(name);
- fId.setUpdated(new Date());
-
- update(fId);
- } catch (Exception ex2) {
- log.error("[updateFileOrFolderName]: ", ex2);
- }
+ return update(f);
}
public FileExplorerItem update(FileExplorerItem f) {
- // fId.setUpdated(new Date());
-
if (f.getId() == null) {
f.setInserted(new Date());
em.persist(f);
Modified: openmeetings/trunk/singlewebapp/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/file/FileExplorerItemDTO.java
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/file/FileExplorerItemDTO.java?rev=1716796&r1=1716795&r2=1716796&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/file/FileExplorerItemDTO.java (original)
+++ openmeetings/trunk/singlewebapp/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/file/FileExplorerItemDTO.java Fri Nov 27 05:59:50 2015
@@ -74,9 +74,9 @@ public class FileExplorerItemDTO impleme
f.setId(id);
f.setName(name);
f.setHash(hash);
- f.setParentId(parentId);
- f.setRoomId(roomId);
- f.setOwnerId(ownerId);
+ f.setParentId(parentId != null && parentId > 0 ? parentId : null);
+ f.setRoomId(roomId != null && roomId > 0 ? roomId : null);
+ f.setOwnerId(ownerId != null && ownerId > 0 ? ownerId : null);
f.setSize(size);
f.setExternalId(externalId);
f.setExternalType(externalType);
Modified: openmeetings/trunk/singlewebapp/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/ErrorWebService.java
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/ErrorWebService.java?rev=1716796&r1=1716795&r2=1716796&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/ErrorWebService.java (original)
+++ openmeetings/trunk/singlewebapp/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/ErrorWebService.java Fri Nov 27 05:59:50 2015
@@ -20,17 +20,21 @@ package org.apache.openmeetings.webservi
import static org.apache.openmeetings.util.OpenmeetingsVariables.webAppRootKey;
+import javax.jws.WebMethod;
import javax.jws.WebParam;
import javax.jws.WebService;
import javax.ws.rs.GET;
+import javax.ws.rs.POST;
import javax.ws.rs.Path;
import javax.ws.rs.PathParam;
import javax.ws.rs.Produces;
+import javax.ws.rs.QueryParam;
import javax.ws.rs.core.MediaType;
import org.apache.cxf.feature.Features;
import org.apache.openmeetings.db.dao.basic.ErrorDao;
import org.apache.openmeetings.db.dao.label.LabelDao;
+import org.apache.openmeetings.db.dao.server.SessiondataDao;
import org.apache.openmeetings.db.dto.basic.ServiceResult;
import org.apache.openmeetings.db.entity.basic.ErrorValue;
import org.red5.logging.Red5LoggerFactory;
@@ -56,6 +60,8 @@ public class ErrorWebService {
private ErrorDao errorDao;
@Autowired
private LabelDao labelDao;
+ @Autowired
+ private SessiondataDao sessionDao;
/**
* loads an Error-Object. If a Method returns a negative Result, its an
@@ -70,6 +76,7 @@ public class ErrorWebService {
*
* @return - error with the code given
*/
+ @WebMethod
@GET
@Path("/{id}/{lang}")
public ServiceResult get(@WebParam(name="id") @PathParam("id") long id, @WebParam(name="lang") @PathParam("lang") long lang) {
@@ -93,4 +100,16 @@ public class ErrorWebService {
}
return null;
}
+
+ @WebMethod
+ @POST
+ @Path("/report/")
+ public void report(@WebParam(name="sid") @QueryParam("sid") String sid, @WebParam(name="message") @QueryParam("message") String message) {
+ if (sid != null && message != null) {
+ Long userId = sessionDao.checkSession(sid);
+ if (userId != null && userId != 0) {
+ log.debug("[CLIENT MESSAGE] " + message);
+ }
+ }
+ }
}
Modified: openmeetings/trunk/singlewebapp/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/FileWebService.java
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/FileWebService.java?rev=1716796&r1=1716795&r2=1716796&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/FileWebService.java (original)
+++ openmeetings/trunk/singlewebapp/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/FileWebService.java Fri Nov 27 05:59:50 2015
@@ -353,38 +353,38 @@ public class FileWebService {
*
* @param sid
* SID The SID of the User. This SID must be marked as logged in
- * @param fileId
+ * @param id
* file or folder id
- * @param fileName
+ * @param name
* new file or folder name
* @return - null
* @throws ServiceException
*/
- public Long rename(String sid, Long fileId, String fileName) throws ServiceException {
-
+ @WebMethod
+ @POST
+ @Path("/rename/{id}/{name}")
+ public FileExplorerItemDTO rename(@WebParam(name="sid") @QueryParam("sid") String sid
+ , @WebParam(name="id") @PathParam("id") long id
+ , @WebParam(name="name") @PathParam("name") String name) throws ServiceException
+ {
try {
-
Long userId = sessionDao.checkSession(sid);
if (AuthLevelUtil.hasUserLevel(userDao.getRights(userId))) {
+ // FIXME TODO: check if this user is allowed to change this file
- // TODO: check if this user is allowed to change this file
- /*
- * FileExplorerItem fileExItem = fileExplorerItemDao.getFileExplorerItemsById (fileExplorerItemId);
- *
- * if (fileExItem.getOwnerId() != null && !fileExItem.getOwnerId().equals(users_id)) { throw new
- * Exception( "This user is not the owner of the file and not allowed to edit its name" ); }
- */
-
- log.debug("updateFileOrFolderSelf " + fileId);
-
- fileDao.updateFileOrFolderName(fileId, fileName);
+ log.debug("rename " + id);
+ return new FileExplorerItemDTO(fileDao.rename(id, name));
+ } else {
+ throw new ServiceException("Insufficient permissins"); //TODO code -26
}
- } catch (Exception err) {
- log.error("[updateFileOrFolderNameSelf] ", err);
+ } catch (ServiceException e) {
+ throw e;
+ } catch (Exception e) {
+ log.error("[rename] ", e);
+ throw new ServiceException(e.getMessage());
}
- return null;
}
/**