From: <fg...@us...> - 2009-02-15 22:33:31
|
Revision: 1004 http://openutils.svn.sourceforge.net/openutils/?rev=1004&view=rev Author: fgiust Date: 2009-02-15 22:33:26 +0000 (Sun, 15 Feb 2009) Log Message: ----------- merging recent changes Modified Paths: -------------- branches/openutils-mgnlmedia-3.6.x/src/main/java/net/sourceforge/openutils/mgnlmedia/media/configuration/MediaConfigurationManager.java branches/openutils-mgnlmedia-3.6.x/src/main/java/net/sourceforge/openutils/mgnlmedia/media/dialog/DialogSelectMedia.java branches/openutils-mgnlmedia-3.6.x/src/main/java/net/sourceforge/openutils/mgnlmedia/media/lifecycle/MediaModuleLifecycle.java branches/openutils-mgnlmedia-3.6.x/src/main/java/net/sourceforge/openutils/mgnlmedia/media/pages/MediaFolderViewPage.java branches/openutils-mgnlmedia-3.6.x/src/main/java/net/sourceforge/openutils/mgnlmedia/media/save/MediaCustomSaveHandler.java branches/openutils-mgnlmedia-3.6.x/src/main/java/net/sourceforge/openutils/mgnlmedia/media/setup/RemoveResolutionsNodeTask.java branches/openutils-mgnlmedia-3.6.x/src/main/java/net/sourceforge/openutils/mgnlmedia/media/setup/RenameThumbToImageTask.java branches/openutils-mgnlmedia-3.6.x/src/main/java/net/sourceforge/openutils/mgnlmedia/media/tree/JcrBrowserWithNodeTypeTreeConfiguration.java branches/openutils-mgnlmedia-3.6.x/src/main/java/net/sourceforge/openutils/mgnlmedia/media/tree/MediaModuleTreeConfiguration.java branches/openutils-mgnlmedia-3.6.x/src/main/java/net/sourceforge/openutils/mgnlmedia/media/types/impl/AudioTypeHandler.java branches/openutils-mgnlmedia-3.6.x/src/main/java/net/sourceforge/openutils/mgnlmedia/media/types/impl/BaseTypeHandler.java branches/openutils-mgnlmedia-3.6.x/src/main/java/net/sourceforge/openutils/mgnlmedia/media/types/impl/ImageTypeHandler.java branches/openutils-mgnlmedia-3.6.x/src/main/java/net/sourceforge/openutils/mgnlmedia/media/types/impl/VideoTypeHandler.java branches/openutils-mgnlmedia-3.6.x/src/main/java/net/sourceforge/openutils/mgnlmedia/media/types/impl/YouTubeVideoTypeHandler.java branches/openutils-mgnlmedia-3.6.x/src/main/java/net/sourceforge/openutils/mgnlmedia/media/utils/ImageUtils.java branches/openutils-mgnlmedia-3.6.x/src/main/resources/META-INF/magnolia/media.xml branches/openutils-mgnlmedia-3.6.x/src/main/resources/info/magnolia/cms/gui/control/MediaTreeFooter.ftl branches/openutils-mgnlmedia-3.6.x/src/main/resources/mgnl-resources/media/js/mootips.js branches/openutils-mgnlmedia-3.6.x/src/main/resources/net/sourceforge/openutils/mgnlmedia/media/pages/MediaBrowserPage.html branches/openutils-mgnlmedia-3.6.x/src/main/resources/net/sourceforge/openutils/mgnlmedia/media/pages/MediaFolderViewPage.html Added Paths: ----------- branches/openutils-mgnlmedia-3.6.x/src/main/resources/info/magnolia/cms/gui/control/MediaTreeAddress.ftl Property Changed: ---------------- branches/openutils-mgnlmedia-3.6.x/ Property changes on: branches/openutils-mgnlmedia-3.6.x ___________________________________________________________________ Modified: svn:ignore - .settings .checkstyle .classpath .project target test-output temp-testng-customsuite.xml svnmerge-commit-message.txt + .settings .checkstyle .classpath .project target test-output temp-testng-customsuite.xml svnmerge-commit-message.txt release.properties pom.xml.releaseBackup Modified: branches/openutils-mgnlmedia-3.6.x/src/main/java/net/sourceforge/openutils/mgnlmedia/media/configuration/MediaConfigurationManager.java =================================================================== --- branches/openutils-mgnlmedia-3.6.x/src/main/java/net/sourceforge/openutils/mgnlmedia/media/configuration/MediaConfigurationManager.java 2009-02-15 22:01:47 UTC (rev 1003) +++ branches/openutils-mgnlmedia-3.6.x/src/main/java/net/sourceforge/openutils/mgnlmedia/media/configuration/MediaConfigurationManager.java 2009-02-15 22:33:26 UTC (rev 1004) @@ -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: branches/openutils-mgnlmedia-3.6.x/src/main/java/net/sourceforge/openutils/mgnlmedia/media/dialog/DialogSelectMedia.java =================================================================== --- branches/openutils-mgnlmedia-3.6.x/src/main/java/net/sourceforge/openutils/mgnlmedia/media/dialog/DialogSelectMedia.java 2009-02-15 22:01:47 UTC (rev 1003) +++ branches/openutils-mgnlmedia-3.6.x/src/main/java/net/sourceforge/openutils/mgnlmedia/media/dialog/DialogSelectMedia.java 2009-02-15 22:33:26 UTC (rev 1004) @@ -298,7 +298,6 @@ /** * {@inheritDoc} */ - @Override public Object exec(List arguments) throws TemplateModelException { if (arguments != null && arguments.size() == 3 && arguments.get(0) instanceof HttpServletRequest) @@ -325,7 +324,6 @@ /** * {@inheritDoc} */ - @Override public Object exec(List arguments) throws TemplateModelException { if (arguments != null && arguments.size() == 2 && arguments.get(0) instanceof HttpServletRequest) Modified: branches/openutils-mgnlmedia-3.6.x/src/main/java/net/sourceforge/openutils/mgnlmedia/media/lifecycle/MediaModuleLifecycle.java =================================================================== --- branches/openutils-mgnlmedia-3.6.x/src/main/java/net/sourceforge/openutils/mgnlmedia/media/lifecycle/MediaModuleLifecycle.java 2009-02-15 22:01:47 UTC (rev 1003) +++ branches/openutils-mgnlmedia-3.6.x/src/main/java/net/sourceforge/openutils/mgnlmedia/media/lifecycle/MediaModuleLifecycle.java 2009-02-15 22:33:26 UTC (rev 1004) @@ -41,7 +41,6 @@ /** * {@inheritDoc} */ - @Override public void start(ModuleLifecycleContext ctx) { log.info("Starting module media"); @@ -51,7 +50,6 @@ /** * {@inheritDoc} */ - @Override public void stop(ModuleLifecycleContext ctx) { log.info("Stopping module media"); Modified: branches/openutils-mgnlmedia-3.6.x/src/main/java/net/sourceforge/openutils/mgnlmedia/media/pages/MediaFolderViewPage.java =================================================================== --- branches/openutils-mgnlmedia-3.6.x/src/main/java/net/sourceforge/openutils/mgnlmedia/media/pages/MediaFolderViewPage.java 2009-02-15 22:01:47 UTC (rev 1003) +++ branches/openutils-mgnlmedia-3.6.x/src/main/java/net/sourceforge/openutils/mgnlmedia/media/pages/MediaFolderViewPage.java 2009-02-15 22:33:26 UTC (rev 1004) @@ -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: branches/openutils-mgnlmedia-3.6.x/src/main/java/net/sourceforge/openutils/mgnlmedia/media/save/MediaCustomSaveHandler.java =================================================================== --- branches/openutils-mgnlmedia-3.6.x/src/main/java/net/sourceforge/openutils/mgnlmedia/media/save/MediaCustomSaveHandler.java 2009-02-15 22:01:47 UTC (rev 1003) +++ branches/openutils-mgnlmedia-3.6.x/src/main/java/net/sourceforge/openutils/mgnlmedia/media/save/MediaCustomSaveHandler.java 2009-02-15 22:33:26 UTC (rev 1004) @@ -43,7 +43,6 @@ /** * {@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: branches/openutils-mgnlmedia-3.6.x/src/main/java/net/sourceforge/openutils/mgnlmedia/media/setup/RemoveResolutionsNodeTask.java =================================================================== --- branches/openutils-mgnlmedia-3.6.x/src/main/java/net/sourceforge/openutils/mgnlmedia/media/setup/RemoveResolutionsNodeTask.java 2009-02-15 22:01:47 UTC (rev 1003) +++ branches/openutils-mgnlmedia-3.6.x/src/main/java/net/sourceforge/openutils/mgnlmedia/media/setup/RemoveResolutionsNodeTask.java 2009-02-15 22:33:26 UTC (rev 1004) @@ -54,7 +54,6 @@ /** * {@inheritDoc} */ - @Override public void execute(InstallContext installContext) throws TaskExecutionException { HierarchyManager hm = installContext.getHierarchyManager(MediaModuleLifecycle.REPO); Modified: branches/openutils-mgnlmedia-3.6.x/src/main/java/net/sourceforge/openutils/mgnlmedia/media/setup/RenameThumbToImageTask.java =================================================================== --- branches/openutils-mgnlmedia-3.6.x/src/main/java/net/sourceforge/openutils/mgnlmedia/media/setup/RenameThumbToImageTask.java 2009-02-15 22:01:47 UTC (rev 1003) +++ branches/openutils-mgnlmedia-3.6.x/src/main/java/net/sourceforge/openutils/mgnlmedia/media/setup/RenameThumbToImageTask.java 2009-02-15 22:33:26 UTC (rev 1004) @@ -56,7 +56,6 @@ /** * {@inheritDoc} */ - @Override public void execute(InstallContext installContext) throws TaskExecutionException { HierarchyManager hm = installContext.getHierarchyManager(MediaModuleLifecycle.REPO); Modified: branches/openutils-mgnlmedia-3.6.x/src/main/java/net/sourceforge/openutils/mgnlmedia/media/tree/JcrBrowserWithNodeTypeTreeConfiguration.java =================================================================== --- branches/openutils-mgnlmedia-3.6.x/src/main/java/net/sourceforge/openutils/mgnlmedia/media/tree/JcrBrowserWithNodeTypeTreeConfiguration.java 2009-02-15 22:01:47 UTC (rev 1003) +++ branches/openutils-mgnlmedia-3.6.x/src/main/java/net/sourceforge/openutils/mgnlmedia/media/tree/JcrBrowserWithNodeTypeTreeConfiguration.java 2009-02-15 22:33:26 UTC (rev 1004) @@ -54,7 +54,6 @@ /** * {@inheritDoc} */ - @Override public String renderHtml(TreeColumn treeColumn, Content content) { try Modified: branches/openutils-mgnlmedia-3.6.x/src/main/java/net/sourceforge/openutils/mgnlmedia/media/tree/MediaModuleTreeConfiguration.java =================================================================== --- branches/openutils-mgnlmedia-3.6.x/src/main/java/net/sourceforge/openutils/mgnlmedia/media/tree/MediaModuleTreeConfiguration.java 2009-02-15 22:01:47 UTC (rev 1003) +++ branches/openutils-mgnlmedia-3.6.x/src/main/java/net/sourceforge/openutils/mgnlmedia/media/tree/MediaModuleTreeConfiguration.java 2009-02-15 22:33:26 UTC (rev 1004) @@ -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: branches/openutils-mgnlmedia-3.6.x/src/main/java/net/sourceforge/openutils/mgnlmedia/media/types/impl/AudioTypeHandler.java =================================================================== --- branches/openutils-mgnlmedia-3.6.x/src/main/java/net/sourceforge/openutils/mgnlmedia/media/types/impl/AudioTypeHandler.java 2009-02-15 22:01:47 UTC (rev 1003) +++ branches/openutils-mgnlmedia-3.6.x/src/main/java/net/sourceforge/openutils/mgnlmedia/media/types/impl/AudioTypeHandler.java 2009-02-15 22:33:26 UTC (rev 1004) @@ -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: branches/openutils-mgnlmedia-3.6.x/src/main/java/net/sourceforge/openutils/mgnlmedia/media/types/impl/BaseTypeHandler.java =================================================================== --- branches/openutils-mgnlmedia-3.6.x/src/main/java/net/sourceforge/openutils/mgnlmedia/media/types/impl/BaseTypeHandler.java 2009-02-15 22:01:47 UTC (rev 1003) +++ branches/openutils-mgnlmedia-3.6.x/src/main/java/net/sourceforge/openutils/mgnlmedia/media/types/impl/BaseTypeHandler.java 2009-02-15 22:33:26 UTC (rev 1004) @@ -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: branches/openutils-mgnlmedia-3.6.x/src/main/java/net/sourceforge/openutils/mgnlmedia/media/types/impl/ImageTypeHandler.java =================================================================== --- branches/openutils-mgnlmedia-3.6.x/src/main/java/net/sourceforge/openutils/mgnlmedia/media/types/impl/ImageTypeHandler.java 2009-02-15 22:01:47 UTC (rev 1003) +++ branches/openutils-mgnlmedia-3.6.x/src/main/java/net/sourceforge/openutils/mgnlmedia/media/types/impl/ImageTypeHandler.java 2009-02-15 22:33:26 UTC (rev 1004) @@ -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")) @@ -148,8 +140,8 @@ /** * {@inheritDoc} */ - @SuppressWarnings("unchecked") @Override + @SuppressWarnings("unchecked") public boolean onPostSave(Content media) { Collection<NodeData> nds = media.getNodeDataCollection("tags-*"); @@ -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: branches/openutils-mgnlmedia-3.6.x/src/main/java/net/sourceforge/openutils/mgnlmedia/media/types/impl/VideoTypeHandler.java =================================================================== --- branches/openutils-mgnlmedia-3.6.x/src/main/java/net/sourceforge/openutils/mgnlmedia/media/types/impl/VideoTypeHandler.java 2009-02-15 22:01:47 UTC (rev 1003) +++ branches/openutils-mgnlmedia-3.6.x/src/main/java/net/sourceforge/openutils/mgnlmedia/media/types/impl/VideoTypeHandler.java 2009-02-15 22:33:26 UTC (rev 1004) @@ -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: branches/openutils-mgnlmedia-3.6.x/src/main/java/net/sourceforge/openutils/mgnlmedia/media/types/impl/YouTubeVideoTypeHandler.java =================================================================== --- branches/openutils-mgnlmedia-3.6.x/src/main/java/net/sourceforge/openutils/mgnlmedia/media/types/impl/YouTubeVideoTypeHandler.java 2009-02-15 22:01:47 UTC (rev 1003) +++ branches/openutils-mgnlmedia-3.6.x/src/main/java/net/sourceforge/openutils/mgnlmedia/media/types/impl/YouTubeVideoTypeHandler.java 2009-02-15 22:33:26 UTC (rev 1004) @@ -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: branches/openutils-mgnlmedia-3.6.x/src/main/java/net/sourceforge/openutils/mgnlmedia/media/utils/ImageUtils.java =================================================================== --- branches/openutils-mgnlmedia-3.6.x/src/main/java/net/sourceforge/openutils/mgnlmedia/media/utils/ImageUtils.java 2009-02-15 22:01:47 UTC (rev 1003) +++ branches/openutils-mgnlmedia-3.6.x/src/main/java/net/sourceforge/openutils/mgnlmedia/media/utils/ImageUtils.java 2009-02-15 22:33:26 UTC (rev 1004) @@ -450,7 +450,6 @@ /** * {@inheritDoc} */ - @Override public void exec() { HierarchyManager hm = MgnlContext.getHierarchyManager(MediaModuleLifecycle.REPO); Modified: branches/openutils-mgnlmedia-3.6.x/src/main/resources/META-INF/magnolia/media.xml =================================================================== --- branches/openutils-mgnlmedia-3.6.x/src/main/resources/META-INF/magnolia/media.xml 2009-02-15 22:01:47 UTC (rev 1003) +++ branches/openutils-mgnlmedia-3.6.x/src/main/resources/META-INF/magnolia/media.xml 2009-02-15 22:33:26 UTC (rev 1004) @@ -10,11 +10,11 @@ <dependencies> <dependency> <name>adminInterface</name> - <version>3.1/*</version> + <version>3.6/*</version> </dependency> <dependency> <name>cache</name> - <version>3.1/*</version> + <version>3.6/*</version> </dependency> </dependencies> <repositories> Added: branches/openutils-mgnlmedia-3.6.x/src/main/resources/info/magnolia/cms/gui/control/MediaTreeAddress.ftl =================================================================== --- branches/openutils-mgnlmedia-3.6.x/src/main/resources/info/magnolia/cms/gui/control/MediaTreeAddress.ftl (rev 0) +++ branches/openutils-mgnlmedia-3.6.x/src/main/resources/info/magnolia/cms/gui/control/MediaTreeAddress.ftl 2009-02-15 22:33:26 UTC (rev 1004) @@ -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 Property changes on: branches/openutils-mgnlmedia-3.6.x/src/main/resources/info/magnolia/cms/gui/control/MediaTreeAddress.ftl ___________________________________________________________________ Added: svn:mime-type + text/plain Added: svn:eol-style + native Modified: branches/openutils-mgnlmedia-3.6.x/src/main/resources/info/magnolia/cms/gui/control/MediaTreeFooter.ftl =================================================================== --- branches/openutils-mgnlmedia-3.6.x/src/main/resources/info/magnolia/cms/gui/control/MediaTreeFooter.ftl 2009-02-15 22:01:47 UTC (rev 1003) +++ branches/openutils-mgnlmedia-3.6.x/src/main/resources/info/magnolia/cms/gui/control/MediaTreeFooter.ftl 2009-02-15 22:33:26 UTC (rev 1004) @@ -1,10 +1,10 @@ <!-- line for moving to the bottom --> <div id="${lineId}" class="mgnlTreeLineInter mgnlLineEnabled" onmouseover="${tree.javascriptTree}.moveNodeHighlightLine('${lineId}');" onmouseout="${tree.javascriptTree}.moveNodeResetLine('${lineId}');" onmousedown="${tree.javascriptTree}.pasteNode('${tree.path}',${PASTETYPE_SUB},${permissionWrite?string},'${lineId}');"></div> - + <!-- this is needed for IE else you can't scroll. Do not ask me why! --> <div style="position:absolute;" > </div> - + <!-- do we have write permission on the root? --> <input type="hidden" name="${tree.javascriptTree}_${tree.path}_PermissionWrite" id="${tree.javascriptTree}_${tree.path}_PermissionWrite" value="${permissionWrite?string}" /> @@ -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: branches/openutils-mgnlmedia-3.6.x/src/main/resources/mgnl-resources/media/js/mootips.js =================================================================== --- branches/openutils-mgnlmedia-3.6.x/src/main/resources/mgnl-resources/media/js/mootips.js 2009-02-15 22:01:47 UTC (rev 1003) +++ branches/openutils-mgnlmedia-3.6.x/src/main/resources/mgnl-resources/media/js/mootips.js 2009-02-15 22:33:26 UTC (rev 1004) @@ -1,22 +1,45 @@ var TipsEx = new Class( { - Extends :Tips, + Extends :Tips, - initialize : function(elements, options) { - this.parent(elements, options); - this.tip.addEvents( { - mouseenter :this.enterTip.bind(this), - mouseleave :this.leaveTip.bind(this) - }); - }, + initialize : function(elements, options) { + this.parent(elements, options); + this.tip.addEvents( { + mouseenter :this.enterTip.bind(this), + mouseleave :this.leaveTip.bind(this) + }); + }, - enterTip : function() { - this.timer = $clear(this.timer); - }, + enterTip : function() { + this.timer = $clear(this.timer); + }, - leaveTip : function() { - $clear(this.timer); - this.timer = this.hide.delay(this.options.hideDelay, this); - } + 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: branches/openutils-mgnlmedia-3.6.x/src/main/resources/net/sourceforge/openutils/mgnlmedia/media/pages/MediaBrowserPage.html =================================================================== --- branches/openutils-mgnlmedia-3.6.x/src/main/resources/net/sourceforge/openutils/mgnlmedia/media/pages/MediaBrowserPage.html 2009-02-15 22:01:47 UTC (rev 1003) +++ branches/openutils-mgnlmedia-3.6.x/src/main/resources/net/sourceforge/openutils/mgnlmedia/media/pages/MediaBrowserPage.html 2009-02-15 22:33:26 UTC (rev 1004) @@ -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: branches/openutils-mgnlmedia-3.6.x/src/main/resources/net/sourceforge/openutils/mgnlmedia/media/pages/MediaFolderViewPage.html =================================================================== --- branches/openutils-mgnlmedia-3.6.x/src/main/resources/net/sourceforge/openutils/mgnlmedia/media/pages/MediaFolderViewPage.html 2009-02-15 22:01:47 UTC (rev 1003) +++ branches/openutils-mgnlmedia-3.6.x/src/main/resources/net/sourceforge/openutils/mgnlmedia/media/pages/MediaFolderViewPage.html 2009-02-15 22:33:26 UTC (rev 1004) @@ -13,59 +13,59 @@ <script type="text/javascript" src="${this.request.contextPath}/.resources/media/js/multibox/multibox.js"></script> <script type="text/javascript" src="${this.request.contextPath}/.resources/media/js/multibox/overlay.js"></script> <script type="text/javascript"> <#list this.types as type> <#if type.name == this.type> <#assign currentType = type> </#if> </#list> - + function openDialog(path) { parent.openWindow(".magnolia/dialogs/${currentType.dialog}.html?mgnlPath=" + path + "&mgnlRepository=media"); } - + function openMediaTree(action, path) { parent.openWindow(".magnolia/pages/mediaFolderSelection.html?sourceNode="+ path +"&action="+ action +"&mgnlCK=" + (new Date()).getTime()); } - + 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; - } + } $("actionCmd").value = action; $("actionNode").value = source; $("actionDest").value = dest; $("actionForm").submit(); } - + function deleteMedia(source) { if (confirm("Sei sicuro di voler eliminare l'immagine?")) { performAction("delete", source, ""); } } - + function selectMedia(uuid, thumb, file) { parent.setNewMedia(uuid, thumb, file); } - + var isTreeCollapsed = false; - + window.addEvent(Browser.Engine.name == 'trident' ? 'load' : 'domready', function(){ var multibox = new MultiBox('multibox', { path: '${this.request.contextPath}/.resources/media/players/', - useOverlay: true, + useOverlay: true, onOpen: function(){ isTreeCollapsed = parent.isTreeCollapsed(); if (!isTreeCollapsed) { parent.setTreeCollapsed(true); - } + } }, onClose: function(){ if (!isTreeCollapsed) { parent.setTreeCollapsed(false); - } + } } }); @@ -80,36 +80,37 @@ showDelay: 100, hideDelay: 200 }); - + }); - + </script> </head> <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}" /> </form> <div id="navigation"> - <#list this.types as type> - <#if type.name == this.type> - <#assign actual = "actual"> - <#else> + <#list this.types as type> + <#if type.name == this.type> + <#assign actual = "actual"> + <#else> <#assign actual = ""> </#if> <div class="voice ${actual}"> - <#if this.request.parameterMap['selectMedia']?exists> - <a href="?type=${type.name}&path=${this.path}&selectMedia=true"> + <#if this.request.parameterMap['selectMedia']?exists> + <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> @@ -118,17 +119,17 @@ </div> <ul class="mediaList"> <#assign index = 0> - <#list this.medias as media> - <#if media.filename?length gt 18> + <#list this.medias as media> + <#if media.filename?length gt 18> <#assign name = media.filename?substring(0,15)> - <#assign name = name?right_pad(18, ".")> - <#else> - <#assign name = media.filename> + <#assign name = name?right_pad(18, ".")> + <#else> + <#assign name = media.filename> </#if> <#assign index = index + 1 > - <#assign mediaStatusClass = ""> + <#assign mediaStatusClass = ""> <#if this.selectMedia && !this.develop> - <#assign mediaStatusClass = "mediaStatus${media.metaData.activationStatus}"> + <#assign mediaStatusClass = "mediaStatus${media.metaData.activationStatus}"> </#if> <li class="media ${mediaStatusClass}" style="text-align:center"> <div class="imageBorder"> @@ -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> @@ -185,8 +186,8 @@ <a> <img src="${this.request.contextPath}/.resources/icons/16/copy_inactive.gif" border="0" align="middle" /> </a> - </#if> - <#if this.canPublish> + </#if> + <#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> @@ -208,13 +209,13 @@ </#if> </#if> </div> - <div class="used"> + <div class="used"> <#if media.usedInWebPages?size = 0> <span>${this.msgs.get('media.nopages')}</span> - <#else> + <#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. |