You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by lo...@apache.org on 2022/12/08 15:41:09 UTC

[myfaces-tobago] branch main updated: feat: demo search (#3510)

This is an automated email from the ASF dual-hosted git repository.

lofwyr pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/myfaces-tobago.git


The following commit(s) were added to refs/heads/main by this push:
     new 161307691c feat: demo search (#3510)
161307691c is described below

commit 161307691c831ba04989dd1a1fadd597f7978531
Author: Udo Schnurpfeil <lo...@apache.org>
AuthorDate: Thu Dec 8 16:41:04 2022 +0100

    feat: demo search (#3510)
    
    issue: TOBAGO-2160
---
 .../apache/myfaces/tobago/example/demo/NavigationState.java   |  2 ++
 .../apache/myfaces/tobago/example/demo/NavigationTree.java    |  6 +++---
 .../src/main/webapp/content/000-intro/05-search/Search.xhtml  | 11 ++++++++++-
 3 files changed, 15 insertions(+), 4 deletions(-)

diff --git a/tobago-example/tobago-example-demo/src/main/java/org/apache/myfaces/tobago/example/demo/NavigationState.java b/tobago-example/tobago-example-demo/src/main/java/org/apache/myfaces/tobago/example/demo/NavigationState.java
index 29dd4a888d..8876d58b0e 100644
--- a/tobago-example/tobago-example-demo/src/main/java/org/apache/myfaces/tobago/example/demo/NavigationState.java
+++ b/tobago-example/tobago-example-demo/src/main/java/org/apache/myfaces/tobago/example/demo/NavigationState.java
@@ -35,6 +35,7 @@ import jakarta.inject.Named;
 
 import java.io.Serializable;
 import java.lang.invoke.MethodHandles;
+import java.util.Collections;
 import java.util.List;
 
 @SessionScoped
@@ -127,6 +128,7 @@ public class NavigationState implements Serializable {
 
   public String search() {
     searchResult = tree.search(this.searchString);
+    Collections.sort(searchResult);
     return Outcome.SEARCH.toString();
   }
 
diff --git a/tobago-example/tobago-example-demo/src/main/java/org/apache/myfaces/tobago/example/demo/NavigationTree.java b/tobago-example/tobago-example-demo/src/main/java/org/apache/myfaces/tobago/example/demo/NavigationTree.java
index d67673a104..a0ec7b93e2 100644
--- a/tobago-example/tobago-example-demo/src/main/java/org/apache/myfaces/tobago/example/demo/NavigationTree.java
+++ b/tobago-example/tobago-example-demo/src/main/java/org/apache/myfaces/tobago/example/demo/NavigationTree.java
@@ -108,9 +108,9 @@ public class NavigationTree implements Serializable {
       if (s.contains(searchString.toLowerCase())) {
         result.add(searchIndex.get(s));
       }
-      if (result.size() >= 20) {
-        break;
-      }
+//      if (result.size() >= 20) {
+//        break;
+//      }
     }
     return result;
   }
diff --git a/tobago-example/tobago-example-demo/src/main/webapp/content/000-intro/05-search/Search.xhtml b/tobago-example/tobago-example-demo/src/main/webapp/content/000-intro/05-search/Search.xhtml
index e9dafc7fdb..7e798ebe85 100644
--- a/tobago-example/tobago-example-demo/src/main/webapp/content/000-intro/05-search/Search.xhtml
+++ b/tobago-example/tobago-example-demo/src/main/webapp/content/000-intro/05-search/Search.xhtml
@@ -25,12 +25,21 @@
 
   <tc:section label="Searching the Demo">
 
-    <tc:in label="Search" value="#{navigationState.searchString}">
+    <tc:in label="Search" value="#{navigationState.searchString}" required="true">
       <f:facet name="after">
         <tc:button label="go" action="#{navigationState.search}" defaultCommand="true"/>
       </f:facet>
     </tc:in>
 
+    <tc:panel rendered="#{navigationState.searchResult.size() == 0}">
+      <p>
+        <tc:badge value="Info" markup="info"/> Not search results found!
+      </p>
+      <p>
+        The search currently scans the menu items only!
+      </p>
+    </tc:panel>
+
     <ul>
       <ui:repeat value="#{navigationState.searchResult}" var="node">
         <tc:link label="#{node.labelPath}" link="#{request.contextPath}#{node.outcome}"/><br/>