This is an automated email from the git hooks/post-receive script. New commit to branch develop in repository bow. See http://git.chorem.org/bow.git commit 3ef8aca24f735ffd53f27449ad7671bfbf70742e Author: Benjamin POUSSIN <poussin@codelutin.com> Date: Thu Jul 30 19:46:39 2015 +0200 fixes #1274: add support for more complexe query for fulltext bookmark search --- bow-ui/src/main/java/org/chorem/bow/BookmarkUtils.java | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/bow-ui/src/main/java/org/chorem/bow/BookmarkUtils.java b/bow-ui/src/main/java/org/chorem/bow/BookmarkUtils.java index 963a53c..9444ee9 100644 --- a/bow-ui/src/main/java/org/chorem/bow/BookmarkUtils.java +++ b/bow-ui/src/main/java/org/chorem/bow/BookmarkUtils.java @@ -45,6 +45,7 @@ import org.jsoup.nodes.Document; import org.nuiton.wikitty.entities.Element; import org.nuiton.wikitty.query.WikittyQuery; import org.nuiton.wikitty.query.WikittyQueryMaker; +import org.nuiton.wikitty.query.WikittyQueryParser; import org.nuiton.wikitty.services.WikittyServiceAuthorisation; public class BookmarkUtils { @@ -52,6 +53,15 @@ public class BookmarkUtils { /** Logger. */ public static Log log = LogFactory.getLog(BookmarkUtils.class); + protected final static WikittyQueryParser queryParser = new WikittyQueryParser(); + static { + queryParser.addAlias("tag:", BowBookmark.FQ_FIELD_WIKITTYLABEL_LABELS + "=" ); + queryParser.addAlias("date:([^ $]+)", + BowBookmark.FQ_FIELD_BOWBOOKMARK_CREATIONDATE + "=[date($1/DAY) TO date($1/DAY+1DAY)]"); + queryParser.addAlias("before:([^ $]+)", BowBookmark.FQ_FIELD_BOWBOOKMARK_CREATIONDATE + "<date($1)"); + queryParser.addAlias("after:([^ $]+)", BowBookmark.FQ_FIELD_BOWBOOKMARK_CREATIONDATE + ">date($1)"); + } + /** * Title is first sentence of description, or link if no description * @param b @@ -105,6 +115,7 @@ public class BookmarkUtils { String order, int first) { WikittyQueryMaker search = new WikittyQueryMaker().and(); + search.exteq(BowBookmark.EXT_BOWBOOKMARK); addEqUser(search, user.getWikittyId()); if (CollectionUtils.isNotEmpty(listId)) { @@ -112,7 +123,8 @@ public class BookmarkUtils { } if (StringUtils.isNotBlank(fullTextLine)) { - search.keyword(fullTextLine); + WikittyQuery query = queryParser.parseQuery(fullTextLine); + search.condition(query.getCondition()); } if (StringUtils.isNotBlank(tagLine)) { -- To stop receiving notification emails like this one, please contact chorem.org SCM administrator <admin+scm@chorem.org>.