From: <die...@us...> - 2011-08-25 17:31:29
|
Revision: 3633 http://openutils.svn.sourceforge.net/openutils/?rev=3633&view=rev Author: diego_schivo Date: 2011-08-25 17:31:23 +0000 (Thu, 25 Aug 2011) Log Message: ----------- MESSAGES-14 search Modified Paths: -------------- trunk/openutils-mgnlmessages/src/main/java/net/sourceforge/openutils/mgnlmessages/pages/MessagesEditPage.java Modified: trunk/openutils-mgnlmessages/src/main/java/net/sourceforge/openutils/mgnlmessages/pages/MessagesEditPage.java =================================================================== --- trunk/openutils-mgnlmessages/src/main/java/net/sourceforge/openutils/mgnlmessages/pages/MessagesEditPage.java 2011-08-25 17:08:35 UTC (rev 3632) +++ trunk/openutils-mgnlmessages/src/main/java/net/sourceforge/openutils/mgnlmessages/pages/MessagesEditPage.java 2011-08-25 17:31:23 UTC (rev 3633) @@ -38,6 +38,11 @@ import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; +import net.sourceforge.openutils.mgnlcriteria.jcr.query.AdvancedResultItem; +import net.sourceforge.openutils.mgnlcriteria.jcr.query.Criteria; +import net.sourceforge.openutils.mgnlcriteria.jcr.query.JCRCriteriaFactory; +import net.sourceforge.openutils.mgnlcriteria.jcr.query.ResultIterator; +import net.sourceforge.openutils.mgnlcriteria.jcr.query.criterion.Restrictions; import net.sourceforge.openutils.mgnlmessages.configuration.MessagesConfigurationManager; import net.sourceforge.openutils.mgnlmessages.lifecycle.MessagesModuleLifecycle; @@ -149,8 +154,7 @@ + ((MgnlContext.getMessages().get(key) != null) ? StringUtils.replace( MgnlContext.getMessages().get(key), "'", - "\'") : "") - + "'}"; + "\'") : "") + "'}"; MgnlContext.setLocale(locBk); @@ -225,7 +229,22 @@ public String search() { - json = "[ {id: '0', key: 'about.build'}, {id: '1', key: 'about.title'} ]"; + Criteria criteria = JCRCriteriaFactory.createCriteria().setWorkspace(MessagesModuleLifecycle.REPO); + criteria.add(Restrictions.eq("@jcr:primaryType", ItemType.CONTENTNODE.getSystemName())); + criteria.add(Restrictions.contains(".", text)); + int id = 0; + StringBuilder sb = new StringBuilder("[ "); + for (ResultIterator<AdvancedResultItem> items = criteria.execute().getItems(); items.hasNext();) + { + String key = StringUtils.replaceChars(StringUtils.removeStart(items.next().getHandle(), "/"), '/', '.'); + sb.append("{ id: '").append(id++).append("', key: '").append(key).append("' }"); + if (items.hasNext()) + { + sb.append(", "); + } + } + sb.append(" ]"); + json = sb.toString(); return JSON_VIEW; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |