r1297 - xwiki/trunk/src/main/java/com/xpn/xwiki/plugin/userdirectory

Jeremi Joslin jeremi at users.forge.objectweb.org
Thu Sep 7 17:54:32 CEST 2006


Author: jeremi
Date: 2006-09-07 17:54:31 +0200 (Thu, 07 Sep 2006)
New Revision: 1297

Modified:
   xwiki/trunk/src/main/java/com/xpn/xwiki/plugin/userdirectory/Group.java
   xwiki/trunk/src/main/java/com/xpn/xwiki/plugin/userdirectory/UserDirectoryPlugin.java
   xwiki/trunk/src/main/java/com/xpn/xwiki/plugin/userdirectory/UserDirectoryPluginAPI.java
Log:
Allow to order the groups list

Modified: xwiki/trunk/src/main/java/com/xpn/xwiki/plugin/userdirectory/Group.java
===================================================================
--- xwiki/trunk/src/main/java/com/xpn/xwiki/plugin/userdirectory/Group.java	2006-09-07 15:05:56 UTC (rev 1296)
+++ xwiki/trunk/src/main/java/com/xpn/xwiki/plugin/userdirectory/Group.java	2006-09-07 15:54:31 UTC (rev 1297)
@@ -400,4 +400,10 @@
             return getGroup(UserDirectoryPlugin.DEFAULT_PLUGIN_SPACE, name, context);
     }
 
+    public static List getAllGroupsPageName(String orderBy, XWikiContext context) throws XWikiException {
+        String className = getXWikiDirectoryGroupClass(context).getName();
+        String hql = ", BaseObject as obj, StringProperty as prop where obj.name=doc.fullName"
+                        + " and obj.className='" + className + "' and obj.id=prop.id.id and prop.name='" + orderBy + "' order by prop.value";
+        return context.getWiki().getStore().searchDocumentsNames(hql, context);
+    }
 }

Modified: xwiki/trunk/src/main/java/com/xpn/xwiki/plugin/userdirectory/UserDirectoryPlugin.java
===================================================================
--- xwiki/trunk/src/main/java/com/xpn/xwiki/plugin/userdirectory/UserDirectoryPlugin.java	2006-09-07 15:05:56 UTC (rev 1296)
+++ xwiki/trunk/src/main/java/com/xpn/xwiki/plugin/userdirectory/UserDirectoryPlugin.java	2006-09-07 15:54:31 UTC (rev 1297)
@@ -114,8 +114,20 @@
         return Group.getAllGroupsPageName(context);
     }
 
+    public List getAllGroupsPageName(String orderBy, XWikiContext context) throws XWikiException {
+        return Group.getAllGroupsPageName(orderBy, context);
+    }
+
     public List getAllGroups(XWikiContext context) throws XWikiException {
-        List allGroupsPageName = getAllGroupsPageName(context);
+        return getAllGroups(null, context);
+    }
+
+    public List getAllGroups(String orderBy, XWikiContext context) throws XWikiException {
+        List allGroupsPageName;
+        if (orderBy == null)
+            allGroupsPageName = getAllGroupsPageName(context);
+        else
+             allGroupsPageName = getAllGroupsPageName(orderBy, context);
         List groups = new ArrayList();
         if (allGroupsPageName == null)
             return groups;
@@ -123,7 +135,6 @@
         while (it.hasNext())
             groups.add(getGroup((String) it.next(), context));
         return groups;
-
     }
 
     public List getMembers(String grpPage, XWikiContext context) throws XWikiException {

Modified: xwiki/trunk/src/main/java/com/xpn/xwiki/plugin/userdirectory/UserDirectoryPluginAPI.java
===================================================================
--- xwiki/trunk/src/main/java/com/xpn/xwiki/plugin/userdirectory/UserDirectoryPluginAPI.java	2006-09-07 15:05:56 UTC (rev 1296)
+++ xwiki/trunk/src/main/java/com/xpn/xwiki/plugin/userdirectory/UserDirectoryPluginAPI.java	2006-09-07 15:54:31 UTC (rev 1297)
@@ -56,13 +56,17 @@
     }
 
     public List getAllGroupsPageName(XWikiContext context) throws XWikiException {
-         return userDir.getAllGroupsPageName(context);
+        return userDir.getAllGroupsPageName(context);
     }
 
     public List getAllGroups(XWikiContext context) throws XWikiException {
         return userDir.getAllGroups(context);
     }
 
+    public List getAllGroups(String orderBy, XWikiContext context) throws XWikiException {
+        return userDir.getAllGroups(orderBy, context);
+    }
+
     public List getMembers(String grpPage, XWikiContext context) throws XWikiException {
         return userDir.getMembers(grpPage, context);
     }





More information about the Xwiki-notifications mailing list