Revision: 3974
Author:   seba.wagner
Date:     Thu Jul  7 05:23:20 2011
Log:      Rework parts of the File-Explorer to use REST instead of RTMP
http://code.google.com/p/openmeetings/source/detail?r=3974

Modified:
/trunk/singlewebapp/WebContent/openmeetings/plugins/fileexplorer/dragItemFileExplorer.lzx /trunk/singlewebapp/WebContent/openmeetings/plugins/fileexplorer/treeitems/baseFileExplorerItem.lzx /trunk/singlewebapp/src/fileservice/org/openmeetings/axis/services/FileService.java

=======================================
--- /trunk/singlewebapp/WebContent/openmeetings/plugins/fileexplorer/dragItemFileExplorer.lzx Fri Apr 15 04:58:38 2011 +++ /trunk/singlewebapp/WebContent/openmeetings/plugins/fileexplorer/dragItemFileExplorer.lzx Thu Jul 7 05:23:20 2011
@@ -11,6 +11,8 @@

        <attribute name="alreadySent" value="false" type="boolean" />

+       <attribute name="fileExplorerItemId" value="0" type="number" />
+
        <handler name="oninit">
                
lz.Track.activate(canvas.currentImagesListdraw.currentTrackGroupName);
                canvas.currentImagesListdraw.currentDragItem = this;
@@ -64,7 +66,7 @@

                if (this.overItem.isTrashCan) {
                        if ($debug) Debug.write("SEND TO GARBAGE");
- this.deleteFileOrFolder.fileExplorerItemId = this.refObj.fileExplorerItemId;
+                       this.fileExplorerItemId = 
this.refObj.fileExplorerItemId;
                        new lz.confirmationSingle(canvas,{
                                   refObj:this,
                                   labelid:710,
@@ -112,17 +114,41 @@

     <method name="sendConfirmation" args="bool,askAgain">
        if (bool) {
-               this.deleteFileOrFolder.doCall();
+               this.deleteFileOrFolder();
        } else {
                this.destroy();
        }
     </method>

+    <method name="deleteFileOrFolder">
+        <![CDATA[
+            if ($debug) Debug.write("deleteFileOrFolder HTTP 2: ");
+            //this.getFileExplorerByRoom.doCall();
+ var downloadurl = 'http://'+canvas.rtmphostlocal+':'+canvas.red5httpport + +canvas.httpRootKey+'services/FileService/deleteFileOrFolderSelf?'
+                            +'SID='+canvas.sessionId
+ +'&fileExplorerItemId='+this.fileExplorerItemId;
+
+            this.deleteFileOrFolderSelf.setAttribute("src",downloadurl);
+ if ($debug) Debug.write("deleteFileOrFolderSelf doRequest ",downloadurl);
+            this.deleteFileOrFolderSelf.doRequest();
+        ]]>
+    </method>
+
+    <dataset name="deleteFileOrFolderSelf" type="http" >
+        <handler name="ondata" args="d">
+            <![CDATA[
+                //if ($debug) Debug.write("ondata ",d);
+                if ($debug) Debug.write("deleteFileOrFolder: ",d);
+                parent.refObj.parent.parent.doOpen();
+                parent.destroy();
+            ]]>
+        </handler>
+    </dataset>
+
+    <!--
<netRemoteCallHib name="deleteFileOrFolder" funcname="fileservice.deleteFileOrFolder"
         remotecontext="$once{ canvas.thishib }" >
-
-        <attribute name="fileExplorerItemId" value="0" type="number" />
-
<netparam><method name="getValue">return canvas.sessionId;</method></netparam> <netparam><method name="getValue">return parent.fileExplorerItemId;</method></netparam>
         <handler name="ondata" args="value">
@@ -131,6 +157,7 @@
             parent.destroy();
         </handler>
     </netRemoteCallHib>
+     -->

     <netRemoteCallHib name="moveFile" funcname="fileservice.moveFile"
         remotecontext="$once{ canvas.thishib }" >
=======================================
--- /trunk/singlewebapp/WebContent/openmeetings/plugins/fileexplorer/treeitems/baseFileExplorerItem.lzx Wed Jul 6 06:13:08 2011 +++ /trunk/singlewebapp/WebContent/openmeetings/plugins/fileexplorer/treeitems/baseFileExplorerItem.lzx Thu Jul 7 05:23:20 2011
@@ -113,10 +113,38 @@

     <method name="sendConfirmation" args="bool,askAgain">
         if (bool) {
-            this.deleteFileOrFolder.doCall();
+            this.deleteFileOrFolder();
         }
     </method>

+    <method name="deleteFileOrFolder">
+        <![CDATA[
+            if ($debug) Debug.write("deleteFileOrFolder HTTP 1: ");
+            //this.getFileExplorerByRoom.doCall();
+ var downloadurl = 'http://'+canvas.rtmphostlocal+':'+canvas.red5httpport + +canvas.httpRootKey+'services/FileService/deleteFileOrFolderSelf?'
+                            +'SID='+canvas.sessionId
+ +'&fileExplorerItemId='+this.fileExplorerItemId;
+
+            this.deleteFileOrFolderSelf.setAttribute("src",downloadurl);
+ if ($debug) Debug.write("deleteFileOrFolderSelf doRequest ",downloadurl);
+            this.deleteFileOrFolderSelf.doRequest();
+        ]]>
+    </method>
+
+    <dataset name="deleteFileOrFolderSelf" type="http" >
+        <handler name="ondata" args="d">
+            <![CDATA[
+                //if ($debug) Debug.write("ondata ",d);
+                if ($debug) Debug.write("deleteFileOrFolder: ",d);
+                parent.parent.parent.doOpen();
+                parent.refObjListRoot._selected = null;
+                parent.refObjListRoot.parentFolderId = -2;
+            ]]>
+        </handler>
+    </dataset>
+
+    <!--
<netRemoteCallHib name="deleteFileOrFolder" funcname="fileservice.deleteFileOrFolder"
         remotecontext="$once{ canvas.thishib }" >
<netparam><method name="getValue">return canvas.sessionId;</method></netparam>
@@ -128,6 +156,7 @@
             parent.refObjListRoot.parentFolderId = -2;
         </handler>
     </netRemoteCallHib>
+     -->

        <method name="doSingleClick" args="itemObj">
                this.singleClickStarted = false;
=======================================
--- /trunk/singlewebapp/src/fileservice/org/openmeetings/axis/services/FileService.java Wed Jul 6 06:13:08 2011 +++ /trunk/singlewebapp/src/fileservice/org/openmeetings/axis/services/FileService.java Thu Jul 7 05:23:20 2011
@@ -410,6 +410,36 @@
                         fileExplorerItemId);

                }
+
+               } catch (Exception err) {
+                       log.error("[deleteFileOrFolder]",err);
+               }
+               return null;
+       }
+
+       /**
+        *
+        * deletes files or folders based on it id
+        *
+        * @param SID
+        * @param fileExplorerItemId
+        * @return
+        */
+ public Long deleteFileOrFolderSelf(String SID, Long fileExplorerItemId) throws AxisFault {
+
+               try {
+
+                       Long users_id = 
Sessionmanagement.getInstance().checkSession(SID);
+ Long User_level = Usermanagement.getInstance().getUserLevelByID(users_id);
+
+               if 
(AuthLevelmanagement.getInstance().checkUserLevel(User_level)){
+
+                       //TODO: Check if user has access or not to the file
+
+                       
FileExplorerItemDaoImpl.getInstance().deleteFileExplorerItem(
+                        fileExplorerItemId);
+
+               }

                } catch (Exception err) {
                        log.error("[deleteFileOrFolder]",err);

--
You received this message because you are subscribed to the Google Groups 
"OpenMeetings developers" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/openmeetings-dev?hl=en.

Reply via email to