Index: lams_tool_larsrc/conf/xdoclet/struts-actions.xml =================================================================== RCS file: /usr/local/cvsroot/lams_tool_larsrc/conf/xdoclet/struts-actions.xml,v diff -u -r1.32 -r1.33 --- lams_tool_larsrc/conf/xdoclet/struts-actions.xml 20 Jan 2009 16:18:54 -0000 1.32 +++ lams_tool_larsrc/conf/xdoclet/struts-actions.xml 13 Feb 2009 05:56:15 -0000 1.33 @@ -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 =================================================================== RCS file: /usr/local/cvsroot/lams_tool_larsrc/web/WEB-INF/web.xml,v diff -u -r1.18 -r1.19 --- lams_tool_larsrc/web/WEB-INF/web.xml 9 Feb 2009 00:08:24 -0000 1.18 +++ lams_tool_larsrc/web/WEB-INF/web.xml 13 Feb 2009 05:56:15 -0000 1.19 @@ -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 =================================================================== RCS file: /usr/local/cvsroot/lams_tool_larsrc/web/common/header.jsp,v diff -u -r1.10 -r1.11 --- lams_tool_larsrc/web/common/header.jsp 8 Jun 2007 01:39:05 -0000 1.10 +++ lams_tool_larsrc/web/common/header.jsp 13 Feb 2009 05:56:15 -0000 1.11 @@ -11,6 +11,7 @@ + Index: lams_tool_larsrc/web/pages/itemreview/instructionsnav.jsp =================================================================== RCS file: /usr/local/cvsroot/lams_tool_larsrc/web/pages/itemreview/instructionsnav.jsp,v diff -u -r1.22 -r1.23 --- lams_tool_larsrc/web/pages/itemreview/instructionsnav.jsp 8 Jun 2007 01:39:01 -0000 1.22 +++ lams_tool_larsrc/web/pages/itemreview/instructionsnav.jsp 13 Feb 2009 05:56:15 -0000 1.23 @@ -27,13 +27,23 @@ ${instructions.title} <%@ include file="/common/header.jsp"%> - + <%-- param has higher level for request attribute --%>