r263 - in trunk: . chorem-webmotion/src/main/java/org/chorem/webmotion/actions
Author: bpoussin Date: 2012-09-10 08:43:45 +0200 (Mon, 10 Sep 2012) New Revision: 263 Url: http://chorem.org/repositories/revision/chorem/263 Log: l'utilisateur peut indiquer dans son filtre la plage des resultats souhait?\195?\169s Modified: trunk/chorem-webmotion/src/main/java/org/chorem/webmotion/actions/GenericAction.java trunk/pom.xml Modified: trunk/chorem-webmotion/src/main/java/org/chorem/webmotion/actions/GenericAction.java =================================================================== --- trunk/chorem-webmotion/src/main/java/org/chorem/webmotion/actions/GenericAction.java 2012-08-25 08:53:18 UTC (rev 262) +++ trunk/chorem-webmotion/src/main/java/org/chorem/webmotion/actions/GenericAction.java 2012-09-10 06:43:45 UTC (rev 263) @@ -61,6 +61,7 @@ import org.nuiton.wikitty.query.WikittyQueryMaker; import org.nuiton.wikitty.query.WikittyQueryParser; import org.nuiton.wikitty.query.WikittyQueryResult; +import org.nuiton.wikitty.query.conditions.True; /** * @@ -155,20 +156,36 @@ depth = 0; } - WikittyQuery q; + WikittyQueryMaker maker; + // S'il y a des extensions on force la requete sur ces types d'extension if (extension != null) { - q = new WikittyQueryMaker().and() - .extContainsOne(Arrays.asList(extension)) - .parse(query) - .end(); + maker = new WikittyQueryMaker().and() + .extContainsOne(Arrays.asList(extension)); } else { - q = new WikittyQueryMaker() - .parse(query) - .end(); + maker = new WikittyQueryMaker(); } + + // s'il y a un filtre on l'utilise, et on utilisera aussi #offset et #limit + // de ce filtre s'ils sont positionne + WikittyQuery filter = WikittyQueryParser.parse(query); + if (filter != null) { // filter peut-etre null si la requete a une mauvaise syntaxe + maker.condition(filter.getCondition()); + // si l'utilisateur a force le depth dans son filtre on l'utilise + if (StringUtils.containsIgnoreCase(query, WikittyQueryParser.DEPTH)) { + depth = filter.getWikittyFieldSearchDepth(); + } + } + + // on recupere la requete + WikittyQuery q = maker.end(); + q.setWikittyFieldSearchDepth(depth); - + if (filter != null) { + q.setOffset(filter.getOffset()); + q.setLimit(filter.getLimit()); + } + // on essai de trier les resultats au mieux tout en ne faisant qu'un requete Collection<WikittyExtension> exts = client.restoreExtensionLastVersion(extension); for (WikittyExtension ext : exts) { Modified: trunk/pom.xml =================================================================== --- trunk/pom.xml 2012-08-25 08:53:18 UTC (rev 262) +++ trunk/pom.xml 2012-09-10 06:43:45 UTC (rev 263) @@ -98,7 +98,7 @@ <nuitonUtilsVersion>2.4.8</nuitonUtilsVersion> <nuitonWebVersion>1.7</nuitonWebVersion> <nuitonI18nVersion>2.3.1</nuitonI18nVersion> - <wikittyVersion>3.8</wikittyVersion> + <wikittyVersion>3.9-SNAPSHOT</wikittyVersion> <slf4jVersion>1.6.1</slf4jVersion> <struts2Version>2.2.3</struts2Version> <struts2jqueryVersion>3.2.0</struts2jqueryVersion>
participants (1)
-
bpoussin@users.chorem.org