From: <mol...@us...> - 2009-08-26 12:55:53
|
Revision: 1317 http://openutils.svn.sourceforge.net/openutils/?rev=1317&view=rev Author: molaschi Date: 2009-08-26 12:55:45 +0000 (Wed, 26 Aug 2009) Log Message: ----------- MEDIA-9 cleaning and documenting Modified Paths: -------------- trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/tags/el/MediaEl.java trunk/openutils-mgnlmedia/src/main/resources/META-INF/media.tld Modified: trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/tags/el/MediaEl.java =================================================================== --- trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/tags/el/MediaEl.java 2009-08-26 11:02:26 UTC (rev 1316) +++ trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/tags/el/MediaEl.java 2009-08-26 12:55:45 UTC (rev 1317) @@ -26,9 +26,7 @@ import java.awt.Point; import java.io.UnsupportedEncodingException; -import java.net.URL; import java.net.URLEncoder; -import java.nio.charset.CharacterCodingException; import java.util.ArrayList; import java.util.Collection; import java.util.Collections; @@ -101,23 +99,6 @@ } /** - * Get localized abstract for a media - * @param media media - * @param locale language - * @return abstract - */ - public static String getAbstract(Content media, Locale locale) - { - if (media == null) - { - return null; - } - MgnlContext.setLocale(locale); - MediaTypeConfiguration mtc = mcm.getMediaTypeConfigurationFromMedia(media); - return mtc.getHandler().getAbstract(media); - } - - /** * Get localized description for a media * @param media media * @param locale language @@ -142,6 +123,16 @@ } /** + * Get localized description for a media + * @param media media + * @return description + */ + public static String getDescription(Content media) + { + return getDescription(media, null); + } + + /** * Get localized title for a media * @param media media * @param locale language @@ -153,7 +144,10 @@ { return null; } - MgnlContext.setLocale(locale); + if (locale != null) + { + MgnlContext.setLocale(locale); + } MediaTypeConfiguration mtc = mcm.getMediaTypeConfigurationFromMedia(media); if (mtc != null) { @@ -163,6 +157,16 @@ } /** + * Get localized title for a media + * @param media media + * @return title + */ + public static String getTitle(Content media) + { + return getTitle(media, null); + } + + /** * Get localized tags for a media * @param media media * @param locale language @@ -174,7 +178,10 @@ { return null; } - MgnlContext.setLocale(locale); + if (locale != null) + { + MgnlContext.setLocale(locale); + } MediaTypeConfiguration mtc = mcm.getMediaTypeConfigurationFromMedia(media); String tags = mtc.getHandler().getTags(media); if (tags != null) @@ -185,6 +192,16 @@ } /** + * Get localized tags for a media + * @param media media + * @return tags + */ + public static String[] getTags(Content media) + { + return getTags(media, null); + } + + /** * Get url for a media * @param media media * @return url @@ -209,19 +226,6 @@ return mtc.getHandler().getUrl(media, options); } - @SuppressWarnings("unchecked") - public static String[] getResolutions(Content media) - { - Collection resNodes = media.getChildByName("resolutions").getNodeDataCollection("res-*"); - String[] resolutions = new String[resNodes.size()]; - int i = 0; - for (Object obj : resNodes) - { - resolutions[i++] = ((NodeData) obj).getName().substring(4); - } - return resolutions; - } - /** * @param media * @return String the thumbnail url for this media, null otherwise Modified: trunk/openutils-mgnlmedia/src/main/resources/META-INF/media.tld =================================================================== --- trunk/openutils-mgnlmedia/src/main/resources/META-INF/media.tld 2009-08-26 11:02:26 UTC (rev 1316) +++ trunk/openutils-mgnlmedia/src/main/resources/META-INF/media.tld 2009-08-26 12:55:45 UTC (rev 1317) @@ -12,75 +12,201 @@ <description>Load a node from the media repository, given the UUID of the media node.</description> <function-class>net.sourceforge.openutils.mgnlmedia.media.tags.el.MediaEl</function-class> <function-signature>info.magnolia.cms.core.Content getNode(java.lang.Object)</function-signature> + <example> + <![CDATA[ + <c:set var="mediaNode" value="${media:node(content.image)}" /> + ]]> + </example> </function> <function> <name>desc</name> + <description>Get the description from a media, given the media node itself.</description> <function-class>net.sourceforge.openutils.mgnlmedia.media.tags.el.MediaEl</function-class> - <function-signature>java.lang.String getDescription(info.magnolia.cms.core.Content, java.util.Locale)</function-signature> + <function-signature>java.lang.String getDescription(info.magnolia.cms.core.Content)</function-signature> + <example> + <![CDATA[ + <c:set var="mediaNode" value="${media:node(content.image)}" /> + <c:out value="${media:desc(mediaNode)}" /> + ]]> + </example> </function> <function> - <name>abstract</name> + <name>descLoc</name> + <description>Get the description from a media, given the media node itself and a locale. Try to get the value from nodedata "description-{locale}"; if not found get the value from "description-en"; if not found again, get the value from "description".</description> <function-class>net.sourceforge.openutils.mgnlmedia.media.tags.el.MediaEl</function-class> - <function-signature>java.lang.String getAbstract(info.magnolia.cms.core.Content, java.util.Locale)</function-signature> + <function-signature>java.lang.String getDescription(info.magnolia.cms.core.Content, java.util.Locale)</function-signature> + <example> + <![CDATA[ + <c:set var="mediaNode" value="${media:node(content.image)}" /> + <c:out value="${media:descLoc(mediaNode, pageContext.request.locale)}" /> + ]]> + </example> </function> <function> <name>title</name> + <description>Get the title from a media, given the media node itself.</description> <function-class>net.sourceforge.openutils.mgnlmedia.media.tags.el.MediaEl</function-class> + <function-signature>java.lang.String getTitle(info.magnolia.cms.core.Content)</function-signature> + <example> + <![CDATA[ + <c:set var="mediaNode" value="${media:node(content.image)}" /> + <c:out value="${media:title(mediaNode)}" /> + ]]> + </example> + </function> + <function> + <name>titleLoc</name> + <description>Get the title from a media, given the media node itself and a locale. Try to get the value from nodedata "title-{locale}"; if not found get the value from "title-en"; if not found again, get the value from "title".</description> + <function-class>net.sourceforge.openutils.mgnlmedia.media.tags.el.MediaEl</function-class> <function-signature>java.lang.String getTitle(info.magnolia.cms.core.Content, java.util.Locale)</function-signature> + <example> + <![CDATA[ + <c:set var="mediaNode" value="${media:node(content.image)}" /> + <c:out value="${media:titleLoc(mediaNode, pageContext.request.locale)}" /> + ]]> + </example> </function> <function> <name>tags</name> + <description>Get the tags from a media, given the media node itself.</description> <function-class>net.sourceforge.openutils.mgnlmedia.media.tags.el.MediaEl</function-class> - <function-signature>java.lang.String[] getTags(info.magnolia.cms.core.Content, java.util.Locale)</function-signature> + <function-signature>java.lang.String getTags(info.magnolia.cms.core.Content)</function-signature> + <example> + <![CDATA[ + <c:set var="mediaNode" value="${media:node(content.image)}" /> + <c:forEach var="tag" items="${media:tags(mediaNode)}"> + <c:out value="${tag}" /> + </c:forEach> + ]]> + </example> </function> <function> + <name>tagsLoc</name> + <description>Get the tags from a media, given the media node itself and a locale. Try to get the value from nodedata "tags-{locale}"; if not found get the value from "tags-en"; if not found again, get the value from "tags".</description> + <function-class>net.sourceforge.openutils.mgnlmedia.media.tags.el.MediaEl</function-class> + <function-signature>java.lang.String getTags(info.magnolia.cms.core.Content, java.util.Locale)</function-signature> + <example> + <![CDATA[ + <c:set var="mediaNode" value="${media:node(content.image)}" /> + <c:forEach var="tag" items="${media:tagsLoc(mediaNode, pageContext.request.locale)}"> + <c:out value="${tag}" /> + </c:forEach> + ]]> + </example> + </function> + <function> <name>url</name> + <description>Get the url to the media, given the media node itself</description> <function-class>net.sourceforge.openutils.mgnlmedia.media.tags.el.MediaEl</function-class> <function-signature>String getUrl(info.magnolia.cms.core.Content)</function-signature> + <example> + <![CDATA[ + <c:set var="mediaNode" value="${media:node(content.image)}" /> + <img src="${pageContext.request.contextPath}${media:url(mediaNode)}" /> + ]]> + </example> </function> <function> <name>url2</name> + <description>Get the url to the media, given the media node itself and an options map</description> <function-class>net.sourceforge.openutils.mgnlmedia.media.tags.el.MediaEl</function-class> <function-signature>String getUrl2(info.magnolia.cms.core.Content, java.util.Map)</function-signature> + <example> + <![CDATA[ + <c:set var="mediaNode" value="${media:node(content.image)}" /> + <img src="${pageContext.request.contextPath}${media:url(mediaNode, optionsMap)}" /> + ]]> + </example> </function> <function> + <name>urlres</name> + <description>Get the url to the resolution for a given media node (image or flv/youtube preview)</description> + <function-class>net.sourceforge.openutils.mgnlmedia.media.tags.el.MediaEl</function-class> + <function-signature>java.lang.String getResolutionUrl(info.magnolia.cms.core.Content, java.lang.String)</function-signature> + <example> + <![CDATA[ + <c:set var="mediaNode" value="${media:node(content.image)}" /> + <img src="${pageContext.request.contextPath}${media:urlres(mediaNode, "o200x300")}" /> + ]]> + </example> + </function> + <function> <name>resolutions</name> + <description>Get all the resolutions for a given media node.</description> <function-class>net.sourceforge.openutils.mgnlmedia.media.tags.el.MediaEl</function-class> - <function-signature>java.lang.String[] getResolutions(info.magnolia.cms.core.Content)</function-signature> + <function-signature>java.lang.String[] listResolution(info.magnolia.cms.core.Content)</function-signature> + <example> + <![CDATA[ + <c:set var="mediaNode" value="${media:node(content.image)}" /> + <c:forEach var="res" items="${media:resolutions(mediaNode)}"> + <img src="${pageContext.request.contextPath}${media:urlres(mediaNode, res)}" /> + </c:forEach> + ]]> + </example> </function> <function> <name>thumbnail</name> + <description>Get the url to the thumbnail (l100x100 resolution) for a given media node (image or flv/youtube preview)</description> <function-class>net.sourceforge.openutils.mgnlmedia.media.tags.el.MediaEl</function-class> <function-signature>java.lang.String getThumbnail(info.magnolia.cms.core.Content)</function-signature> + <example> + <![CDATA[ + <c:set var="mediaNode" value="${media:node(content.image)}" /> + <img src="${pageContext.request.contextPath}${media:thumbnail(mediaNode)}" /> + ]]> + </example> </function> <function> - <name>type</name> + <name>preview</name> + <description>Get the url to the preview (l450x450 resolution) for a given media node (image or flv/youtube preview)</description> <function-class>net.sourceforge.openutils.mgnlmedia.media.tags.el.MediaEl</function-class> - <function-signature>java.lang.String getType(info.magnolia.cms.core.Content)</function-signature> + <function-signature>java.lang.String getPreview(info.magnolia.cms.core.Content)</function-signature> + <example> + <![CDATA[ + <c:set var="mediaNode" value="${media:node(content.image)}" /> + <img src="${pageContext.request.contextPath}${media:preview(mediaNode)}" /> + ]]> + </example> </function> <function> - <name>listResolutions</name> + <name>type</name> + <description>Get the media type for a given media node</description> <function-class>net.sourceforge.openutils.mgnlmedia.media.tags.el.MediaEl</function-class> - <function-signature>java.lang.String[] listResolutions(info.magnolia.cms.core.Content)</function-signature> + <function-signature>java.lang.String getType(info.magnolia.cms.core.Content)</function-signature> + <example> + <![CDATA[ + <c:set var="mediaNode" value="${media:node(content.image)}" /> + <c:if test="${media:type(mediaNode) eq 'image'}"> + <img src="${pageContext.request.contextPath}${media:url(mediaNode)}" /> + </c:if> + ]]> + </example> </function> <function> - <name>urlres</name> - <function-class>net.sourceforge.openutils.mgnlmedia.media.tags.el.MediaEl</function-class> - <function-signature>java.lang.String getResolutionUrl(info.magnolia.cms.core.Content, java.lang.String)</function-signature> - </function> - <function> <name>size</name> + <description>Get the real size of a resolution for a given media node (image or flv/youtube preview)</description> <function-class>net.sourceforge.openutils.mgnlmedia.media.tags.el.MediaEl</function-class> <function-signature>int[] getSize(info.magnolia.cms.core.Content, java.lang.String)</function-signature> + <example> + <![CDATA[ + <c:set var="mediaNode" value="${media:node(content.image)}" /> + <c:set var="size" value="${media:size(content.image)}" /> + <img src="${pageContext.request.contextPath}${media:url(mediaNode)}" style="width:${size[0]};height:${size[1]}" /> + ]]> + </example> </function> <function> - <name>preview</name> - <function-class>net.sourceforge.openutils.mgnlmedia.media.tags.el.MediaEl</function-class> - <function-signature>java.lang.String getPreview(info.magnolia.cms.core.Content)</function-signature> - </function> - <function> <name>usedInWebPages</name> + <description>Get list of path to content nodes of website repository in which the given media node is used</description> <function-class>net.sourceforge.openutils.mgnlmedia.media.tags.el.MediaEl</function-class> <function-signature>java.lang.String[] findMediaUsedInWebPages(info.magnolia.cms.core.Content)</function-signature> + <example> + <![CDATA[ + <c:set var="mediaNode" value="${media:node(content.image)}" /> + <c:forEach var="page" items="${media:usedInWebPages(mediaNode)}"> + <a href="${pageContext.request.contextPath}${page}">${page}</a> + </c:forEach> + ]]> + </example> </function> </taglib> \ No newline at end of file This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |