Index: lams_tool_larsrc/conf/xdoclet/struts-actions.xml
===================================================================
diff -u -r3fe05cc69b1d0cfa2cb494a4778a8ab00dec2d60 -raf0f333826569e48655569fbf9c8b13decd475b0
--- lams_tool_larsrc/conf/xdoclet/struts-actions.xml (.../struts-actions.xml) (revision 3fe05cc69b1d0cfa2cb494a4778a8ab00dec2d60)
+++ lams_tool_larsrc/conf/xdoclet/struts-actions.xml (.../struts-actions.xml) (revision af0f333826569e48655569fbf9c8b13decd475b0)
@@ -180,11 +180,11 @@
-
-
-
+
+ -->
+ *
+ *
+ * @param request
+ * the request send by the client to the server
+ * @param response
+ * the response send by the server to the client
+ * @throws ServletException
+ * if an error occurred
+ * @throws IOException
+ * if an error occurred
+ */
+ public void doGet(HttpServletRequest request, HttpServletResponse response)
+ throws ServletException, IOException {
+ String mode = request.getParameter(AttributeNames.ATTR_MODE);
+ String sessionMapID = request.getParameter(ResourceConstants.ATTR_SESSION_MAP_ID);
+ SessionMap sessionMap = (SessionMap) request.getSession().getAttribute(sessionMapID);
+
+ Long resourceItemUid = new Long(request.getParameter(ResourceConstants.PARAM_RESOURCE_ITEM_UID));
+
+ HttpSession ss = SessionManager.getSession();
+
+ // get back login user DTO
+ UserDTO user = (UserDTO) ss.getAttribute(AttributeNames.USER);
+
+ Long sessionId = (Long) sessionMap.get(ResourceConstants.ATTR_TOOL_SESSION_ID);
+ service.setItemComplete(resourceItemUid, new Long(user.getUserID().intValue()), sessionId);
+
+ // set resource item complete tag
+ SortedSet resourceItemList = getResourceItemList(sessionMap);
+ for (ResourceItem item : resourceItemList) {
+ if (item.getUid().equals(resourceItemUid)) {
+ item.setComplete(true);
+ break;
+ }
+ }
+
+ ResourceUser rUser = service.getUserByIDAndSession(new Long(user.getUserID()), sessionId);
+
+ response.setContentType("text/javascript");
+ PrintWriter out = response.getWriter();
+
+ if(!rUser.isSessionFinished()) {
+ out.println("window.parent.opener.checkNew();");
+ out.println("window.parent.opener=null;");
+ out.println("window.parent.close();");
+ } else {
+ out.println("window.parent.close();");
+ }
+
+ out.println();
+ out.flush();
+ out.close();
+ }
+
+ /**
+ * List save current resource items.
+ *
+ * @param request
+ * @return
+ */
+ private SortedSet getResourceItemList(SessionMap sessionMap) {
+ SortedSet list = (SortedSet) sessionMap
+ .get(ResourceConstants.ATTR_RESOURCE_ITEM_LIST);
+ if (list == null) {
+ list = new TreeSet(new ResourceItemComparator());
+ sessionMap.put(ResourceConstants.ATTR_RESOURCE_ITEM_LIST, list);
+ }
+ return list;
+ }
+
+}
+
\ No newline at end of file
Index: lams_tool_larsrc/web/WEB-INF/web.xml
===================================================================
diff -u -ra694f9caf0484c905a5dd6cd91c20f81e66ec87e -raf0f333826569e48655569fbf9c8b13decd475b0
--- lams_tool_larsrc/web/WEB-INF/web.xml (.../web.xml) (revision a694f9caf0484c905a5dd6cd91c20f81e66ec87e)
+++ lams_tool_larsrc/web/WEB-INF/web.xml (.../web.xml) (revision af0f333826569e48655569fbf9c8b13decd475b0)
@@ -87,6 +87,11 @@
+ completeItem
+ org.lamsfoundation.lams.tool.rsrc.web.servlet.CompleteItemServlet
+
+
+
action
org.apache.struts.action.ActionServlet
@@ -155,6 +160,11 @@
/exportPortfolio
+
+ completeItem
+ /learning/completeItem
+
+
Index: lams_tool_larsrc/web/common/header.jsp
===================================================================
diff -u -r18e5e690d2e1a7c3d918759f7a2827c8205feaac -raf0f333826569e48655569fbf9c8b13decd475b0
--- lams_tool_larsrc/web/common/header.jsp (.../header.jsp) (revision 18e5e690d2e1a7c3d918759f7a2827c8205feaac)
+++ lams_tool_larsrc/web/common/header.jsp (.../header.jsp) (revision af0f333826569e48655569fbf9c8b13decd475b0)
@@ -11,6 +11,7 @@
+
Index: lams_tool_larsrc/web/pages/itemreview/instructionsnav.jsp
===================================================================
diff -u -r18e5e690d2e1a7c3d918759f7a2827c8205feaac -raf0f333826569e48655569fbf9c8b13decd475b0
--- lams_tool_larsrc/web/pages/itemreview/instructionsnav.jsp (.../instructionsnav.jsp) (revision 18e5e690d2e1a7c3d918759f7a2827c8205feaac)
+++ lams_tool_larsrc/web/pages/itemreview/instructionsnav.jsp (.../instructionsnav.jsp) (revision af0f333826569e48655569fbf9c8b13decd475b0)
@@ -27,13 +27,23 @@
${instructions.title}
<%@ include file="/common/header.jsp"%>
-
+
<%-- param has higher level for request attribute --%>