From: <die...@us...> - 2014-10-03 07:28:24
|
Revision: 4599 http://openutils.svn.sourceforge.net/openutils/?rev=4599&view=rev Author: diego_schivo Date: 2014-10-03 07:28:20 +0000 (Fri, 03 Oct 2014) Log Message: ----------- ZipImporter author Modified Paths: -------------- magnoliamodules/branches/magnolia44/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/pages/MediaBrowserPage.java magnoliamodules/branches/magnolia44/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/pages/MediaFolderViewPage.java magnoliamodules/branches/magnolia44/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/zip/DefaultZipImporter.java magnoliamodules/branches/magnolia44/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/zip/ZipImporter.java Modified: magnoliamodules/branches/magnolia44/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/pages/MediaBrowserPage.java =================================================================== --- magnoliamodules/branches/magnolia44/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/pages/MediaBrowserPage.java 2014-10-03 06:29:46 UTC (rev 4598) +++ magnoliamodules/branches/magnolia44/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/pages/MediaBrowserPage.java 2014-10-03 07:28:20 UTC (rev 4599) @@ -91,6 +91,8 @@ private String baseFilename; + private String author; + private String playlistHandle; private String playlistSearch; @@ -192,7 +194,7 @@ { // Fallback to the default if nothing is set. importer = new DefaultZipImporter(); } - importer.importFromZip(zip, parentPath, baseFilename); + importer.importFromZip(zip, parentPath, baseFilename, author); zip.close(); AlertUtil.setMessage(getMsgs().get("media.loadzip.success")); } @@ -397,6 +399,14 @@ this.baseFilename = baseFilename; } + public String getAuthor() { + return author; + } + + public void setAuthor(String author) { + this.author = author; + } + /** * Returns the playlistHandle. * @return the playlistHandle Modified: magnoliamodules/branches/magnolia44/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/pages/MediaFolderViewPage.java =================================================================== --- magnoliamodules/branches/magnolia44/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/pages/MediaFolderViewPage.java 2014-10-03 06:29:46 UTC (rev 4598) +++ magnoliamodules/branches/magnolia44/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/pages/MediaFolderViewPage.java 2014-10-03 07:28:20 UTC (rev 4599) @@ -38,6 +38,8 @@ import it.openutils.mgnlutils.el.MgnlPagingElFunctions.Page; import java.io.IOException; +import java.io.UnsupportedEncodingException; +import java.net.URLEncoder; import java.util.ArrayList; import java.util.Collection; import java.util.Collections; @@ -534,10 +536,26 @@ } MediaTypeConfiguration mtc = MediaConfigurationManager.getInstance().getMediaTypeConfigurationFromMedia(media); - String url = mtc.getHandler().getUrl(media); String filename = mtc.getHandler().getFullFilename(media); + try + { + filename = URLEncoder.encode(filename, "UTF-8"); + } + catch (UnsupportedEncodingException e1) + { + // should never happen + } + String url = mtc.getHandler().getUrl(media); + if (url.startsWith("http")) + { + url = MediaConfigurationManager.getInstance().getURIMappingPrefix() + + media.getHandle() + + "/original/" + + filename; + } + this.response.addHeader("Content-Disposition", "attachment; filename=" + filename); try { Modified: magnoliamodules/branches/magnolia44/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/zip/DefaultZipImporter.java =================================================================== --- magnoliamodules/branches/magnolia44/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/zip/DefaultZipImporter.java 2014-10-03 06:29:46 UTC (rev 4598) +++ magnoliamodules/branches/magnolia44/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/zip/DefaultZipImporter.java 2014-10-03 07:28:20 UTC (rev 4599) @@ -19,6 +19,9 @@ package net.sourceforge.openutils.mgnlmedia.media.zip; +import info.magnolia.cms.core.Content; +import info.magnolia.cms.util.NodeDataUtil; + import java.io.InputStream; import java.util.Enumeration; import java.util.zip.ZipEntry; @@ -42,13 +45,13 @@ */ public void importFromZip(ZipFile zip, String parentPath) throws ZipImporterException { - importFromZip(zip, parentPath, null); + importFromZip(zip, parentPath, null, null); } /** * {@inheritDoc} */ - public void importFromZip(ZipFile zip, String parentPath, String baseFilename) throws ZipImporterException + public void importFromZip(ZipFile zip, String parentPath, String baseFilename, String author) throws ZipImporterException { try { @@ -87,7 +90,7 @@ String baseName; if (!StringUtils.isEmpty(baseFilename)) { - baseName = baseFilename + (i + 1); + baseName = baseFilename + '_' + (i + 1); } else { @@ -97,11 +100,16 @@ filename = baseName + (!StringUtils.isEmpty(extension) ? FilenameUtils.EXTENSION_SEPARATOR : StringUtils.EMPTY) + StringUtils.defaultString(extension); - MediaLoadUtils.loadEntry( + Content media = MediaLoadUtils.loadEntry( inputStream, StringUtils.defaultIfEmpty(parent, "/fromzip"), filename, false); + if (media != null && !StringUtils.isEmpty(author)) + { + NodeDataUtil.getOrCreateAndSet(media, "author", author); + media.save(); + } i++; } Modified: magnoliamodules/branches/magnolia44/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/zip/ZipImporter.java =================================================================== --- magnoliamodules/branches/magnolia44/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/zip/ZipImporter.java 2014-10-03 06:29:46 UTC (rev 4598) +++ magnoliamodules/branches/magnolia44/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/zip/ZipImporter.java 2014-10-03 07:28:20 UTC (rev 4599) @@ -41,5 +41,5 @@ */ void importFromZip(ZipFile zip, String parentPath) throws ZipImporterException; - void importFromZip(ZipFile zip, String parentPath, String baseFilename) throws ZipImporterException; + void importFromZip(ZipFile zip, String parentPath, String baseFilename, String author) throws ZipImporterException; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |