Index: lams_central/src/java/org/lamsfoundation/lams/web/LAMSConnectorServlet.java
===================================================================
diff -u -r9481bb9c6f8c0e4d6fbed6b230a41c77feda64c6 -rde545461c82d2d5629c7cbc72f4fa798db1b6510
--- lams_central/src/java/org/lamsfoundation/lams/web/LAMSConnectorServlet.java (.../LAMSConnectorServlet.java) (revision 9481bb9c6f8c0e4d6fbed6b230a41c77feda64c6)
+++ lams_central/src/java/org/lamsfoundation/lams/web/LAMSConnectorServlet.java (.../LAMSConnectorServlet.java) (revision de545461c82d2d5629c7cbc72f4fa798db1b6510)
@@ -63,6 +63,12 @@
*
FileUpload: Send a new file to the server (must be sent with a POST)
*
*
+ * This servlet has been modified for LAMS to support the lams_www/secure/[design folder] format. The design folder is
+ * a folder with a unique numeric name. Whenever a new design is created (using "New" in the client), a new design
+ * folder name is assigned. The [design folder] is passed in as DesignFolder and the CurrentFolder is the folder within
+ * the DesignFolder (but not the type folder). This support the multi-level folders that are available in the File browser
+ * but is different to the LAMSUploadServlet.
+ *
* @author Simone Chiaretta (simo@users.sourceforge.net)
* @author Mitchell Seaton
*
@@ -124,24 +130,18 @@
String commandStr=request.getParameter("Command");
String typeStr=request.getParameter("Type");
String currentFolderStr=request.getParameter("CurrentFolder");
+ String designFolder=request.getParameter("DesignFolder");
// create content directory if non-existant
- String currentDirPath=realBaseDir + currentFolderStr;
+ String currentDirPath=realBaseDir + designFolder + typeStr +"/" + currentFolderStr;
String validCurrentDirPath = currentDirPath.replace('/', File.separatorChar);
- String currentWebPath= lamsContextPath + AuthoringConstants.LAMS_WWW_FOLDER + FileUtil.LAMS_WWW_SECURE_DIR + currentFolderStr + typeStr + "/";
+ String currentWebPath= lamsContextPath + AuthoringConstants.LAMS_WWW_FOLDER + FileUtil.LAMS_WWW_SECURE_DIR
+ + designFolder + typeStr +"/" + currentFolderStr;
- File currentContentDir=new File(validCurrentDirPath);
- if(!currentContentDir.exists()){
- currentContentDir.mkdir();
- }
-
- // create content type directory if non-existant
- validCurrentDirPath += typeStr;
-
File currentDir=new File(validCurrentDirPath);
if(!currentDir.exists()){
- currentDir.mkdir();
+ currentDir.mkdirs();
}
Document document=null;
@@ -235,8 +235,9 @@
String commandStr=request.getParameter("Command");
String typeStr=request.getParameter("Type");
String currentFolderStr=request.getParameter("CurrentFolder");
+ String designFolder=request.getParameter("DesignFolder");
- String currentDirPath=realBaseDir + currentFolderStr + typeStr;
+ String currentDirPath=realBaseDir + designFolder + typeStr +"/" + currentFolderStr;
String validCurrentDirPath = currentDirPath.replace("/", File.separator);
if (debug) System.out.println(currentDirPath);
Index: lams_central/src/java/org/lamsfoundation/lams/web/LAMSUploadServlet.java
===================================================================
diff -u -r9481bb9c6f8c0e4d6fbed6b230a41c77feda64c6 -rde545461c82d2d5629c7cbc72f4fa798db1b6510
--- lams_central/src/java/org/lamsfoundation/lams/web/LAMSUploadServlet.java (.../LAMSUploadServlet.java) (revision 9481bb9c6f8c0e4d6fbed6b230a41c77feda64c6)
+++ lams_central/src/java/org/lamsfoundation/lams/web/LAMSUploadServlet.java (.../LAMSUploadServlet.java) (revision de545461c82d2d5629c7cbc72f4fa798db1b6510)
@@ -33,18 +33,17 @@
import org.lamsfoundation.lams.util.ConfigurationKeys;
import org.lamsfoundation.lams.util.FileUtil;
-
-import javax.xml.parsers.*;
-import org.w3c.dom.*;
-import javax.xml.transform.*;
-import javax.xml.transform.dom.DOMSource;
-import javax.xml.transform.stream.StreamResult;
-
/**
* Servlet to upload files.
*
* This servlet accepts just file uploads, eventually with a parameter specifying file type
*
+ * This servlet has been modified for LAMS to support the lams_www/secure/[design folder] format. The design folder is
+ * a folder with a unique numeric name. Whenever a new design is created (using "New" in the client), a new design
+ * folder name is assigned. The [design folder] is passed in as the CurrentFolder. This servlet supports the image and link
+ * windows, not the browse window.
+ *
+ *
* @author Simone Chiaretta (simo@users.sourceforge.net)
* @author Mitchell Seaton
*
Index: lams_central/web/fckeditor/editor/filemanager/browser/default/browser.html
===================================================================
diff -u -rf31e72d8424dde00e37a5f44e5d123237d9314d9 -rde545461c82d2d5629c7cbc72f4fa798db1b6510
--- lams_central/web/fckeditor/editor/filemanager/browser/default/browser.html (.../browser.html) (revision f31e72d8424dde00e37a5f44e5d123237d9314d9)
+++ lams_central/web/fckeditor/editor/filemanager/browser/default/browser.html (.../browser.html) (revision de545461c82d2d5629c7cbc72f4fa798db1b6510)
@@ -40,7 +40,8 @@
}
var oConnector = new Object() ;
-oConnector.CurrentFolder = GetUrlParam( 'CurrentFolder' ) ;
+oConnector.CurrentFolder = '/';
+oConnector.DesignFolder = GetUrlParam( 'CurrentFolder' );
var sConnUrl = GetUrlParam( 'Connector' ) ;
@@ -64,8 +65,9 @@
{
var sUrl = this.ConnectorUrl + 'Command=' + command ;
sUrl += '&Type=' + this.ResourceType ;
- sUrl += '&CurrentFolder=' + encodeURIComponent( GetUrlParam( 'CurrentFolder' ) ) ;
-
+ sUrl += '&CurrentFolder=' + encodeURIComponent( oConnector.CurrentFolder ) ;
+ sUrl += '&DesignFolder=' + encodeURIComponent( oConnector.DesignFolder );
+
if ( params ) sUrl += '&' + params ;
// Add a random salt to avoid getting a cached version of the command execution
Index: lams_central/web/fckeditor/editor/filemanager/browser/default/frmfolders.html
===================================================================
diff -u -r5f4a3fa1a4c16c3ff1b31fc7595ce720ab9b97bc -rde545461c82d2d5629c7cbc72f4fa798db1b6510
--- lams_central/web/fckeditor/editor/filemanager/browser/default/frmfolders.html (.../frmfolders.html) (revision 5f4a3fa1a4c16c3ff1b31fc7595ce720ab9b97bc)
+++ lams_central/web/fckeditor/editor/filemanager/browser/default/frmfolders.html (.../frmfolders.html) (revision de545461c82d2d5629c7cbc72f4fa798db1b6510)
@@ -180,8 +180,8 @@
window.onload = function()
{
- oListManager.Init() ;
- LoadFolders( '/' ) ;
+ oListManager.Init() ;
+ LoadFolders( parent.oConnector.CurrentFolder ) ;
}
Index: lams_central/web/fckeditor/editor/filemanager/browser/default/frmupload.html
===================================================================
diff -u -r5f4a3fa1a4c16c3ff1b31fc7595ce720ab9b97bc -rde545461c82d2d5629c7cbc72f4fa798db1b6510
--- lams_central/web/fckeditor/editor/filemanager/browser/default/frmupload.html (.../frmupload.html) (revision 5f4a3fa1a4c16c3ff1b31fc7595ce720ab9b97bc)
+++ lams_central/web/fckeditor/editor/filemanager/browser/default/frmupload.html (.../frmupload.html) (revision de545461c82d2d5629c7cbc72f4fa798db1b6510)
@@ -33,7 +33,8 @@
var sUrl = oConnector.ConnectorUrl + 'Command=FileUpload' ;
sUrl += '&Type=' + resourceType ;
sUrl += '&CurrentFolder=' + encodeURIComponent( folderPath ) ;
-
+ sUrl += '&DesignFolder=' + oConnector.DesignFolder ;
+
document.getElementById('frmUpload').action = sUrl ;
}