From: <fg...@us...> - 2010-01-30 15:41:06
|
Revision: 1718 http://openutils.svn.sourceforge.net/openutils/?rev=1718&view=rev Author: fgiust Date: 2010-01-30 15:40:58 +0000 (Sat, 30 Jan 2010) Log Message: ----------- MEDIA-65 image info for broken images (along with a refactoring of the info line in order to make it handled by mediaTypeHandlers) Modified Paths: -------------- trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/pages/MediaFolderViewPage.java trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/types/MediaTypeHandler.java trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/types/impl/BaseTypeHandler.java trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/types/impl/ImageTypeHandler.java trunk/openutils-mgnlmedia/src/main/resources/mgnl-resources/media/css/folderView.css trunk/openutils-mgnlmedia/src/main/resources/net/sourceforge/openutils/mgnlmedia/media/pages/MediaFolderViewPage.html Modified: trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/pages/MediaFolderViewPage.java =================================================================== --- trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/pages/MediaFolderViewPage.java 2010-01-30 13:42:47 UTC (rev 1717) +++ trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/pages/MediaFolderViewPage.java 2010-01-30 15:40:58 UTC (rev 1718) @@ -19,7 +19,6 @@ package net.sourceforge.openutils.mgnlmedia.media.pages; -import info.magnolia.cms.beans.runtime.FileProperties; import info.magnolia.cms.core.Content; import info.magnolia.cms.core.HierarchyManager; import info.magnolia.cms.core.ItemType; @@ -33,7 +32,6 @@ import info.magnolia.cms.security.Permission; import info.magnolia.cms.util.AlertUtil; import info.magnolia.cms.util.ExclusiveWrite; -import info.magnolia.cms.util.NodeDataUtil; import info.magnolia.commands.CommandsManager; import info.magnolia.context.Context; import info.magnolia.context.MgnlContext; @@ -53,7 +51,6 @@ import net.sourceforge.openutils.mgnlmedia.media.configuration.MediaConfigurationManager; import net.sourceforge.openutils.mgnlmedia.media.configuration.MediaTypeConfiguration; import net.sourceforge.openutils.mgnlmedia.media.lifecycle.MediaModule; -import net.sourceforge.openutils.mgnlmedia.media.tags.el.MediaEl; import org.apache.commons.chain.Command; import org.apache.commons.lang.StringUtils; @@ -271,17 +268,8 @@ log.error("Exception caught", ex); } - if ("image".equals(type)) - { - int[] size = MediaEl.getSize(media, "original"); - mb.setFormatInfo(mtc.getHandler().getExtension(media) - + ' ' - + size[0] - + 'x' - + size[1] - + ' ' - + mtc.getHandler().getSize(media)); - } + mb.setFormatInfo(mtc.getHandler().getMediaInfo(media)); + medias.add(mb); } } Modified: trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/types/MediaTypeHandler.java =================================================================== --- trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/types/MediaTypeHandler.java 2010-01-30 13:42:47 UTC (rev 1717) +++ trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/types/MediaTypeHandler.java 2010-01-30 15:40:58 UTC (rev 1718) @@ -95,13 +95,6 @@ String getExtension(Content media); /** - * return size - * @param media media - * @return size - */ - String getSize(Content media); - - /** * return filename * @param media media * @return filename @@ -137,6 +130,13 @@ String getAbstract(Content media); /** + * Returns the basic media info (file type, size for images, ...) + * @param media media + * @return a formatted string for media info + */ + String getMediaInfo(Content media); + + /** * Called from dialog when saving a media * @param media media saving * @return true if continue saving Modified: trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/types/impl/BaseTypeHandler.java =================================================================== --- trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/types/impl/BaseTypeHandler.java 2010-01-30 13:42:47 UTC (rev 1717) +++ trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/types/impl/BaseTypeHandler.java 2010-01-30 15:40:58 UTC (rev 1718) @@ -42,6 +42,7 @@ import net.sourceforge.openutils.mgnlmedia.media.types.MediaTypeHandler; import org.apache.commons.lang.StringUtils; +import org.apache.commons.lang.math.NumberUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -185,14 +186,6 @@ /** * {@inheritDoc} */ - public String getSize(Content media) - { - return new FileProperties(media, ORGINAL_NODEDATA_NAME).getProperty(FileProperties.SIZE); - } - - /** - * {@inheritDoc} - */ public String getFilename(Content media) { return getOriginalFileNodeData(media).getAttribute(FileProperties.PROPERTY_FILENAME); @@ -309,4 +302,28 @@ return getPropertyLocalized(media, "abstract"); } + /** + * {@inheritDoc} + */ + public String getMediaInfo(Content media) + { + FileProperties fp = new FileProperties(media, ORGINAL_NODEDATA_NAME); + + String extension = fp.getProperty(FileProperties.PROPERTY_EXTENSION); + String size = StringUtils.EMPTY; + + try + { + size = fp.getProperty(FileProperties.PROPERTY_SIZE); + } + catch (NumberFormatException nfe) + { + // just ignore, no file size info + } + + int width = NumberUtils.toInt(fp.getProperty(FileProperties.PROPERTY_WIDTH)); + int height = NumberUtils.toInt(fp.getProperty(FileProperties.PROPERTY_HEIGHT)); + + return extension + (width > 0 ? (" " + width + "x" + height) : "") + " " + size; + } } Modified: trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/types/impl/ImageTypeHandler.java =================================================================== --- trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/types/impl/ImageTypeHandler.java 2010-01-30 13:42:47 UTC (rev 1717) +++ trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/types/impl/ImageTypeHandler.java 2010-01-30 15:40:58 UTC (rev 1718) @@ -19,11 +19,13 @@ package net.sourceforge.openutils.mgnlmedia.media.types.impl; +import info.magnolia.cms.beans.runtime.FileProperties; import info.magnolia.cms.core.Content; import net.sourceforge.openutils.mgnlmedia.media.configuration.MediaConfigurationManager; import net.sourceforge.openutils.mgnlmedia.media.utils.ImageUtils; import org.apache.commons.lang.StringUtils; +import org.apache.commons.lang.math.NumberUtils; /** @@ -64,4 +66,35 @@ + "/resolutions/preview/data." + ImageUtils.getExtension(media, "preview"); } + + /** + * {@inheritDoc} + */ + @Override + public String getMediaInfo(Content media) + { + FileProperties fp = new FileProperties(media, ORGINAL_NODEDATA_NAME); + + String extension = fp.getProperty(FileProperties.PROPERTY_EXTENSION); + String size = StringUtils.EMPTY; + + try + { + size = fp.getProperty(FileProperties.PROPERTY_SIZE); + } + catch (NumberFormatException nfe) + { + // just ignore, no file size info + } + + int width = NumberUtils.toInt(fp.getProperty(FileProperties.PROPERTY_WIDTH)); + int height = NumberUtils.toInt(fp.getProperty(FileProperties.PROPERTY_HEIGHT)); + + if (width <= 0 || height <= 0) + { + return "broken file"; + } + + return extension + (width > 0 ? (" " + width + "x" + height) : "") + " " + size; + } } Modified: trunk/openutils-mgnlmedia/src/main/resources/mgnl-resources/media/css/folderView.css =================================================================== --- trunk/openutils-mgnlmedia/src/main/resources/mgnl-resources/media/css/folderView.css 2010-01-30 13:42:47 UTC (rev 1717) +++ trunk/openutils-mgnlmedia/src/main/resources/mgnl-resources/media/css/folderView.css 2010-01-30 15:40:58 UTC (rev 1718) @@ -82,14 +82,14 @@ float: left; margin: 0px 0px 10px 10px; width: 130px; - height: 210px; + height: 235px; font-size: 0.8em; position: relative; background-color: #f6f6f6; } .mediaList li.selectMedia { - height: 235px; + height: 260px; } .mediaList li:hover { @@ -169,6 +169,12 @@ padding: 5px 0 5px 0; } +.mediainfo { + border-bottom: dotted 1px #cfcfcf; + margin: 0px 3px 5px 3px; + padding: 5px 0 5px 0; +} + .used span { cursor: default; } @@ -205,7 +211,7 @@ .mediaStatus0,.mediaStatus1 { opacity: 0.75; - filter: alpha(opacity = 75); + filter: alpha(opacity = 75); } .multibox img { Modified: trunk/openutils-mgnlmedia/src/main/resources/net/sourceforge/openutils/mgnlmedia/media/pages/MediaFolderViewPage.html =================================================================== --- trunk/openutils-mgnlmedia/src/main/resources/net/sourceforge/openutils/mgnlmedia/media/pages/MediaFolderViewPage.html 2010-01-30 13:42:47 UTC (rev 1717) +++ trunk/openutils-mgnlmedia/src/main/resources/net/sourceforge/openutils/mgnlmedia/media/pages/MediaFolderViewPage.html 2010-01-30 15:40:58 UTC (rev 1718) @@ -220,6 +220,9 @@ <span class="tips" rel="${pages}">${this.msgs.get('media.pages')} (${media.usedInWebPages?size})</span> </#if> </div> + <#if media.formatInfo??> + <div class="mediainfo">${media.formatInfo}</div> + </#if> <#if this.selectMedia> <div class="selectMediaLine"> <#if media.metaData.activationStatus = 2 || this.develop > @@ -236,9 +239,6 @@ <#else>${name} </#if> </span> - <#if media.formatInfo??> - <div>${media.formatInfo}</div> - </#if> </li> </#list> </ul> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |