Index: lams_common/src/java/org/lamsfoundation/lams/learningdesign/service/ExportToolContentService.java =================================================================== diff -u -r64e6623bc68b11257c7f5d71f3953154f80b6fde -rb776da39a329453ae50c981cc294562d907b48f5 --- lams_common/src/java/org/lamsfoundation/lams/learningdesign/service/ExportToolContentService.java (.../ExportToolContentService.java) (revision 64e6623bc68b11257c7f5d71f3953154f80b6fde) +++ lams_common/src/java/org/lamsfoundation/lams/learningdesign/service/ExportToolContentService.java (.../ExportToolContentService.java) (revision b776da39a329453ae50c981cc294562d907b48f5) @@ -498,8 +498,10 @@ + ldDto.getContentFolderID() + ExportToolContentService.EXPORT_LDCONTENT_ZIP_SUFFIX; String secureDir = Configuration.get(ConfigurationKeys.LAMS_EAR_DIR) + File.separator + FileUtil.LAMS_WWW_DIR + File.separator + FileUtil.LAMS_WWW_SECURE_DIR; - String ldContentDir = FileUtil.getFullPath(secureDir, ldDto.getContentFolderID()); + String ldContentDir = ExportToolContentService.getContentDirPath(ldDto.getContentFolderID()); + ldContentDir = FileUtil.getFullPath(secureDir, ldContentDir); + if (!FileUtil.isEmptyDirectory(ldContentDir, true)) { log.debug("Create export Learning Design content target zip file. File name is " + targetContentZipFileName); @@ -767,13 +769,13 @@ return -1L; } - // begin fckeditor content folder import + // begin ckeditor content folder import try { String contentZipFileName = ExportToolContentService.EXPORT_LDCONTENT_ZIP_PREFIX + ldDto.getContentFolderID() + ExportToolContentService.EXPORT_LDCONTENT_ZIP_SUFFIX; String secureDir = Configuration.get(ConfigurationKeys.LAMS_EAR_DIR) + File.separator + FileUtil.LAMS_WWW_DIR + File.separator + FileUtil.LAMS_WWW_SECURE_DIR + File.separator - + ldDto.getContentFolderID(); + + ExportToolContentService.getContentDirPath(ldDto.getContentFolderID()); File contentZipFile = new File(FileUtil.getFullPath(learningDesignPath, contentZipFileName)); // unzip file to target secure dir if exists @@ -1958,6 +1960,18 @@ return newTitle; } + /** + * Convert content folder ID to real path inside secure dir + */ + private static String getContentDirPath(String contentFolderID) { + String contentFolderIDClean = contentFolderID.replaceAll("-", ""); + String contentDir = ""; + for (int charIndex = 0; charIndex < 6; charIndex++) { + contentDir += contentFolderIDClean.substring(charIndex * 2, charIndex * 2 + 2) + File.separator; + } + return contentDir; + } + // ****************************************************************** // Spring injection properties set/get // ******************************************************************