Skip to content
Snippets Groups Projects
Commit 3f1c53d4 authored by strentini's avatar strentini
Browse files

OO-135 : fixed generated zip-filename from resource-title (according to...

OO-135 : fixed generated zip-filename from resource-title (according to course-export) ( all special/illegal chars get stripped )

--HG--
branch : 80-patch
parent c9405624
No related merge requests found
...@@ -33,6 +33,7 @@ import org.olat.core.gui.UserRequest; ...@@ -33,6 +33,7 @@ import org.olat.core.gui.UserRequest;
import org.olat.core.gui.media.CleanupAfterDeliveryFileMediaResource; import org.olat.core.gui.media.CleanupAfterDeliveryFileMediaResource;
import org.olat.core.gui.media.MediaResource; import org.olat.core.gui.media.MediaResource;
import org.olat.core.id.OLATResourceable; import org.olat.core.id.OLATResourceable;
import org.olat.core.util.StringHelper;
import org.olat.core.util.ZipUtil; import org.olat.core.util.ZipUtil;
import org.olat.core.util.filter.Filter; import org.olat.core.util.filter.Filter;
import org.olat.core.util.filter.FilterFactory; import org.olat.core.util.filter.FilterFactory;
...@@ -171,6 +172,8 @@ public class GlossaryManagerImpl extends GlossaryManager { ...@@ -171,6 +172,8 @@ public class GlossaryManagerImpl extends GlossaryManager {
public MediaResource getAsMediaResource(OLATResourceable res) { public MediaResource getAsMediaResource(OLATResourceable res) {
RepositoryEntry repoEntry = RepositoryManager.getInstance().lookupRepositoryEntry(res, false); RepositoryEntry repoEntry = RepositoryManager.getInstance().lookupRepositoryEntry(res, false);
String exportFileName = repoEntry.getDisplayname() + ".zip"; String exportFileName = repoEntry.getDisplayname() + ".zip";
// OO-135 check for special / illegal chars in filename
exportFileName = StringHelper.transformDisplayNameToFileSystemName(exportFileName);
File fExportZIP = new File(FolderConfig.getCanonicalTmpDir() + "/" + exportFileName); File fExportZIP = new File(FolderConfig.getCanonicalTmpDir() + "/" + exportFileName);
VFSContainer glossaryRoot = getGlossaryRootFolder(res); VFSContainer glossaryRoot = getGlossaryRootFolder(res);
ZipUtil.zip(glossaryRoot.getItems(), new LocalFileImpl(fExportZIP), false); ZipUtil.zip(glossaryRoot.getItems(), new LocalFileImpl(fExportZIP), false);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment