From: <mol...@us...> - 2009-02-13 16:24:50
|
Revision: 989 http://openutils.svn.sourceforge.net/openutils/?rev=989&view=rev Author: molaschi Date: 2009-02-13 16:24:47 +0000 (Fri, 13 Feb 2009) Log Message: ----------- new release to support magnolia 4.0.x Modified Paths: -------------- trunk/openutils-mgnlmedia/pom.xml trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/configuration/MediaConfigurationManager.java trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/dialog/DialogSelectMedia.java trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/lifecycle/MediaModuleLifecycle.java 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/MediaLoadZipFilePage.java trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/pages/MessagesTemplatedMVCHandler.java trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/save/MediaCustomSaveHandler.java trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/setup/MediaModuleVersionHandler.java trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/setup/RemoveResolutionsNodeTask.java trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/setup/RenameThumbToImageTask.java trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/tree/JcrBrowserWithNodeTypeTreeConfiguration.java trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/tree/MediaModuleTreeConfiguration.java trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/tree/MediaModuleTreeMVCHandler.java trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/types/impl/AudioTypeHandler.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/java/net/sourceforge/openutils/mgnlmedia/media/types/impl/VideoTypeHandler.java trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/types/impl/YouTubeVideoTypeHandler.java trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/utils/ImageUtils.java trunk/openutils-mgnlmedia/src/main/resources/info/magnolia/cms/gui/control/MediaTreeFooter.ftl trunk/openutils-mgnlmedia/src/main/resources/mgnl-resources/media/js/mootips.js trunk/openutils-mgnlmedia/src/main/resources/net/sourceforge/openutils/mgnlmedia/media/pages/MediaBrowserPage.html trunk/openutils-mgnlmedia/src/main/resources/net/sourceforge/openutils/mgnlmedia/media/pages/MediaFolderViewPage.html Added Paths: ----------- trunk/openutils-mgnlmedia/src/main/resources/info/magnolia/cms/gui/control/MediaTreeAddress.ftl Modified: trunk/openutils-mgnlmedia/pom.xml =================================================================== --- trunk/openutils-mgnlmedia/pom.xml 2009-02-13 16:01:55 UTC (rev 988) +++ trunk/openutils-mgnlmedia/pom.xml 2009-02-13 16:24:47 UTC (rev 989) @@ -9,7 +9,7 @@ <packaging>jar</packaging> <artifactId>openutils-mgnlmedia</artifactId> <name>openutils-mgnlmedia</name> - <version>0.2-SNAPSHOT</version> + <version>4.0-SNAPSHOT</version> <licenses> <license> <name>GPLv3</name> @@ -38,12 +38,12 @@ <dependency> <groupId>info.magnolia</groupId> <artifactId>magnolia-core</artifactId> - <version>3.6.3</version> + <version>4.0-rc3</version> </dependency> <dependency> <groupId>info.magnolia</groupId> <artifactId>magnolia-module-admininterface</artifactId> - <version>3.6.3</version> + <version>4.0-rc3</version> </dependency> <dependency> <groupId>net.sourceforge.openutils</groupId> Modified: trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/configuration/MediaConfigurationManager.java =================================================================== --- trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/configuration/MediaConfigurationManager.java 2009-02-13 16:01:55 UTC (rev 988) +++ trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/configuration/MediaConfigurationManager.java 2009-02-13 16:24:47 UTC (rev 989) @@ -50,6 +50,8 @@ import net.sourceforge.openutils.mgnlmedia.media.pages.MediaFolderViewPage; import net.sourceforge.openutils.mgnlmedia.media.types.MediaTypeHandler; +import org.apache.commons.collections.CollectionUtils; +import org.apache.commons.collections.Predicate; import org.apache.commons.lang.StringUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -236,7 +238,6 @@ /** * {@inheritDoc} */ - @Override public boolean accept(Content content) { try @@ -260,7 +261,6 @@ /** * {@inheritDoc} */ - @Override public int compare(Content o1, Content o2) { if (sorting.equals(MediaFolderViewPage.SORT_BY_FILENAME)) @@ -337,6 +337,41 @@ return medias; } + @SuppressWarnings("unchecked") + public Collection<Content> search(String text, final String type) throws RepositoryException + { + QueryManager qm = MgnlContext.getQueryManager(MediaModuleLifecycle.REPO); + StringBuilder sb = new StringBuilder(); + sb.append("//*[jcr:contains(.,'"); + sb.append(StringUtils.replace(text, "'", "''")); + sb.append("')] order by @jcr:score descending"); + Query q = qm.createQuery(sb.toString(), Query.XPATH); + QueryResult qr = q.execute(); + Collection c = qr.getContent(MediaConfigurationManager.MGNL_MEDIA_TYPE); + + if (!StringUtils.isBlank(type)) + { + CollectionUtils.filter(c, new Predicate() + { + + /** + * {@inheritDoc} + */ + public boolean evaluate(Object object) + { + if (object instanceof Content) + { + return NodeDataUtil.getString((Content) object, "type").equals(type); + } + return false; + } + + }); + } + + return c; + } + /** * Get the type configuration for a media * @param media media Modified: trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/dialog/DialogSelectMedia.java =================================================================== --- trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/dialog/DialogSelectMedia.java 2009-02-13 16:01:55 UTC (rev 988) +++ trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/dialog/DialogSelectMedia.java 2009-02-13 16:24:47 UTC (rev 989) @@ -19,7 +19,6 @@ import freemarker.template.TemplateException; import freemarker.template.TemplateMethodModel; -import freemarker.template.TemplateModel; import freemarker.template.TemplateModelException; import info.magnolia.cms.core.Content; import info.magnolia.cms.core.HierarchyManager; @@ -298,7 +297,6 @@ /** * {@inheritDoc} */ - @Override public Object exec(List arguments) throws TemplateModelException { if (arguments != null && arguments.size() == 3 && arguments.get(0) instanceof HttpServletRequest) @@ -309,7 +307,7 @@ req.setAttribute(name, value); } - return TemplateModel.NOTHING; + return TemplateMethodModel.NOTHING; } } @@ -325,7 +323,6 @@ /** * {@inheritDoc} */ - @Override public Object exec(List arguments) throws TemplateModelException { if (arguments != null && arguments.size() == 2 && arguments.get(0) instanceof HttpServletRequest) Modified: trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/lifecycle/MediaModuleLifecycle.java =================================================================== --- trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/lifecycle/MediaModuleLifecycle.java 2009-02-13 16:01:55 UTC (rev 988) +++ trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/lifecycle/MediaModuleLifecycle.java 2009-02-13 16:24:47 UTC (rev 989) @@ -30,18 +30,17 @@ */ public class MediaModuleLifecycle implements ModuleLifecycle { - /** - * + * */ public static final String REPO = "media"; private Logger log = LoggerFactory.getLogger(MediaModuleLifecycle.class); /** + * * {@inheritDoc} */ - @Override public void start(ModuleLifecycleContext ctx) { log.info("Starting module media"); @@ -49,9 +48,9 @@ } /** + * * {@inheritDoc} */ - @Override public void stop(ModuleLifecycleContext ctx) { log.info("Stopping module media"); 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 2009-02-13 16:01:55 UTC (rev 988) +++ trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/pages/MediaFolderViewPage.java 2009-02-13 16:24:47 UTC (rev 989) @@ -54,6 +54,7 @@ import org.apache.commons.chain.Command; import org.apache.commons.lang.StringUtils; +import org.apache.jackrabbit.util.ISO9075; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -113,6 +114,8 @@ private boolean develop; + private String search; + /** * @param name * @param request @@ -151,7 +154,10 @@ types = MediaConfigurationManager.getInstance().getTypes().values(); } - fillNumberOfMediaPerType(); + if (!StringUtils.isBlank(path)) + { + fillNumberOfMediaPerType(); + } if (sorting == null) { @@ -167,7 +173,9 @@ QueryManager qm = MgnlContext.getQueryManager(MediaModuleLifecycle.REPO); try { - Query q = qm.createQuery(path.substring(1) + "/*[type='" + mtc.getName() + "']", Query.XPATH); + Query q = qm.createQuery( + ISO9075.encodePath(path.substring(1)) + "/*[type='" + mtc.getName() + "']", + Query.XPATH); QueryResult qr = q.execute(); numberOfMedia.put(mtc.getName(), qr.getContent(MediaConfigurationManager.MEDIA.getSystemName()).size()); @@ -186,25 +194,48 @@ public String show() { HierarchyManager hm = MgnlContext.getInstance().getHierarchyManager(MediaModuleLifecycle.REPO); + MediaTypeConfiguration mtc = MediaConfigurationManager.getInstance().getTypes().get(type); - try + Collection<Content> mediasOfType = null; + medias = new ArrayList<MediaBean>(); + + develop = SystemProperty.getBooleanProperty("magnolia.develop"); + + if (!StringUtils.isBlank(path)) { - Content folder = hm.getContent(this.getPath()); + try + { + Content folder = hm.getContent(this.getPath()); - writable = folder.isGranted(Permission.WRITE); + writable = folder.isGranted(Permission.WRITE); + canPublish = writable && ActivationManagerFactory.getActivationManager().hasAnyActiveSubscriber(); - canPublish = writable && ActivationManagerFactory.getActivationManager().hasAnyActiveSubscriber(); + mediasOfType = MediaConfigurationManager.getInstance().getMediaNodes(folder, type, sorting); - develop = SystemProperty.getBooleanProperty("magnolia.develop"); + } + catch (RepositoryException ex) + { + log.error("Exception caught", ex); + } + } + else if (!StringUtils.isBlank(search)) + { + try + { + writable = false; + canPublish = false; - medias = new ArrayList<MediaBean>(); + mediasOfType = MediaConfigurationManager.getInstance().search(search, type); - MediaTypeConfiguration mtc = MediaConfigurationManager.getInstance().getTypes().get(type); - Collection<Content> mediasOfType = MediaConfigurationManager.getInstance().getMediaNodes( - folder, - type, - sorting); + } + catch (RepositoryException ex) + { + log.error("Exception caught", ex); + } + } + if (mediasOfType != null) + { for (Content media : mediasOfType) { MediaBean mb = new MediaBean(); @@ -218,17 +249,23 @@ mb.setDescription(mtc.getHandler().getDescription(media)); mb.setUuid(media.getUUID()); - mb.getUsedInWebPages().addAll( - MediaConfigurationManager.getInstance().getUsedInWebPages(media.getUUID())); + try + { + mb.setWritable(media.getParent().isGranted(Permission.WRITE)); + mb.setCanPublish(mb.isWritable() + && ActivationManagerFactory.getActivationManager().hasAnyActiveSubscriber()); + mb.getUsedInWebPages().addAll( + MediaConfigurationManager.getInstance().getUsedInWebPages(media.getUUID())); + } + catch (RepositoryException ex) + { + log.error("Exception caught", ex); + } medias.add(mb); } + } - } - catch (RepositoryException ex) - { - log.error("Exception caught", ex); - } return super.show(); } @@ -557,6 +594,10 @@ private List<String> usedInWebPages = new ArrayList<String>(); + private boolean canPublish; + + private boolean writable; + /** * Returns the metaData. * @return the metaData @@ -719,6 +760,42 @@ this.usedInWebPages = usedInWebPages; } + /** + * Returns the canPublish. + * @return the canPublish + */ + public boolean isCanPublish() + { + return canPublish; + } + + /** + * Sets the canPublish. + * @param canPublish the canPublish to set + */ + public void setCanPublish(boolean canPublish) + { + this.canPublish = canPublish; + } + + /** + * Returns the writable. + * @return the writable + */ + public boolean isWritable() + { + return writable; + } + + /** + * Sets the writable. + * @param writable the writable to set + */ + public void setWritable(boolean writable) + { + this.writable = writable; + } + } /** @@ -883,4 +960,22 @@ this.develop = develop; } + /** + * Returns the search. + * @return the search + */ + public String getSearch() + { + return search; + } + + /** + * Sets the search. + * @param search the search to set + */ + public void setSearch(String search) + { + this.search = search; + } + } Modified: trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/pages/MediaLoadZipFilePage.java =================================================================== --- trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/pages/MediaLoadZipFilePage.java 2009-02-13 16:01:55 UTC (rev 988) +++ trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/pages/MediaLoadZipFilePage.java 2009-02-13 16:24:47 UTC (rev 989) @@ -23,16 +23,20 @@ import info.magnolia.cms.core.ItemType; import info.magnolia.cms.core.NodeData; import info.magnolia.cms.core.Path; +import info.magnolia.cms.i18n.Messages; import info.magnolia.cms.security.AccessDeniedException; import info.magnolia.cms.util.NodeDataUtil; import info.magnolia.context.MgnlContext; +import info.magnolia.module.admininterface.TemplatedMVCHandler; import java.io.File; +import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import java.util.Enumeration; import java.util.zip.ZipEntry; import java.util.zip.ZipFile; +import java.util.zip.ZipInputStream; import javax.jcr.RepositoryException; import javax.servlet.http.HttpServletRequest; @@ -41,6 +45,7 @@ import net.sourceforge.openutils.mgnlmedia.media.configuration.MediaConfigurationManager; import net.sourceforge.openutils.mgnlmedia.media.configuration.MediaTypeConfiguration; import net.sourceforge.openutils.mgnlmedia.media.lifecycle.MediaModuleLifecycle; +import net.sourceforge.openutils.mgnlmedia.media.types.MediaTypeHandler; import org.apache.commons.io.IOUtils; import org.apache.commons.lang.StringUtils; Modified: trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/pages/MessagesTemplatedMVCHandler.java =================================================================== --- trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/pages/MessagesTemplatedMVCHandler.java 2009-02-13 16:01:55 UTC (rev 988) +++ trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/pages/MessagesTemplatedMVCHandler.java 2009-02-13 16:24:47 UTC (rev 989) @@ -17,13 +17,13 @@ */ package net.sourceforge.openutils.mgnlmedia.media.pages; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + import info.magnolia.cms.i18n.Messages; import info.magnolia.module.admininterface.TemplatedMVCHandler; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; - /** * @author molaschi * @version $Id$ Modified: trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/save/MediaCustomSaveHandler.java =================================================================== --- trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/save/MediaCustomSaveHandler.java 2009-02-13 16:01:55 UTC (rev 988) +++ trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/save/MediaCustomSaveHandler.java 2009-02-13 16:24:47 UTC (rev 989) @@ -22,7 +22,7 @@ import info.magnolia.cms.core.HierarchyManager; import info.magnolia.cms.security.AccessDeniedException; import info.magnolia.context.MgnlContext; -import info.magnolia.module.admininterface.CustomSaveHandler; +import info.magnolia.module.admininterface.FieldSaveHandler; import javax.jcr.RepositoryException; @@ -37,13 +37,12 @@ * @author molaschi * @version $Id$ */ -public class MediaCustomSaveHandler implements CustomSaveHandler +public class MediaCustomSaveHandler implements FieldSaveHandler { /** * {@inheritDoc} */ - @Override public void save(Content parentNode, Content configNode, String name, MultipartForm form, int type, int valueType, int isRichEditValue, int encoding) throws RepositoryException, AccessDeniedException { Modified: trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/setup/MediaModuleVersionHandler.java =================================================================== --- trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/setup/MediaModuleVersionHandler.java 2009-02-13 16:01:55 UTC (rev 988) +++ trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/setup/MediaModuleVersionHandler.java 2009-02-13 16:24:47 UTC (rev 989) @@ -17,9 +17,14 @@ */ package net.sourceforge.openutils.mgnlmedia.media.setup; +import info.magnolia.module.InstallContext; +import info.magnolia.module.delta.Task; import it.openutils.mgnltasks.SimpleModuleVersionHandler; +import java.util.ArrayList; +import java.util.List; + /** * @author manuel * @version $Id @@ -27,4 +32,18 @@ public class MediaModuleVersionHandler extends SimpleModuleVersionHandler { + /** + * {@inheritDoc} + */ + @Override + protected List getStartupTasks(InstallContext installContext) + { + List<Task> tasks = new ArrayList<Task>(); + + // tasks.add(new RemoveResolutionsNodeTask()); + // tasks.add(new RenameThumbToImageTask()); + + return tasks; + } + } Modified: trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/setup/RemoveResolutionsNodeTask.java =================================================================== --- trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/setup/RemoveResolutionsNodeTask.java 2009-02-13 16:01:55 UTC (rev 988) +++ trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/setup/RemoveResolutionsNodeTask.java 2009-02-13 16:24:47 UTC (rev 989) @@ -17,6 +17,10 @@ */ package net.sourceforge.openutils.mgnlmedia.media.setup; +import java.util.Collection; + +import javax.jcr.RepositoryException; + import info.magnolia.cms.core.Content; import info.magnolia.cms.core.HierarchyManager; import info.magnolia.cms.core.ItemType; @@ -26,11 +30,6 @@ import info.magnolia.module.InstallContext; import info.magnolia.module.delta.AbstractTask; import info.magnolia.module.delta.TaskExecutionException; - -import java.util.Collection; - -import javax.jcr.RepositoryException; - import net.sourceforge.openutils.mgnlmedia.media.configuration.MediaConfigurationManager; import net.sourceforge.openutils.mgnlmedia.media.lifecycle.MediaModuleLifecycle; @@ -54,7 +53,6 @@ /** * {@inheritDoc} */ - @Override public void execute(InstallContext installContext) throws TaskExecutionException { HierarchyManager hm = installContext.getHierarchyManager(MediaModuleLifecycle.REPO); Modified: trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/setup/RenameThumbToImageTask.java =================================================================== --- trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/setup/RenameThumbToImageTask.java 2009-02-13 16:01:55 UTC (rev 988) +++ trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/setup/RenameThumbToImageTask.java 2009-02-13 16:24:47 UTC (rev 989) @@ -56,7 +56,6 @@ /** * {@inheritDoc} */ - @Override public void execute(InstallContext installContext) throws TaskExecutionException { HierarchyManager hm = installContext.getHierarchyManager(MediaModuleLifecycle.REPO); Modified: trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/tree/JcrBrowserWithNodeTypeTreeConfiguration.java =================================================================== --- trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/tree/JcrBrowserWithNodeTypeTreeConfiguration.java 2009-02-13 16:01:55 UTC (rev 988) +++ trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/tree/JcrBrowserWithNodeTypeTreeConfiguration.java 2009-02-13 16:24:47 UTC (rev 989) @@ -44,7 +44,7 @@ { // TODO Auto-generated method stub super.prepareTree(tree, browseMode, request); - + tree.addItemType(MediaConfigurationManager.MEDIA); tree.addItemType(MediaConfigurationManager.RESOLUTIONS); @@ -54,7 +54,6 @@ /** * {@inheritDoc} */ - @Override public String renderHtml(TreeColumn treeColumn, Content content) { try Modified: trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/tree/MediaModuleTreeConfiguration.java =================================================================== --- trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/tree/MediaModuleTreeConfiguration.java 2009-02-13 16:01:55 UTC (rev 988) +++ trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/tree/MediaModuleTreeConfiguration.java 2009-02-13 16:24:47 UTC (rev 989) @@ -49,7 +49,6 @@ /** * {@inheritDoc} */ - @Override public void prepareContextMenu(Tree tree, boolean browseMode, HttpServletRequest request) { final Messages msgs = getMessages(); @@ -209,7 +208,6 @@ /** * {@inheritDoc} */ - @Override public void prepareFunctionBar(Tree tree, boolean browseMode, HttpServletRequest request) { tree.addFunctionBarItem(FunctionBarItem.getRefreshFunctionBarItem(tree, getMessages(), request)); @@ -218,7 +216,6 @@ /** * {@inheritDoc} */ - @Override public void prepareTree(Tree tree, boolean browseMode, HttpServletRequest request) { final Messages msgs = getMessages(); Modified: trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/tree/MediaModuleTreeMVCHandler.java =================================================================== --- trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/tree/MediaModuleTreeMVCHandler.java 2009-02-13 16:01:55 UTC (rev 988) +++ trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/tree/MediaModuleTreeMVCHandler.java 2009-02-13 16:24:47 UTC (rev 989) @@ -17,11 +17,16 @@ */ package net.sourceforge.openutils.mgnlmedia.media.tree; +import info.magnolia.cms.core.ItemType; +import info.magnolia.context.Context; import info.magnolia.module.admininterface.AdminTreeMVCHandler; +import info.magnolia.module.admininterface.commands.ActivationCommand; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; +import net.sourceforge.openutils.mgnlmedia.media.configuration.MediaConfigurationManager; + import org.apache.commons.chain.Command; Modified: trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/types/impl/AudioTypeHandler.java =================================================================== --- trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/types/impl/AudioTypeHandler.java 2009-02-13 16:01:55 UTC (rev 988) +++ trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/types/impl/AudioTypeHandler.java 2009-02-13 16:24:47 UTC (rev 989) @@ -44,7 +44,6 @@ /** * {@inheritDoc} */ - @Override public void init(Content typeDefinitionNode) { @@ -53,7 +52,6 @@ /** * {@inheritDoc} */ - @Override public String getUrl(Content media) { NodeData file = media.getNodeData("audio"); @@ -67,7 +65,6 @@ /** * {@inheritDoc} */ - @Override public String getUrl(Content media, Map<String, String> options) { return getUrl(media); @@ -76,7 +73,6 @@ /** * {@inheritDoc} */ - @Override public String getFilename(Content media) { NodeData file = media.getNodeData("audio"); @@ -86,7 +82,6 @@ /** * {@inheritDoc} */ - @Override public String getExtension(Content media) { NodeData file = media.getNodeData("audio"); @@ -96,7 +91,6 @@ /** * {@inheritDoc} */ - @Override public String getFullFilename(Content media) { return getFilename(media) + "." + getExtension(media); @@ -105,7 +99,6 @@ /** * {@inheritDoc} */ - @Override public String getThumbnailUrl(Content media) { return "/.resources/media/icons/audioThumb.jpg"; @@ -114,7 +107,6 @@ /** * {@inheritDoc} */ - @Override public String getPreviewUrl(Content media) { return getUrl(media); @@ -143,7 +135,6 @@ /** * {@inheritDoc} */ - @Override public String getNewNodeName(MultipartForm form) { return form.getParameter("audio_" + FileProperties.PROPERTY_FILENAME); @@ -152,7 +143,6 @@ /** * {@inheritDoc} */ - @Override public boolean onSavingPropertyMedia(Content media, Content parentNode, Content configNode, String name, MultipartForm form, int type, int valueType, int isRichEditValue, int encoding) throws RepositoryException, AccessDeniedException 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 2009-02-13 16:01:55 UTC (rev 988) +++ trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/types/impl/BaseTypeHandler.java 2009-02-13 16:24:47 UTC (rev 989) @@ -64,7 +64,6 @@ /** * {@inheritDoc} */ - @Override public String getTitle(Content media) { return getPropertyLocalized(media, "title"); @@ -73,7 +72,6 @@ /** * {@inheritDoc} */ - @Override public String getTags(Content media) { return getPropertyLocalized(media, "tags"); @@ -82,7 +80,6 @@ /** * {@inheritDoc} */ - @Override public String getDescription(Content media) { return getPropertyLocalized(media, "description"); @@ -91,7 +88,6 @@ /** * {@inheritDoc} */ - @Override public String getAbstract(Content media) { return getPropertyLocalized(media, "abstract"); @@ -101,7 +97,6 @@ * {@inheritDoc} */ @SuppressWarnings("unchecked") - @Override public boolean onPostSave(Content media) { try 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 2009-02-13 16:01:55 UTC (rev 988) +++ trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/types/impl/ImageTypeHandler.java 2009-02-13 16:24:47 UTC (rev 989) @@ -55,7 +55,6 @@ /** * {@inheritDoc} */ - @Override public void init(Content typeDefinitionNode) { @@ -64,7 +63,6 @@ /** * {@inheritDoc} */ - @Override public String getFilename(Content media) { NodeData file = media.getNodeData("image"); @@ -74,7 +72,6 @@ /** * {@inheritDoc} */ - @Override public String getExtension(Content media) { NodeData file = media.getNodeData("image"); @@ -84,7 +81,6 @@ /** * {@inheritDoc} */ - @Override public String getFullFilename(Content media) { return getFilename(media) + "." + getExtension(media); @@ -93,7 +89,6 @@ /** * {@inheritDoc} */ - @Override public String getUrl(Content media) { NodeData file = media.getNodeData("image"); @@ -107,7 +102,6 @@ /** * {@inheritDoc} */ - @Override public String getUrl(Content media, Map<String, String> options) { return getUrl(media); @@ -116,7 +110,6 @@ /** * {@inheritDoc} */ - @Override public String getThumbnailUrl(Content media) { if (!ImageUtils.checkOrCreateResolution(media, "thumbnail")) @@ -132,7 +125,6 @@ /** * {@inheritDoc} */ - @Override public String getPreviewUrl(Content media) { if (!ImageUtils.checkOrCreateResolution(media, "preview")) @@ -174,7 +166,6 @@ /** * {@inheritDoc} */ - @Override public void saveFromZipFile(Content media, File f, String cleanFileName, String extension) throws AccessDeniedException, RepositoryException { @@ -189,7 +180,6 @@ /** * {@inheritDoc} */ - @Override public String getNewNodeName(MultipartForm form) { return form.getParameter("image_" + FileProperties.PROPERTY_FILENAME); @@ -198,7 +188,6 @@ /** * {@inheritDoc} */ - @Override public boolean onSavingPropertyMedia(final Content media, final Content parentNode, final Content configNode, final String name, final MultipartForm form, final int type, final int valueType, final int isRichEditValue, final int encoding) throws RepositoryException, AccessDeniedException Modified: trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/types/impl/VideoTypeHandler.java =================================================================== --- trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/types/impl/VideoTypeHandler.java 2009-02-13 16:01:55 UTC (rev 988) +++ trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/types/impl/VideoTypeHandler.java 2009-02-13 16:24:47 UTC (rev 989) @@ -47,7 +47,6 @@ /** * {@inheritDoc} */ - @Override public void init(Content typeDefinitionNode) { @@ -56,7 +55,6 @@ /** * {@inheritDoc} */ - @Override public String getUrl(Content media) { NodeData file = media.getNodeData("video"); @@ -70,7 +68,6 @@ /** * {@inheritDoc} */ - @Override public String getUrl(Content media, Map<String, String> options) { return getUrl(media); @@ -79,7 +76,6 @@ /** * {@inheritDoc} */ - @Override public String getFilename(Content media) { NodeData file = media.getNodeData("video"); @@ -89,7 +85,6 @@ /** * {@inheritDoc} */ - @Override public String getExtension(Content media) { NodeData file = media.getNodeData("video"); @@ -99,7 +94,6 @@ /** * {@inheritDoc} */ - @Override public String getFullFilename(Content media) { return getFilename(media) + "." + getExtension(media); @@ -108,7 +102,6 @@ /** * {@inheritDoc} */ - @Override public String getThumbnailUrl(Content media) { if (!ImageUtils.checkOrCreateResolution(media, "thumbnail")) @@ -124,7 +117,6 @@ /** * {@inheritDoc} */ - @Override public String getPreviewUrl(Content media) { return getUrl(media); @@ -153,7 +145,6 @@ /** * {@inheritDoc} */ - @Override public String getNewNodeName(MultipartForm form) { return form.getParameter("video_" + FileProperties.PROPERTY_FILENAME); @@ -162,7 +153,6 @@ /** * {@inheritDoc} */ - @Override public boolean onSavingPropertyMedia(Content media, Content parentNode, Content configNode, String name, MultipartForm form, int type, int valueType, int isRichEditValue, int encoding) throws RepositoryException, AccessDeniedException Modified: trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/types/impl/YouTubeVideoTypeHandler.java =================================================================== --- trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/types/impl/YouTubeVideoTypeHandler.java 2009-02-13 16:01:55 UTC (rev 988) +++ trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/types/impl/YouTubeVideoTypeHandler.java 2009-02-13 16:24:47 UTC (rev 989) @@ -54,7 +54,6 @@ /** * {@inheritDoc} */ - @Override public void init(Content typeDefinitionNode) { @@ -63,7 +62,6 @@ /** * {@inheritDoc} */ - @Override public String getUrl(Content media) { return media.getNodeData("videoUrl").getString(); @@ -72,7 +70,6 @@ /** * {@inheritDoc} */ - @Override public String getUrl(Content media, Map<String, String> options) { return getUrl(media); @@ -81,7 +78,6 @@ /** * {@inheritDoc} */ - @Override public String getFilename(Content media) { return getUrl(media); @@ -90,7 +86,6 @@ /** * {@inheritDoc} */ - @Override public String getExtension(Content media) { return null; @@ -99,7 +94,6 @@ /** * {@inheritDoc} */ - @Override public String getFullFilename(Content media) { return null; @@ -108,7 +102,6 @@ /** * {@inheritDoc} */ - @Override public String getThumbnailUrl(Content media) { if (!ImageUtils.checkOrCreateResolution(media, "thumbnail")) @@ -124,7 +117,6 @@ /** * {@inheritDoc} */ - @Override public String getPreviewUrl(Content media) { return getUrl(media); @@ -148,7 +140,6 @@ /** * {@inheritDoc} */ - @Override public String getNewNodeName(MultipartForm form) { String videoUrl = form.getParameter("videoUrl"); @@ -176,7 +167,6 @@ /** * {@inheritDoc} */ - @Override public boolean onSavingPropertyMedia(Content media, Content parentNode, Content configNode, String name, MultipartForm form, int type, int valueType, int isRichEditValue, int encoding) throws RepositoryException, AccessDeniedException Modified: trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/utils/ImageUtils.java =================================================================== --- trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/utils/ImageUtils.java 2009-02-13 16:01:55 UTC (rev 988) +++ trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/utils/ImageUtils.java 2009-02-13 16:24:47 UTC (rev 989) @@ -27,7 +27,6 @@ import java.awt.Graphics2D; import java.awt.Image; import java.awt.RenderingHints; -import java.awt.Transparency; import java.awt.image.BufferedImage; import java.awt.image.ColorModel; import java.io.BufferedOutputStream; @@ -87,7 +86,7 @@ private static int getType(ColorModel cm) { - if (cm.getTransparency() == Transparency.BITMASK) + if (cm.getTransparency() == ColorModel.BITMASK) { if (cm.isAlphaPremultiplied()) { @@ -98,7 +97,7 @@ return BufferedImage.TYPE_4BYTE_ABGR; } } - if (cm.getTransparency() == Transparency.TRANSLUCENT) + if (cm.getTransparency() == ColorModel.TRANSLUCENT) { if (cm.isAlphaPremultiplied()) { @@ -449,7 +448,6 @@ /** * {@inheritDoc} */ - @Override public void exec() { HierarchyManager hm = MgnlContext.getHierarchyManager(MediaModuleLifecycle.REPO); Added: trunk/openutils-mgnlmedia/src/main/resources/info/magnolia/cms/gui/control/MediaTreeAddress.ftl =================================================================== --- trunk/openutils-mgnlmedia/src/main/resources/info/magnolia/cms/gui/control/MediaTreeAddress.ftl (rev 0) +++ trunk/openutils-mgnlmedia/src/main/resources/info/magnolia/cms/gui/control/MediaTreeAddress.ftl 2009-02-13 16:24:47 UTC (rev 989) @@ -0,0 +1,2 @@ +<img src="${contextPath}/.resources/0.gif" height="3px"/> +<input id="${tree.javascriptTree}SearchBar" type="text" onkeydown="if (mgnlIsKeyEnter(event)) parent.search(this.value);" class="mgnlDialogControlEdit" style="width:100%;" value="" /> \ No newline at end of file Modified: trunk/openutils-mgnlmedia/src/main/resources/info/magnolia/cms/gui/control/MediaTreeFooter.ftl =================================================================== --- trunk/openutils-mgnlmedia/src/main/resources/info/magnolia/cms/gui/control/MediaTreeFooter.ftl 2009-02-13 16:01:55 UTC (rev 988) +++ trunk/openutils-mgnlmedia/src/main/resources/info/magnolia/cms/gui/control/MediaTreeFooter.ftl 2009-02-13 16:24:47 UTC (rev 989) @@ -21,7 +21,11 @@ ${menu.html} </#if> -<#if tree.browseMode && !selectMedia> +<#if tree.browseMode && selectMedia?exists && selectMedia> + <#include "MediaTreeAddress.ftl"/> +</#if> + +<#if tree.browseMode && (!selectMedia?exists || !selectMedia)> <#include "TreeAddressBar.ftl"/> </#if> Modified: trunk/openutils-mgnlmedia/src/main/resources/mgnl-resources/media/js/mootips.js =================================================================== --- trunk/openutils-mgnlmedia/src/main/resources/mgnl-resources/media/js/mootips.js 2009-02-13 16:01:55 UTC (rev 988) +++ trunk/openutils-mgnlmedia/src/main/resources/mgnl-resources/media/js/mootips.js 2009-02-13 16:24:47 UTC (rev 989) @@ -17,6 +17,29 @@ leaveTip : function() { $clear(this.timer); this.timer = this.hide.delay(this.options.hideDelay, this); + }, + + position : function(event) { + var size = window.getSize(), scroll = window.getScroll(); + var tip = { + x :this.tip.offsetWidth, + y :this.tip.offsetHeight + }; + var props = { + x :'left', + y :'top' + }; + for ( var z in props) { + var pos = event.page[z] + this.options.offsets[z]; + if ((pos + tip[z] - scroll[z]) > size[z]) { + pos = pos - ((pos + tip[z] - scroll[z]) - size[z]); + if (pos < 0) + { + pos = 0; + } + } + this.tip.setStyle(props[z], pos); + } } }); \ No newline at end of file Modified: trunk/openutils-mgnlmedia/src/main/resources/net/sourceforge/openutils/mgnlmedia/media/pages/MediaBrowserPage.html =================================================================== --- trunk/openutils-mgnlmedia/src/main/resources/net/sourceforge/openutils/mgnlmedia/media/pages/MediaBrowserPage.html 2009-02-13 16:01:55 UTC (rev 988) +++ trunk/openutils-mgnlmedia/src/main/resources/net/sourceforge/openutils/mgnlmedia/media/pages/MediaBrowserPage.html 2009-02-13 16:24:47 UTC (rev 989) @@ -29,6 +29,21 @@ return url; } +function search(textToSearch) { + viewport.getComponent('center-panel').setTitle("Search results for : "+ textToSearch); + + var url = "${this.request.contextPath}/.magnolia/pages/mediaFolderView.html?search="+ textToSearch + "&mgnlCK=" + (new Date()).getTime(); + if (selectMedia) + { + url += "&selectMedia=true&actMediaHandle="+ actMediaHandle; + } + if (mediaType != null && mediaType != 'null') + { + url += "&mediaType=" + mediaType; + } + frames['mediaFolderView'].location.href = url; +} + Ext.onReady(function(){ Ext.state.Manager.setProvider(new Ext.state.CookieProvider()); 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 2009-02-13 16:01:55 UTC (rev 988) +++ trunk/openutils-mgnlmedia/src/main/resources/net/sourceforge/openutils/mgnlmedia/media/pages/MediaFolderViewPage.html 2009-02-13 16:24:47 UTC (rev 989) @@ -25,7 +25,7 @@ function performAction(action, source, dest) { - if (action == "move" && dest == "${this.path}") + if (action == "move" && dest == "${this.path!""}") { alert("Non è possibile spostare all'interno dello stesso nodo."); return; @@ -88,7 +88,8 @@ <body> <form action="" style="display:none" id="actionForm"> <input type="hidden" id="actionCmd" name="command" value="delete" /> - <input type="hidden" id="actionPath" name="path" value="${this.path}" /> + <input type="hidden" id="actionPath" name="path" value="${this.path!""}" /> + <input type="hidden" id="actionSearch" name="search" value="${this.search!""}" /> <input type="hidden" id="actionNode" name="node" /> <input type="hidden" id="actionDest" name="dest" /> <input type="hidden" name="type" value="${this.type}" /> @@ -102,14 +103,14 @@ </#if> <div class="voice ${actual}"> <#if this.request.parameterMap['selectMedia']?exists> - <a href="?type=${type.name}&path=${this.path}&selectMedia=true"> + <a href="?type=${type.name}&path=${this.path!""}&selectMedia=true&search=${this.search!""}"> <img src="${this.request.contextPath}${type.menuIcon}" border="0" align="absmiddle" /> - ${this.msgs.get('media.types.' + type.name)} (${this.numberOfMedia[type.name]!'0'}) + ${this.msgs.get('media.types.' + type.name)} <#if this.numberOfMedia?exists>(${this.numberOfMedia[type.name]!'0'})</#if> </a> <#else> - <a href="?type=${type.name}&path=${this.path}"> + <a href="?type=${type.name}&path=${this.path!""}&search=${this.search!""}"> <img src="${this.request.contextPath}${type.menuIcon}" border="0" align="absmiddle" /> - ${this.msgs.get('media.types.' + type.name)} (${this.numberOfMedia[type.name]!'0'}) + ${this.msgs.get('media.types.' + type.name)} <#if this.numberOfMedia?exists>(${this.numberOfMedia[type.name]!'0'})</#if> </a> </#if> </div> @@ -150,7 +151,7 @@ ${this.msgs.get('media.select')} </a> <#else> - <#if this.canPublish && media.metaData.activationStatus < 2> + <#if media.canPublish && media.metaData.activationStatus < 2> <a href="javascript:$empty()" onclick="performAction('activate', '${media.handle}','')" title="pubblica"> <img src="${this.request.contextPath}/.resources/icons/16/arrow_right_green.gif" border="0" align="middle" /> </a> @@ -159,7 +160,7 @@ </#if> </#if> <#else> - <#if this.writable> + <#if media.writable> <a href="javascript:$empty()" onclick="openDialog('${media.handle}')" title="${this.msgs.get('media.edit')}"> <img src="${this.request.contextPath}/.resources/media/icons/edit.gif" border="0" align="middle" /> </a> @@ -186,7 +187,7 @@ <img src="${this.request.contextPath}/.resources/icons/16/copy_inactive.gif" border="0" align="middle" /> </a> </#if> - <#if this.canPublish> + <#if media.canPublish> <a href="javascript:$empty()" onclick="performAction('activate', '${media.handle}','')" title="${this.msgs.get('media.activate')}"> <img src="${this.request.contextPath}/.resources/icons/16/arrow_right_green.gif" border="0" align="middle" /> </a> @@ -196,7 +197,7 @@ align="middle" /> </a> </#if> - <#if this.canPublish && media.metaData.activationStatus = 2> + <#if media.canPublish && media.metaData.activationStatus = 2> <a href="javascript:$empty()" onclick="performAction('deactivate', '${media.handle}','')" title="${this.msgs.get('media.deactivate')}"> <img src="${this.request.contextPath}/.resources/icons/16/arrow_left_red.gif" border="0" align="middle" /> </a> @@ -214,7 +215,7 @@ <#else> <#assign pages = ""> <#list media.usedInWebPages as page> - <#assign pages = pages + "<a href='${this.request.contextPath}" + page +".html' target='_blank'>"+ page +"</a><br/>"> + <#assign pages = pages + "<a href='${this.request.contextPath}" + page +".html' target='_blank'>"+ page +"</a><br/>"> </#list> <span class="tips" rel="${pages}">${this.msgs.get('media.pages')} (${media.usedInWebPages?size})</span> </#if> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |