[Ils-source] r1321 - in branches/1.6: . src/com/resolutions/ils/data webapp/WEB-INF/lib webapp/api/group/get
scribe at crosswire.org
scribe at crosswire.org
Tue May 26 06:23:20 MST 2015
Author: scribe
Date: 2015-05-26 06:23:20 -0700 (Tue, 26 May 2015)
New Revision: 1321
Modified:
branches/1.6/
branches/1.6/src/com/resolutions/ils/data/Group.java
branches/1.6/webapp/WEB-INF/lib/ils.jar
branches/1.6/webapp/api/group/get/index.jsp
Log:
Added ability to get group users from the group/get API call
Property changes on: branches/1.6
___________________________________________________________________
Modified: svn:mergeinfo
- /trunk:796-1303,1306-1307,1309-1311
+ /trunk:796-1303,1306-1307,1309-1311,1319-1320
Modified: branches/1.6/src/com/resolutions/ils/data/Group.java
===================================================================
--- branches/1.6/src/com/resolutions/ils/data/Group.java 2015-05-26 13:18:58 UTC (rev 1320)
+++ branches/1.6/src/com/resolutions/ils/data/Group.java 2015-05-26 13:23:20 UTC (rev 1321)
@@ -14,6 +14,7 @@
static String LOOKUPALLGROUPS = "SELECT * FROM ILSGROUP WHERE GROUPTYPEID={GROUPTYPEID} AND COMPANYID={COMPANYID} ORDER BY GROUPNAME";
static String LOOKUPUSERGROUPS = "SELECT * FROM ILSGROUP T1, USERGROUP T2 WHERE GROUPTYPEID={GROUPTYPEID} AND T1.ILSGROUPID=T2.ILSGROUPID AND T2.USERPRID={USERPRID} AND T1.COMPANYID={COMPANYID} AND T2.COMPANYID={COMPANYID}";
+ static String LOOKUPGROUPUSERS = "SELECT * FROM USERGROUP T2, USERPROFILE T3 WHERE T2.ILSGROUPID={ILSGROUPID} AND T2.COMPANYID={COMPANYID} AND T3.COMPANYID={COMPANYID} AND T3.USERPRID=T2.USERPRID";
static String LOOKUPMANAGERGROUPS = "SELECT * FROM ILSGROUP T1, MANAGERGROUP T2 WHERE T1.ILSGROUPID=T2.ILSGROUPID AND T2.USERPRID={USERPRID} AND T1.COMPANYID={COMPANYID} AND T2.COMPANYID={COMPANYID} ORDER BY GROUPNAME";
static String LOOKUPCOURSEGROUPS = "SELECT * FROM ILSGROUP T1, COURSEGROUP T2 WHERE T1.ILSGROUPID=T2.ILSGROUPID AND T2.COURSID={COURSID} AND T1.COMPANYID={COMPANYID} AND T2.COMPANYID={COMPANYID}";
static String LOOKUP = "SELECT * FROM ILSGROUP WHERE ILSGROUPID={ILSGROUPID} AND COMPANYID={COMPANYID}";
@@ -66,15 +67,19 @@
return (rows.size() > 0) ? (Group) rows.get(0) : null;
}
- static public Vector getUserGroups(ILSSession session, int groupTypeID,
- int userID) {
+ public Vector getGroupUsers() {
+ UserProfile query = new UserProfile();
+ query.setValue("COMPANYID", getCompanyID());
+ query.setValue("ILSGROUPID", getGroupID());
+ return query.getDataSet(LOOKUPGROUPUSERS);
+ }
+ static public Vector getUserGroups(ILSSession session, int groupTypeID, int userID) {
Group query = new Group();
query.setValue("COMPANYID", new Integer(session.getCompanyID()));
query.setValue("USERPRID", new Integer(userID));
query.setGroupTypeID(groupTypeID);
return query.getDataSet(LOOKUPUSERGROUPS);
}
-
static public int deleteUserGroups(ILSSession session, int groupTypeID, int userID) {
Group query = new Group();
query.setValue("COMPANYID", new Integer(session.getCompanyID()));
Modified: branches/1.6/webapp/WEB-INF/lib/ils.jar
===================================================================
(Binary files differ)
Modified: branches/1.6/webapp/api/group/get/index.jsp
===================================================================
--- branches/1.6/webapp/api/group/get/index.jsp 2015-05-26 13:18:58 UTC (rev 1320)
+++ branches/1.6/webapp/api/group/get/index.jsp 2015-05-26 13:23:20 UTC (rev 1321)
@@ -4,6 +4,7 @@
%>
<%@ page trimDirectiveWhitespaces="true" %>
<%@ page import="org.crosswire.utils.HTTPUtils" %>
+<%@ page import="org.crosswire.xml.XMLBlock" %>
<%@ page import="com.resolutions.ils.Utils" %>
<%@ page import="com.resolutions.ils.ILSSession" %>
<%@ page import="com.resolutions.ils.data.UserProfile" %>
@@ -51,6 +52,7 @@
if (groupID == -2) if ("ALL".equals(request.getParameter("groupID"))) groupID = -1;
int groupTypeID = -1; try { groupTypeID = Integer.parseInt(request.getParameter("groupTypeID")); } catch (Exception e) {}
String groupName = request.getParameter("groupName");
+ String detail = request.getParameter("detail");
Logger logger = Logger.getLogger(this.getClass());
Logger eventsLogger = Logger.getLogger("EVENTS");
@@ -70,7 +72,21 @@
}
out.print("<Groups count=\""+groups.size()+"\">\n");
for (Object o : groups) {
- out.print(((Group)o).toFormattedXML());
+ Group g = (Group)o;
+ XMLBlock x = new XMLBlock(g.toFormattedXML());
+ if ("user".equals(detail)) {
+ XMLBlock users = x.createBlock("Users");
+ int count = 0;
+ for (Object o2 : g.getGroupUsers()) {
+ UserProfile u = (UserProfile)o2;
+ XMLBlock ux = users.createBlock("User");
+ ux.setAttribute("userID", Integer.toString(u.getUserProfileID()));
+ ux.setAttribute("statusID", Integer.toString(u.getUserProfileStatusID()));
+ ++count;
+ }
+ users.setAttribute("count", Integer.toString(count));
+ }
+ out.print(x.toString());
}
out.print("</Groups>\n");
return;
@@ -87,6 +103,7 @@
<tr><td><b>groupTypeID</b></td><td>GroupTypeID to retrieve; required. default groups {1 - ROLE; 2 - WORKGROUP}</td></tr>
<tr><td><b>groupID</b></td><td>GroupID to retrieve; ALL, for all groups</td></tr>
<tr><td><b>groupName</b></td><td>Group Name to retrieve</td></tr>
+<tr><td><b>detail</b></td><td>{user - include user info}</td></tr>
<tr><td><b>ILSUSER</b></td><td>ILS Login Credentials. Used to validate this API request.</td></tr>
<tr><td><b>ILSPASSWD</b></td><td>ILS Login Credentials. Used to validate this API request.</td></tr>
<table>
More information about the Ils-source
mailing list