From: <fg...@us...> - 2010-05-11 21:50:10
|
Revision: 2396 http://openutils.svn.sourceforge.net/openutils/?rev=2396&view=rev Author: fgiust Date: 2010-05-11 21:50:04 +0000 (Tue, 11 May 2010) Log Message: ----------- MEDIA-106 advanced search nearly working Modified Paths: -------------- trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/advancedsearch/SearchFilterOptionProvider.java trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/pages/MediaAdvancedSearchPage.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/playlist/pages/PlaylistView.java trunk/openutils-mgnlmedia/src/main/resources/mgnl-bootstrap/media/config.modules.media.virtualURIMapping.searchmedia.xml trunk/openutils-mgnlmedia/src/main/resources/net/sourceforge/openutils/mgnlmedia/media/pages/MediaFolderViewPage.html Modified: trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/advancedsearch/SearchFilterOptionProvider.java =================================================================== --- trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/advancedsearch/SearchFilterOptionProvider.java 2010-05-11 20:46:12 UTC (rev 2395) +++ trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/advancedsearch/SearchFilterOptionProvider.java 2010-05-11 21:50:04 UTC (rev 2396) @@ -28,9 +28,6 @@ import javax.jcr.RepositoryException; -import net.sourceforge.openutils.mgnlmedia.media.advancedsearch.Option; -import net.sourceforge.openutils.mgnlmedia.media.advancedsearch.SearchFilterAbstract; - import org.apache.commons.lang.StringUtils; @@ -45,6 +42,8 @@ private String reference; + private boolean addempty; + /** * Returns the options. * @return the options @@ -85,6 +84,24 @@ } /** + * Returns the addempty. + * @return the addempty + */ + public boolean isAddempty() + { + return addempty; + } + + /** + * Sets the addempty. + * @param addempty the addempty to set + */ + public void setAddempty(boolean addempty) + { + this.addempty = addempty; + } + + /** * @param reference */ private void getOptionsFormReference(String reference) @@ -99,10 +116,14 @@ .getChildren(); Option opt = new Option(); - opt.setValue(""); - opt.setLabel("---"); - addOptions(opt); + if (addempty) + { + opt.setValue(""); + opt.setLabel("---"); + addOptions(opt); + } + for (Content content : referenceOptions) { opt = new Option(); Modified: trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/pages/MediaAdvancedSearchPage.java =================================================================== --- trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/pages/MediaAdvancedSearchPage.java 2010-05-11 20:46:12 UTC (rev 2395) +++ trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/pages/MediaAdvancedSearchPage.java 2010-05-11 21:50:04 UTC (rev 2396) @@ -21,11 +21,10 @@ import info.magnolia.cms.exchange.ActivationManagerFactory; import info.magnolia.cms.security.Permission; -import info.magnolia.cms.util.RequestFormUtil; +import info.magnolia.freemarker.FreemarkerUtil; import java.util.ArrayList; import java.util.HashMap; -import java.util.Map; import java.util.Set; import javax.jcr.RepositoryException; @@ -39,7 +38,6 @@ import net.sourceforge.openutils.mgnlmedia.media.configuration.MediaTypeConfiguration; import net.sourceforge.openutils.mgnlmedia.media.tags.el.MediaEl; -import org.apache.commons.beanutils.BeanUtils; import org.apache.commons.collections.MapUtils; import org.apache.commons.lang.StringUtils; @@ -66,9 +64,6 @@ private int items = 100; - // search path - private String path; - /** * @param name * @param request @@ -79,30 +74,15 @@ super(name, request, response); } - /** - * {@inheritDoc} - */ - @SuppressWarnings({"unchecked", "deprecation" }) @Override - protected void populateFromRequest(Object bean) + protected String getTemplateName(String viewName) { - RequestFormUtil requestFormUtil = new RequestFormUtil(this.getRequest()); - Map<String, Object> parameters = new HashMap<String, Object>(); // needed, can't directly modify the map - // returned by request.getParameterMap() - // FIX: siccome arriva da un virtual uri mapping, i parametri originali non sono nella query string e quindi non - // posso usare il requestFormUtil.getParam... che fa un parsing custom della querystring - parameters.putAll(request.getParameterMap()); - parameters.putAll(requestFormUtil.getDocuments()); // handle uploaded files too - - try + if (VIEW_SHOW.equals(viewName)) { - BeanUtils.populate(bean, parameters); + return FreemarkerUtil.createTemplateName(MediaFolderViewPage.class, "html"); } - catch (Exception e) - { - log.error("can't set properties on the handler", e); - } + return super.getTemplateName(viewName); } public String show() @@ -229,7 +209,7 @@ this.response.setContentType("text/xml"); return VIEW_RESULTS_XML; } - return ""; + return VIEW_SHOW; } /** @@ -340,22 +320,4 @@ this.items = items; } - /** - * Returns the path. - * @return the path - */ - public String getPath() - { - return path; - } - - /** - * Sets the path. - * @param path the path to set - */ - public void setPath(String path) - { - this.path = path; - } - } Modified: trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/pages/MediaFolderViewPage.java =================================================================== --- trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/pages/MediaFolderViewPage.java 2010-05-11 20:46:12 UTC (rev 2395) +++ trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/pages/MediaFolderViewPage.java 2010-05-11 21:50:04 UTC (rev 2396) @@ -82,35 +82,35 @@ */ public static final String SORT_BY_USAGE = "usage"; - private String path; + protected String path; - private String node; + protected String node; - private String dest; + protected String dest; - private String type; + protected String type; - private String sorting; + protected String sorting; - private boolean selectMedia; + protected boolean selectMedia; - private String actMediaHandle; + protected String actMediaHandle; - private String mediaType; + protected String mediaType; - private Collection<MediaBean> medias; + protected Collection<MediaBean> medias; - private Collection<MediaTypeConfiguration> types; + protected Collection<MediaTypeConfiguration> types; - private Map<String, Integer> numberOfMedia; + protected Map<String, Integer> numberOfMedia; - private boolean writable; + protected boolean writable; - private boolean canPublish; + protected boolean canPublish; - private boolean develop; + protected boolean develop; - private String search; + protected String search; /** * @param name @@ -159,6 +159,8 @@ { sorting = SORT_BY_MODIFICATIONDATE; } + + develop = SystemProperty.getBooleanProperty("magnolia.develop"); } /** @@ -196,8 +198,6 @@ Collection<Content> mediasOfType = null; - develop = SystemProperty.getBooleanProperty("magnolia.develop"); - if (!StringUtils.isBlank(path)) { try Modified: trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/playlist/pages/PlaylistView.java =================================================================== --- trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/playlist/pages/PlaylistView.java 2010-05-11 20:46:12 UTC (rev 2395) +++ trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/playlist/pages/PlaylistView.java 2010-05-11 21:50:04 UTC (rev 2396) @@ -173,7 +173,7 @@ log.warn("Node {} does not exist in playlist repository", path); } } - return super.show(); + return VIEW_SHOW; } public String save() Modified: trunk/openutils-mgnlmedia/src/main/resources/mgnl-bootstrap/media/config.modules.media.virtualURIMapping.searchmedia.xml =================================================================== --- trunk/openutils-mgnlmedia/src/main/resources/mgnl-bootstrap/media/config.modules.media.virtualURIMapping.searchmedia.xml 2010-05-11 20:46:12 UTC (rev 2395) +++ trunk/openutils-mgnlmedia/src/main/resources/mgnl-bootstrap/media/config.modules.media.virtualURIMapping.searchmedia.xml 2010-05-11 21:50:04 UTC (rev 2396) @@ -16,7 +16,7 @@ <sv:value>admin</sv:value> </sv:property> <sv:property sv:name="toURI" sv:type="String"> - <sv:value>forward:/.magnolia/pages/media-AdvancedSearch.html?command=searchMedia</sv:value> + <sv:value>forward:/.magnolia/pages/media-advsearch.html</sv:value> </sv:property> <sv:node sv:name="MetaData"> <sv:property sv:name="jcr:primaryType" sv:type="Name"> Modified: trunk/openutils-mgnlmedia/src/main/resources/net/sourceforge/openutils/mgnlmedia/media/pages/MediaFolderViewPage.html =================================================================== --- trunk/openutils-mgnlmedia/src/main/resources/net/sourceforge/openutils/mgnlmedia/media/pages/MediaFolderViewPage.html 2010-05-11 20:46:12 UTC (rev 2395) +++ trunk/openutils-mgnlmedia/src/main/resources/net/sourceforge/openutils/mgnlmedia/media/pages/MediaFolderViewPage.html 2010-05-11 21:50:04 UTC (rev 2396) @@ -2,7 +2,7 @@ <html xmlns="http://www.w3.org/1999/xhtml" lang="en"> [#setting url_escaping_charset="UTF-8"] <head> - <title>${this.path?html!""}</title> + <title>${this.path!?html!""}</title> <link rel="stylesheet" type="text/css" href="${this.request.contextPath}/.resources/media/css/multibox.css" /> <link rel="stylesheet" type="text/css" href="${this.request.contextPath}/.resources/media/css/sexy-tooltips/msn.css" /> <link rel="stylesheet" type="text/css" href="${this.request.contextPath}/.resources/media/css/folderView.css" /> @@ -34,7 +34,7 @@ function performAction(action, source, dest) { - if (action == "move" && dest == "${this.path?url!""}") + if (action == "move" && dest == "${this.path!?url!""}") { alert("${this.msgs.get('media.move.error.samenode')}"); return; @@ -149,7 +149,7 @@ [#assign actual = ""] [/#if] <div class="voice mediatab ${actual}"> - <a href="?type=${type.name}&path=${this.path?url!''}[#if this.request.parameterMap['selectMedia']?exists]&selectMedia=true[/#if]&search=${this.search!""}"> + <a href="?type=${type.name}&path=${this.path!?url!''}[#if this.request.parameterMap['selectMedia']?exists]&selectMedia=true[/#if]&search=${this.search!""}"> <img src="${this.request.contextPath}${type.menuIcon}" alt="${this.msgs.get('media.types.' + type.name)}" /> ${this.msgs.get('media.types.' + type.name)} [#if this.numberOfMedia?exists](${this.numberOfMedia[type.name]!'0'})[/#if] </a> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |