[Ils-source] r1486 - in trunk/webapp/api/courseattempt: . assignretake get
scribe at crosswire.org
scribe at crosswire.org
Fri Jul 29 16:48:27 MST 2016
Author: scribe
Date: 2016-07-29 16:48:26 -0700 (Fri, 29 Jul 2016)
New Revision: 1486
Added:
trunk/webapp/api/courseattempt/assignretake/
Removed:
trunk/webapp/api/courseattempt/assignRetake/
Modified:
trunk/webapp/api/courseattempt/assignretake/index.jsp
trunk/webapp/api/courseattempt/get/index.jsp
Log:
Fixed courseattempt/get to accept and expect 24hr time
Updated courseattempt/assignretake to use latest convention for web services (patch from Adam)
Modified: trunk/webapp/api/courseattempt/assignretake/index.jsp
===================================================================
--- trunk/webapp/api/courseattempt/assignRetake/index.jsp 2016-06-27 23:25:42 UTC (rev 1472)
+++ trunk/webapp/api/courseattempt/assignretake/index.jsp 2016-07-29 23:48:26 UTC (rev 1486)
@@ -20,50 +20,60 @@
<%
+ // standard service header ---------------------------------------
+
+ String serviceName = "courseattempt/assignretake";
+
+ Logger logger = Logger.getLogger(this.getClass());
+ Logger eventsLogger = Logger.getLogger("EVENTS");
+
response.setContentType("text/xml");
- String errorMsg = "";
- //-- Company logic from login.jsp -------
- // TODO: consolidate this somewhere
- String requestURL = request.getRequestURL().toString() + "?" + request.getQueryString();
- String co = com.resolutions.ils.Utils.getCompanyFromConfig(session, requestURL);
- if (co == null) co = com.resolutions.ils.Utils.getSysConfig(session).getProperty("Company", null);
- if (co == null) co = request.getParameter("co");
- if (co != null) session.setAttribute("co", co);
- co = (String) session.getAttribute("co");
- Company company = Company.getCompany((co != null) ? Integer.parseInt(co):1);
+ String errMsg = "";
+ int errCode = 0;
+ Company company = Company.getCompany(request);
+
boolean apiEnabled = "on".equals(Utils.getSysConfig(session.getServletContext(), company.getCompanyID()).getProperty("APIEnable", "off"));
+ ++errCode;
if (!apiEnabled) {
- out.print("<error message=\"API not enabled in system management settings.\" />");
- return;
+ errMsg = "API not enabled in system management settings.";
+ out.print("<error code=\""+errCode+"\" message=\""+errMsg+"\"/>");
+ eventsLogger.error(serviceName +": " + errMsg);
+ return;
}
- //-----------------------
- ILSSession ilsSession = null;
+
String userID = request.getParameter("ILSUSER");
- String userPw = request.getParameter("ILSPASSWD");
- ilsSession = ILSSession.login(company.getCompanyName(), userID, userPw);
+ String userPW = request.getParameter("ILSPASSWD");
+ ILSSession ilsSession = (userID != null && userPW != null)
+ ? ILSSession.login(company.getCompanyName(), userID, userPW)
+ : (ILSSession)session.getAttribute("ilsSession");
+ ++errCode;
if (ilsSession == null) {
- out.print("<error message=\"Your iLS sign in information is not valid. Please try again.\" />");
+ errMsg = "iLS sign in information is not valid.";
+ out.print("<error code=\""+errCode+"\" message=\""+errMsg+"\"/>");
+ eventsLogger.error(serviceName +": " + errMsg);
return;
}
-
- Logger logger = Logger.getLogger(this.getClass());
- Logger eventsLogger = Logger.getLogger("EVENTS");
- String statusMsg = "";
- String cidString = request.getParameter("caid");
- String reason = request.getParameter("reason");
+ // end standard service header -----------------------------------
+
+ String statusMsg = "";
+ int courseAttemptID = -1; try { courseAttemptID = Integer.parseInt(request.getParameter("courseAttemptID")); } catch(Exception e) {}
+ String reason = request.getParameter("reason");
if (reason != null) reason = new String(reason.getBytes("iso8859-1"), "UTF-8");
- int cid = -1;
- try { cid = Integer.parseInt(cidString); } catch (Exception e) {}
- if (reason == null) reason = "";
- if (cid > -1) {
- CourseAttempt caOrig = CourseAttempt.getCourseAttempt(ilsSession, cid);
- if (caOrig != null) {
+ if (reason == null) reason = "";
+ if (courseAttemptID > -1) {
+ CourseAttempt caOrig = CourseAttempt.getCourseAttempt(ilsSession, courseAttemptID);
+ if (caOrig != null) {
caOrig.assignRetake(reason, ilsSession, session);
out.print("<success />");
return;
- }
- }
+ } else {
+ ++errCode;
+ out.print("<error code=\""+errCode+"\" message=\"Course attempt not found.\"/>");
+ eventsLogger.error(serviceName +": " + errMsg);
+ return;
+ }
+ }
response.setContentType("text/html");
%>
<html>
@@ -72,7 +82,7 @@
<p>Assign a retake for a course attempt</p>
<h3>Parameters</h3>
<table border="1">
-<tr><td><b>caid</b></td><td>Course Attempt ID</td></tr>
+<tr><td><b>courseAttemptID</b></td><td>Course Attempt ID</td></tr>
<tr><td><b>reason</b></td><td>Reason for retake</td></tr>
<table>
</body>
Modified: trunk/webapp/api/courseattempt/get/index.jsp
===================================================================
--- trunk/webapp/api/courseattempt/get/index.jsp 2016-07-13 11:36:13 UTC (rev 1485)
+++ trunk/webapp/api/courseattempt/get/index.jsp 2016-07-29 23:48:26 UTC (rev 1486)
@@ -55,7 +55,7 @@
// end standard service header -----------------------------------
- SimpleDateFormat df = new SimpleDateFormat("yyyyMMddhhmm");
+ SimpleDateFormat df = new SimpleDateFormat("yyyyMMddHHmm");
df.setTimeZone(TimeZone.getTimeZone("GMT"));
SimpleDateFormat df_out = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss Z");
df_out.setTimeZone(TimeZone.getTimeZone("GMT"));
@@ -68,7 +68,7 @@
String val = request.getParameter("startDateTime");
Date startDateTime = null;
try { if (val != null) startDateTime = df.parse(val); } catch (Exception e) {
- out.print("<error code=\""+errCode+"\" message=\"startDateTime must be formatted as yyyyMMddhhmm\"/>");
+ out.print("<error code=\""+errCode+"\" message=\"startDateTime must be formatted as yyyyMMddHHmm\"/>");
return;
}
@@ -76,7 +76,7 @@
val = request.getParameter("endDateTime");
Date endDateTime = null;
try { if (val != null) endDateTime = df.parse(val); } catch (Exception e) {
- out.print("<error code=\""+errCode+"\" message=\"endDateTime must be formatted as yyyyMMddhhmm\"/>");
+ out.print("<error code=\""+errCode+"\" message=\"endDateTime must be formatted as yyyyMMddHHmm\"/>");
return;
}
@@ -121,8 +121,8 @@
<table border="1">
<tbody>
<tr><th>courseAttemptID</th><td>retrieve a specific course attempt by ID</td></tr>
-<tr><th>startDateTime</th><td>retrieve a set of course attempts by filters, the start of the date and time range for which to retrieve Course Attempt records by completion date, inclusive (yyyyMMddhhmm), e.g., 201201240000</td></tr>
-<tr><th>endDateTime</th><td>the end of the date and time range for which to retrieve Course Attempt records by completion date, exclusive (yyyyMMddhhmm), e.g., 201201250000</td></tr>
+<tr><th>startDateTime</th><td>retrieve a set of course attempts by filters, the start of the date and time range for which to retrieve Course Attempt records by completion date, inclusive (yyyyMMddHHmm), e.g., 201201240000</td></tr>
+<tr><th>endDateTime</th><td>the end of the date and time range for which to retrieve Course Attempt records by completion date, exclusive (yyyyMMddHHmm), e.g., 201201250000</td></tr>
<tr><td><b>userProfileID</b></td><td>restrict results to a single user</td></tr>
<tr><td><b>courseID</b></td><td>restrict results to a single course</td></tr>
<tr><th>detail</th><td>(complete), brief, headeronly</td></tr>
More information about the Ils-source
mailing list