Author: andreas
Date: Tue Mar 25 16:06:32 2008
New Revision: 641070
URL: http://svn.apache.org/viewvc?rev=641070&view=rev
Log:
Show all images as search results if search term is empty. Might be used for 'insert image' usecase.
Modified:
lenya/trunk/src/modules/lucene/java/src/org/apache/lenya/modules/lucene/ImageQueryStringModule.java
lenya/trunk/src/modules/lucene/java/src/org/apache/lenya/modules/lucene/QueryStringModule.java
Modified: lenya/trunk/src/modules/lucene/java/src/org/apache/lenya/modules/lucene/ImageQueryStringModule.java
URL: http://svn.apache.org/viewvc/lenya/trunk/src/modules/lucene/java/src/org/apache/lenya/modules/lucene/ImageQueryStringModule.java?rev=641070&r1=641069&r2=641070&view=diff
==============================================================================
--- lenya/trunk/src/modules/lucene/java/src/org/apache/lenya/modules/lucene/ImageQueryStringModule.java (original)
+++ lenya/trunk/src/modules/lucene/java/src/org/apache/lenya/modules/lucene/ImageQueryStringModule.java Tue Mar 25 16:06:32 2008
@@ -16,6 +16,10 @@
*/
package org.apache.lenya.modules.lucene;
+import java.util.Map;
+
+import org.apache.cocoon.environment.ObjectModelHelper;
+import org.apache.cocoon.environment.Request;
import org.apache.lenya.cms.metadata.MetaDataRegistry;
import org.apache.lucene.index.Term;
import org.apache.lucene.search.BooleanQuery;
@@ -23,13 +27,31 @@
/**
* Same as {@link QueryStringModule}, but searches only for images.
+ * If the <em>queryString</em> request parameter is empty, all images are shown.
*/
public class ImageQueryStringModule extends QueryStringModule {
protected static final String DOCUMENT_METADATA_NAMESPACE = "http://apache.org/lenya/metadata/document/1.0";
+ protected String getQueryString(Map objectModel) {
+ Request request = ObjectModelHelper.getRequest(objectModel);
+ String searchTerm = request.getParameter(PARAM_QUERY_STRING);
+
+ if (searchTerm != null && searchTerm.indexOf(' ') > -1) {
+ searchTerm = "(" + searchTerm + ")";
+ }
+
+ BooleanQuery query = getQuery(searchTerm);
+ return query.toString();
+ }
+
protected BooleanQuery getQuery(String searchTerm) {
- BooleanQuery query = super.getQuery(searchTerm);
+
+ BooleanQuery query = new BooleanQuery();
+
+ if (!isEmpty(searchTerm)) {
+ query.add(super.getQuery(searchTerm), true, false);
+ }
MetaDataRegistry registry = null;
MetaDataFieldRegistry fieldRegistry = null;
Modified: lenya/trunk/src/modules/lucene/java/src/org/apache/lenya/modules/lucene/QueryStringModule.java
URL: http://svn.apache.org/viewvc/lenya/trunk/src/modules/lucene/java/src/org/apache/lenya/modules/lucene/QueryStringModule.java?rev=641070&r1=641069&r2=641070&view=diff
==============================================================================
--- lenya/trunk/src/modules/lucene/java/src/org/apache/lenya/modules/lucene/QueryStringModule.java (original)
+++ lenya/trunk/src/modules/lucene/java/src/org/apache/lenya/modules/lucene/QueryStringModule.java Tue Mar 25 16:06:32 2008
@@ -65,7 +65,7 @@
Request request = ObjectModelHelper.getRequest(objectModel);
String searchTerm = request.getParameter(PARAM_QUERY_STRING);
- if (searchTerm == null || searchTerm.trim().equals("")) {
+ if (isEmpty(searchTerm)) {
return "";
}
@@ -75,6 +75,10 @@
BooleanQuery query = getQuery(searchTerm);
return query.toString();
+ }
+
+ protected boolean isEmpty(String searchTerm) {
+ return searchTerm == null || searchTerm.trim().equals("");
}
protected BooleanQuery getQuery(String searchTerm) {
lmpx.com only provides a reader for public news (NNTP) servers. It is not
affiliated with the servers or forums shown here and is not responsible for
the content of articles, which is written by their respective authors.