Index: lams_tool_sbmt/src/java/org/lamsfoundation/lams/tool/sbmt/dto/LearnerDetailsDTO.java =================================================================== diff -u -r87916b2e9c4406342e26149d731a5ab070f4d4e0 -re4775d8e6fe34e04f7de5751b73976705fd43e79 --- lams_tool_sbmt/src/java/org/lamsfoundation/lams/tool/sbmt/dto/LearnerDetailsDTO.java (.../LearnerDetailsDTO.java) (revision 87916b2e9c4406342e26149d731a5ab070f4d4e0) +++ lams_tool_sbmt/src/java/org/lamsfoundation/lams/tool/sbmt/dto/LearnerDetailsDTO.java (.../LearnerDetailsDTO.java) (revision e4775d8e6fe34e04f7de5751b73976705fd43e79) @@ -10,6 +10,8 @@ import java.util.Date; import java.util.List; +import org.lamsfoundation.lams.usermanagement.dto.UserDTO; + /** * @author Manpreet Minhas * @serial 5900249986365640342L @@ -18,9 +20,11 @@ private static final long serialVersionUID = 5900249986365640342L; private Long toolSessionID; - - private Long userID; - private String userName; + + //learner personal info dto + private UserDTO userDto; + + //learner uploaded file info private String fileName; private String fileDescription; private String comments; @@ -156,19 +160,8 @@ public void setToolSessionID(Long toolSessionID) { this.toolSessionID = toolSessionID; } + /** - * @return Returns the userID. - */ - public Long getUserID() { - return userID; - } - /** - * @param userID The userID to set. - */ - public void setUserID(Long userID) { - this.userID = userID; - } - /** * @return Returns the filesUploaded. */ public List getFilesUploaded() { @@ -192,16 +185,11 @@ public void setLocked(boolean locked) { this.locked = locked; } - /** - * @return Returns the userName. - */ - public String getUserName() { - return userName; + + public UserDTO getUserDto() { + return userDto; } - /** - * @param userName The userName to set. - */ - public void setUserName(String userName) { - this.userName = userName; + public void setUserDto(UserDTO userDto) { + this.userDto = userDto; } } Index: lams_tool_sbmt/src/java/org/lamsfoundation/lams/tool/sbmt/web/LearnerAction.java =================================================================== diff -u -r218109b0df4286a49f8426d903457f30760d7109 -re4775d8e6fe34e04f7de5751b73976705fd43e79 --- lams_tool_sbmt/src/java/org/lamsfoundation/lams/tool/sbmt/web/LearnerAction.java (.../LearnerAction.java) (revision 218109b0df4286a49f8426d903457f30760d7109) +++ lams_tool_sbmt/src/java/org/lamsfoundation/lams/tool/sbmt/web/LearnerAction.java (.../LearnerAction.java) (revision e4775d8e6fe34e04f7de5751b73976705fd43e79) @@ -11,6 +11,7 @@ import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; +import javax.servlet.http.HttpSession; import org.apache.log4j.Logger; import org.apache.struts.action.ActionForm; @@ -30,6 +31,9 @@ import org.lamsfoundation.lams.tool.sbmt.service.ISubmitFilesService; import org.lamsfoundation.lams.tool.sbmt.service.SubmitFilesServiceProxy; import org.lamsfoundation.lams.tool.sbmt.util.SbmtConstants; +import org.lamsfoundation.lams.usermanagement.dto.UserDTO; +import org.lamsfoundation.lams.web.session.SessionManager; +import org.lamsfoundation.lams.web.util.AttributeNames; /** * @author Manpreet Minhas @@ -51,7 +55,14 @@ public ISubmitFilesService submitFilesService; public static Logger logger = Logger.getLogger(LearnerAction.class); - + /** + * The initial page of learner in Submission tool. This page will list all uploaded files and learn + * @param mapping + * @param form + * @param request + * @param response + * @return + */ public ActionForward listFiles(ActionMapping mapping, ActionForm form, HttpServletRequest request, @@ -60,7 +71,11 @@ DynaActionForm authForm= (DynaActionForm)form; Long sessionID =(Long) authForm.get(SbmtConstants.TOOL_SESSION_ID); - Long userID = (Long)authForm.get(SbmtConstants.USER_ID); + //get session from shared session. + HttpSession ss = SessionManager.getSession(); + //get back login user DTO + UserDTO user = (UserDTO) ss.getAttribute(AttributeNames.USER); + Long userID = new Long(user.getUserID().longValue()); //get submission information from content table.E.g., title, instruction submitFilesService = SubmitFilesServiceProxy.getSubmitFilesService(this.getServlet().getServletContext()); @@ -72,7 +87,7 @@ List filesUploaded = submitFilesService.getFilesUploadedByUser(userID,sessionID); Learner learner = submitFilesService.getLearner(sessionID,userID); - setLearnerDTO(request, sessionID,userID,learner, content, filesUploaded); + setLearnerDTO(request, sessionID,user,learner, content, filesUploaded); //to avoid user without patience click "upload" button too fast saveToken(request); return mapping.getInputForward(); @@ -95,20 +110,30 @@ DynaActionForm authForm= (DynaActionForm)form; if(!isTokenValid(request,true)){ Long sessionID =(Long) authForm.get(SbmtConstants.TOOL_SESSION_ID); - Long userID = (Long)authForm.get(SbmtConstants.USER_ID); + //get session from shared session. + HttpSession ss = SessionManager.getSession(); + //get back login user DTO + UserDTO user = (UserDTO) ss.getAttribute(AttributeNames.USER); + Long userID = new Long(user.getUserID().longValue()); + submitFilesService = SubmitFilesServiceProxy.getSubmitFilesService(this.getServlet().getServletContext()); List filesUploaded = submitFilesService.getFilesUploadedByUser(userID,sessionID); submitFilesService = SubmitFilesServiceProxy.getSubmitFilesService(this.getServlet().getServletContext()); SubmitFilesSession session = submitFilesService.getSessionById(sessionID); SubmitFilesContent content = session.getContent(); Learner learner = submitFilesService.getLearner(sessionID,userID); - setLearnerDTO(request, sessionID,userID,learner, content, filesUploaded); + setLearnerDTO(request, sessionID,user,learner, content, filesUploaded); return returnErrors(mapping,request,"submit.upload.twice","upload"); } Long sessionID =(Long) authForm.get(SbmtConstants.TOOL_SESSION_ID); - Long userID = (Long)authForm.get(SbmtConstants.USER_ID); + //get session from shared session. + HttpSession ss = SessionManager.getSession(); + //get back login user DTO + UserDTO user = (UserDTO) ss.getAttribute(AttributeNames.USER); + Long userID = new Long(user.getUserID().longValue()); + FormFile uploadedFile= (FormFile) authForm.get("filePath"); String fileDescription = (String) authForm.get("fileDescription"); @@ -121,7 +146,7 @@ SubmitFilesSession session = submitFilesService.getSessionById(sessionID); SubmitFilesContent content = session.getContent(); Learner learner = submitFilesService.getLearner(sessionID,userID); - setLearnerDTO(request,sessionID,userID, learner, content, filesUploaded); + setLearnerDTO(request,sessionID,user, learner, content, filesUploaded); return mapping.getInputForward(); }catch(SubmitFilesException se){ logger.error("uploadFile: Submit Files Exception has occured" + se.getMessage()); @@ -182,16 +207,19 @@ * @param filesUploaded */ private void setLearnerDTO(HttpServletRequest request, Long sessionID, - Long userID, Learner learner, SubmitFilesContent content, + UserDTO userDto, Learner learner, SubmitFilesContent content, List filesUploaded) { LearnerDetailsDTO dto = new LearnerDetailsDTO(); //don't use learner data, becuase these 2 values come from web page. Learner maybe empty. dto.setToolSessionID(sessionID); - dto.setUserID(userID); + dto.setUserDto(userDto); + if(learner != null){ //only content is lock-on-finished, then check whehter learner choose "finish" if(content.isLockOnFinished()) + //if learner already finished and lcokonfinished is true, the lock the page, learner + //can not "finish" again. dto.setLocked(learner.isFinished()); else dto.setLocked(false); Index: lams_tool_sbmt/src/java/org/lamsfoundation/lams/tool/sbmt/web/MonitoringAction.java =================================================================== diff -u -r0b91d14af990013a1f529eca5d701ebe37a5fc73 -re4775d8e6fe34e04f7de5751b73976705fd43e79 --- lams_tool_sbmt/src/java/org/lamsfoundation/lams/tool/sbmt/web/MonitoringAction.java (.../MonitoringAction.java) (revision 0b91d14af990013a1f529eca5d701ebe37a5fc73) +++ lams_tool_sbmt/src/java/org/lamsfoundation/lams/tool/sbmt/web/MonitoringAction.java (.../MonitoringAction.java) (revision e4775d8e6fe34e04f7de5751b73976705fd43e79) @@ -30,7 +30,6 @@ import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; -import javax.servlet.http.HttpSession; import org.apache.commons.lang.StringUtils; import org.apache.poi.hssf.usermodel.HSSFCell; @@ -53,8 +52,6 @@ import org.lamsfoundation.lams.tool.sbmt.util.SbmtConstants; import org.lamsfoundation.lams.usermanagement.dto.UserDTO; import org.lamsfoundation.lams.util.WebUtil; -import org.lamsfoundation.lams.web.session.SessionManager; -import org.lamsfoundation.lams.web.util.AttributeNames; /** @@ -116,18 +113,8 @@ HttpServletRequest request, HttpServletResponse response){ Long sessionID =new Long(WebUtil.readLongParam(request,SbmtConstants.TOOL_SESSION_ID)); -// Long userID = new Long(WebUtil.readLongParam(request,"userID")); -// Session session = SessionManager.getCurrentSession(); - System.out.println(request.getRemoteUser()); - System.out.println(request.getUserPrincipal()); -// ToolSession toolSession = SessionManager.getCurrentToolSession(); -// session.setAttribute("TS","from sesson"); -// toolSession.setAttribute("TTS","from tool session"); - - HttpSession ss = SessionManager.getSession(); - UserDTO user = (UserDTO) ss.getAttribute(AttributeNames.USER); - Long userID = new Long(user.getUserID().longValue()); - + Long userID = new Long(WebUtil.readLongParam(request,"userID")); + submitFilesService = getSubmitFilesService(); //return FileDetailsDTO list according to the given userID and sessionID List files = submitFilesService.getFilesUploadedByUser(userID,sessionID); Index: lams_tool_sbmt/web/learner/sbmtLearner.jsp =================================================================== diff -u -r6dc489ffc6bc1ff7b073f5c98ad518aafcd1e5cd -re4775d8e6fe34e04f7de5751b73976705fd43e79 --- lams_tool_sbmt/web/learner/sbmtLearner.jsp (.../sbmtLearner.jsp) (revision 6dc489ffc6bc1ff7b073f5c98ad518aafcd1e5cd) +++ lams_tool_sbmt/web/learner/sbmtLearner.jsp (.../sbmtLearner.jsp) (revision e4775d8e6fe34e04f7de5751b73976705fd43e79) @@ -13,7 +13,7 @@ function finish(){ var lockOnFinished = ; var uploadFileNum = 01; - var finishUrl= ""; + var finishUrl= ""; if(lockOnFinished && uploadFileNum==0){ if(confirm("")) location.href= finishUrl; @@ -102,7 +102,6 @@ - Index: lams_tool_sbmt/web/test.jsp =================================================================== diff -u -rfa0df9ff12fdf122a64b526a05978e5087427e19 -re4775d8e6fe34e04f7de5751b73976705fd43e79 --- lams_tool_sbmt/web/test.jsp (.../test.jsp) (revision fa0df9ff12fdf122a64b526a05978e5087427e19) +++ lams_tool_sbmt/web/test.jsp (.../test.jsp) (revision e4775d8e6fe34e04f7de5751b73976705fd43e79) @@ -14,13 +14,11 @@ - -