Update of 
/var/cvs/contributions/CMSContainer/cmsc/search/src/java/com/finalist/cmsc/services/search
In directory 
james.mmbase.org:/tmp/cvs-serv17172/cmsc/search/src/java/com/finalist/cmsc/services/search

Modified Files:
      Tag: b1_4
        SearchServiceMMBaseImpl.java 
Log Message:
CMSC-855 Add field to specify detail support to the views


See also: 
http://cvs.mmbase.org/viewcvs/contributions/CMSContainer/cmsc/search/src/java/com/finalist/cmsc/services/search
See also: http://www.mmbase.org/jira/browse/CMSC-855


Index: SearchServiceMMBaseImpl.java
===================================================================
RCS file: 
/var/cvs/contributions/CMSContainer/cmsc/search/src/java/com/finalist/cmsc/services/search/SearchServiceMMBaseImpl.java,v
retrieving revision 1.22.2.3
retrieving revision 1.22.2.4
diff -u -b -r1.22.2.3 -r1.22.2.4
--- SearchServiceMMBaseImpl.java        31 Mar 2008 09:03:46 -0000      1.22.2.3
+++ SearchServiceMMBaseImpl.java        15 Apr 2008 08:08:13 -0000      1.22.2.4
@@ -263,13 +263,14 @@
 
    protected List<PageInfo> convertToPageInfos(List<Node> pages) {
        List<PageInfo> infos = new ArrayList<PageInfo>();
-       for (Iterator<Node> iter = pages.iterator(); iter.hasNext();) {
-          Node pageNode = iter.next();
+       for (Node pageNode : pages) {
           PageInfo pageInfo = getPageInfo(pageNode, true);
           if (pageInfo != null && !infos.contains(pageInfo)) {
              infos.add(pageInfo);
           }
        }
+       // put the best page as first
+       Collections.sort(infos, new PageInfoComparator());
        return infos;
     }
 
@@ -306,6 +307,12 @@
          if (portletId == -1) {
             return null;
          }
+         else {
+             Portlet portlet = SiteManagement.getPortlet(portletId);
+             if (!isDetailPortlet(portlet)) {
+                 return null;
+             }
+         }
 
          String host = null;
          if (ServerUtil.useServerName()) {
@@ -490,6 +497,13 @@
          if (pageNumber != null) {
             return false;
          }
+         else {
+             int viewNumber = portlet.getView();
+             if (viewNumber > 0) {
+                 View view = SiteManagement.getView(viewNumber);
+                 return view.isDetailsupport();
+             }
+         }
       }
       return true;
    }
_______________________________________________
Cvs mailing list
[email protected]
http://lists.mmbase.org/mailman/listinfo/cvs

Reply via email to