Index: lams_tool_images/src/java/org/lamsfoundation/lams/tool/imageGallery/web/controller/AuthoringController.java =================================================================== diff -u -rf343b917c5b2181b038a1e5a08e73315cf3cba4f -rfa0b7dec0f74e6b8eeb7b4b2ab193ba2cadc82d9 --- lams_tool_images/src/java/org/lamsfoundation/lams/tool/imageGallery/web/controller/AuthoringController.java (.../AuthoringController.java) (revision f343b917c5b2181b038a1e5a08e73315cf3cba4f) +++ lams_tool_images/src/java/org/lamsfoundation/lams/tool/imageGallery/web/controller/AuthoringController.java (.../AuthoringController.java) (revision fa0b7dec0f74e6b8eeb7b4b2ab193ba2cadc82d9) @@ -98,78 +98,9 @@ @RequestMapping("/start") public String start(@ModelAttribute ImageGalleryForm imageGalleryForm, HttpServletRequest request) throws ServletException { - - // save toolContentID into HTTPSession - Long contentId = new Long(WebUtil.readLongParam(request, ImageGalleryConstants.PARAM_TOOL_CONTENT_ID)); - - List items = null; - ImageGallery imageGallery = null; - - // Get contentFolderID and save to form. - String contentFolderID = WebUtil.readStrParam(request, AttributeNames.PARAM_CONTENT_FOLDER_ID); - imageGalleryForm.setContentFolderID(contentFolderID); - - // initial Session Map - SessionMap sessionMap = new SessionMap<>(); - request.getSession().setAttribute(sessionMap.getSessionID(), sessionMap); - imageGalleryForm.setSessionMapID(sessionMap.getSessionID()); - - try { - imageGallery = igService.getImageGalleryByContentId(contentId); - // if imageGallery does not exist, try to use default content instead. - if (imageGallery == null) { - imageGallery = igService.getDefaultContent(contentId); - if (imageGallery.getImageGalleryItems() != null) { - items = new ArrayList(imageGallery.getImageGalleryItems()); - } else { - items = null; - } - } else { - items = igService.getAuthoredItems(imageGallery.getUid()); - } - - imageGalleryForm.setImageGallery(imageGallery); - imageGalleryForm.setAllowRatingsOrVote(imageGallery.isAllowVote() || imageGallery.isAllowRank()); - } catch (Exception e) { - AuthoringController.log.error(e); - throw new ServletException(e); - } - - // init it to avoid null exception in following handling - if (items == null) { - items = new ArrayList<>(); - } else { - ImageGalleryUser imageGalleryUser = null; - // handle system default question: createBy is null, now set it to current user - for (ImageGalleryItem item : items) { - if (item.getCreateBy() == null) { - if (imageGalleryUser == null) { - // get back login user DTO - HttpSession ss = SessionManager.getSession(); - UserDTO user = (UserDTO) ss.getAttribute(AttributeNames.USER); - imageGalleryUser = new ImageGalleryUser(user, imageGallery); - } - item.setCreateBy(imageGalleryUser); - } - } - } - // init imageGallery item list - SortedSet imageGalleryItemList = getImageList(sessionMap); - imageGalleryItemList.clear(); - imageGalleryItemList.addAll(items); - - // get rating criterias from DB - List ratingCriterias = igService.getRatingCriterias(contentId); - sessionMap.put(AttributeNames.ATTR_RATING_CRITERIAS, ratingCriterias); - - sessionMap.put(ImageGalleryConstants.ATTR_IMAGE_GALLERY_FORM, imageGalleryForm); - sessionMap.put(ImageGalleryConstants.ATTR_NEXT_IMAGE_TITLE, imageGallery.getNextImageTitle()); - request.getSession().setAttribute(AttributeNames.PARAM_NOTIFY_CLOSE_URL, - request.getParameter(AttributeNames.PARAM_NOTIFY_CLOSE_URL)); ToolAccessMode mode = WebUtil.readToolAccessModeAuthorDefaulted(request); request.setAttribute(AttributeNames.ATTR_MODE, mode.toString()); - request.setAttribute("startForm", imageGalleryForm); - return "pages/authoring/start"; + return readDatabaseData(imageGalleryForm, request); } @RequestMapping("/definelater") @@ -186,8 +117,18 @@ igService.auditLogStartEditingActivityInMonitor(contentId); request.setAttribute(AttributeNames.ATTR_MODE, ToolAccessMode.TEACHER.toString()); + return readDatabaseData(imageGalleryForm, request); + } + + /** + * Common method for "start" and "defineLater" + */ + private String readDatabaseData(ImageGalleryForm imageGalleryForm, HttpServletRequest request) throws ServletException { + // save toolContentID into HTTPSession + Long contentId = new Long(WebUtil.readLongParam(request, ImageGalleryConstants.PARAM_TOOL_CONTENT_ID)); List items = null; + ImageGallery imageGallery = null; // Get contentFolderID and save to form. String contentFolderID = WebUtil.readStrParam(request, AttributeNames.PARAM_CONTENT_FOLDER_ID); @@ -250,7 +191,6 @@ sessionMap.put(ImageGalleryConstants.ATTR_NEXT_IMAGE_TITLE, imageGallery.getNextImageTitle()); request.getSession().setAttribute(AttributeNames.PARAM_NOTIFY_CLOSE_URL, request.getParameter(AttributeNames.PARAM_NOTIFY_CLOSE_URL)); - request.setAttribute(AttributeNames.ATTR_MODE, ToolAccessMode.TEACHER.toString()); request.setAttribute("startForm", imageGalleryForm); return "pages/authoring/start"; } Index: lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/web/controller/AuthoringController.java =================================================================== diff -u -r8ee7fa8485b72185b59612fa0cd097adf044d8de -rfa0b7dec0f74e6b8eeb7b4b2ab193ba2cadc82d9 --- lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/web/controller/AuthoringController.java (.../AuthoringController.java) (revision 8ee7fa8485b72185b59612fa0cd097adf044d8de) +++ lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/web/controller/AuthoringController.java (.../AuthoringController.java) (revision fa0b7dec0f74e6b8eeb7b4b2ab193ba2cadc82d9) @@ -365,80 +365,7 @@ ToolAccessMode mode = WebUtil.readToolAccessModeAuthorDefaulted(request); request.setAttribute(AttributeNames.ATTR_MODE, mode.toString()); - // save toolContentID into HTTPSession - Long contentId = new Long(WebUtil.readLongParam(request, ResourceConstants.PARAM_TOOL_CONTENT_ID)); - - // get back the resource and item list and display them on page - - List items = null; - Resource resource = null; - - // Get contentFolderID and save to form. - String contentFolderID = WebUtil.readStrParam(request, AttributeNames.PARAM_CONTENT_FOLDER_ID); - startForm.setContentFolderID(contentFolderID); - - // initial Session Map - SessionMap sessionMap = new SessionMap<>(); - request.getSession().setAttribute(sessionMap.getSessionID(), sessionMap); - startForm.setSessionMapID(sessionMap.getSessionID()); - - try { - resource = resourceService.getResourceByContentId(contentId); - // if resource does not exist, try to use default content instead. - if (resource == null) { - resource = resourceService.getDefaultContent(contentId); - if (resource.getResourceItems() != null) { - items = new ArrayList(resource.getResourceItems()); - } else { - items = null; - } - } else { - items = resourceService.getAuthoredItems(resource.getUid()); - } - - startForm.setResource(resource); - } catch (Exception e) { - AuthoringController.log.error(e); - throw new ServletException(e); - } - - // init it to avoid null exception in following handling - if (items == null) { - items = new ArrayList<>(); - } else { - ResourceUser resourceUser = null; - // handle system default question: createBy is null, now set it to - // current user - for (ResourceItem item : items) { - if (item.getCreateBy() == null) { - if (resourceUser == null) { - // get back login user DTO - HttpSession ss = SessionManager.getSession(); - UserDTO user = (UserDTO) ss.getAttribute(AttributeNames.USER); - resourceUser = new ResourceUser(user, resource); - } - item.setCreateBy(resourceUser); - } - } - } - // init resource item list - SortedSet resourceItemList = getResourceItemList(sessionMap); - resourceItemList.clear(); - resourceItemList.addAll(items); - - // If there is no order id, set it up - int i = 1; - for (ResourceItem resourceItem : resourceItemList) { - if (resourceItem.getOrderId() == null || resourceItem.getOrderId() != i) { - resourceItem.setOrderId(i); - } - i++; - } - - sessionMap.put(ResourceConstants.ATTR_RESOURCE_FORM, startForm); - request.getSession().setAttribute(AttributeNames.PARAM_NOTIFY_CLOSE_URL, - request.getParameter(AttributeNames.PARAM_NOTIFY_CLOSE_URL)); - return "pages/authoring/start"; + return readDatabaseData(startForm, request); } @RequestMapping("/definelater") @@ -456,11 +383,20 @@ request.setAttribute(AttributeNames.ATTR_MODE, ToolAccessMode.TEACHER.toString()); + return readDatabaseData(startForm, request); + } + + /** + * Common method for "start" and "defineLater" + */ + private String readDatabaseData(ResourceForm startForm, HttpServletRequest request) throws ServletException { // save toolContentID into HTTPSession + Long contentId = new Long(WebUtil.readLongParam(request, ResourceConstants.PARAM_TOOL_CONTENT_ID)); // get back the resource and item list and display them on page List items = null; + Resource resource = null; // Get contentFolderID and save to form. String contentFolderID = WebUtil.readStrParam(request, AttributeNames.PARAM_CONTENT_FOLDER_ID); @@ -527,7 +463,6 @@ sessionMap.put(ResourceConstants.ATTR_RESOURCE_FORM, startForm); request.getSession().setAttribute(AttributeNames.PARAM_NOTIFY_CLOSE_URL, request.getParameter(AttributeNames.PARAM_NOTIFY_CLOSE_URL)); - return "pages/authoring/start"; } Index: lams_tool_spreadsheet/src/java/org/lamsfoundation/lams/tool/spreadsheet/web/controller/AuthoringController.java =================================================================== diff -u -rc6fc9e20588dbb45fc6aba99ebd1867a3b231f24 -rfa0b7dec0f74e6b8eeb7b4b2ab193ba2cadc82d9 --- lams_tool_spreadsheet/src/java/org/lamsfoundation/lams/tool/spreadsheet/web/controller/AuthoringController.java (.../AuthoringController.java) (revision c6fc9e20588dbb45fc6aba99ebd1867a3b231f24) +++ lams_tool_spreadsheet/src/java/org/lamsfoundation/lams/tool/spreadsheet/web/controller/AuthoringController.java (.../AuthoringController.java) (revision fa0b7dec0f74e6b8eeb7b4b2ab193ba2cadc82d9) @@ -72,43 +72,14 @@ @RequestMapping("/start") public String start(@ModelAttribute SpreadsheetForm spreadsheetForm, HttpServletRequest request) throws ServletException { - - // save toolContentID into HTTPSession - Long contentId = new Long(WebUtil.readLongParam(request, SpreadsheetConstants.PARAM_TOOL_CONTENT_ID)); - - Spreadsheet spreadsheet = null; - - // Get contentFolderID and save to form. - String contentFolderID = WebUtil.readStrParam(request, AttributeNames.PARAM_CONTENT_FOLDER_ID); - spreadsheetForm.setContentFolderID(contentFolderID); - - // initial Session Map - SessionMap sessionMap = new SessionMap<>(); - request.getSession().setAttribute(sessionMap.getSessionID(), sessionMap); - spreadsheetForm.setSessionMapID(sessionMap.getSessionID()); - - try { - spreadsheet = service.getSpreadsheetByContentId(contentId); - // if spreadsheet does not exist, try to use default content instead. - if (spreadsheet == null) { - spreadsheet = service.getDefaultContent(contentId); - } - spreadsheetForm.setSpreadsheet(spreadsheet); - } catch (Exception e) { - log.error(e); - throw new ServletException(e); - } - - sessionMap.put(SpreadsheetConstants.ATTR_RESOURCE_FORM, spreadsheetForm); - request.getSession().setAttribute(AttributeNames.PARAM_NOTIFY_CLOSE_URL, - request.getParameter(AttributeNames.PARAM_NOTIFY_CLOSE_URL)); - return "pages/authoring/start"; + ToolAccessMode mode = WebUtil.readToolAccessModeAuthorDefaulted(request); + request.setAttribute(AttributeNames.ATTR_MODE, mode.toString()); + return readDatabaseData(spreadsheetForm, request); } @RequestMapping("/definelater") public String defineLater(@ModelAttribute SpreadsheetForm spreadsheetForm, HttpServletRequest request) throws ServletException { - Long contentId = new Long(WebUtil.readLongParam(request, AttributeNames.PARAM_TOOL_CONTENT_ID)); Spreadsheet spreadsheet = service.getSpreadsheetByContentId(contentId); @@ -117,7 +88,24 @@ //audit log the teacher has started editing activity in monitor service.auditLogStartEditingActivityInMonitor(contentId); + + request.setAttribute(AttributeNames.ATTR_MODE, ToolAccessMode.TEACHER.toString()); + return readDatabaseData(spreadsheetForm, request); + } + + /** + * Common method for "start" and "defineLater" + */ + private String readDatabaseData(SpreadsheetForm spreadsheetForm, HttpServletRequest request) throws ServletException { + // save toolContentID into HTTPSession + Long contentId = new Long(WebUtil.readLongParam(request, SpreadsheetConstants.PARAM_TOOL_CONTENT_ID)); + Spreadsheet spreadsheet = null; + + // Get contentFolderID and save to form. + String contentFolderID = WebUtil.readStrParam(request, AttributeNames.PARAM_CONTENT_FOLDER_ID); + spreadsheetForm.setContentFolderID(contentFolderID); + // initial Session Map SessionMap sessionMap = new SessionMap<>(); request.getSession().setAttribute(sessionMap.getSessionID(), sessionMap); @@ -138,8 +126,6 @@ sessionMap.put(SpreadsheetConstants.ATTR_RESOURCE_FORM, spreadsheetForm); request.getSession().setAttribute(AttributeNames.PARAM_NOTIFY_CLOSE_URL, request.getParameter(AttributeNames.PARAM_NOTIFY_CLOSE_URL)); - request.setAttribute(AttributeNames.ATTR_MODE, ToolAccessMode.TEACHER.toString()); - return "pages/authoring/start"; } Index: lams_tool_survey/src/java/org/lamsfoundation/lams/tool/survey/web/controller/AuthoringController.java =================================================================== diff -u -r7475d08afc280b5e2e5ddf04e8bf35e3166aaf80 -rfa0b7dec0f74e6b8eeb7b4b2ab193ba2cadc82d9 --- lams_tool_survey/src/java/org/lamsfoundation/lams/tool/survey/web/controller/AuthoringController.java (.../AuthoringController.java) (revision 7475d08afc280b5e2e5ddf04e8bf35e3166aaf80) +++ lams_tool_survey/src/java/org/lamsfoundation/lams/tool/survey/web/controller/AuthoringController.java (.../AuthoringController.java) (revision fa0b7dec0f74e6b8eeb7b4b2ab193ba2cadc82d9) @@ -340,93 +340,20 @@ * Read survey data from database and put them into HttpSession. It will redirect to init.do directly after this * method run successfully. * - * This method will avoid read database again and lost un-saved resouce item lost when user "refresh page", - * - * @throws ServletException - * + * This method will avoid read database again and lost un-saved resouce item lost when user "refresh page". */ @RequestMapping(value = "/start") - private String start(SurveyForm startForm, HttpServletRequest request) throws Exception { - + private String start(SurveyForm startForm, HttpServletRequest request) throws SurveyApplicationException { ToolAccessMode mode = WebUtil.readToolAccessModeAuthorDefaulted(request); request.setAttribute(AttributeNames.ATTR_MODE, mode.toString()); - - // save toolContentID into HTTPSession - Long contentId = new Long(WebUtil.readLongParam(request, AttributeNames.PARAM_TOOL_CONTENT_ID)); - - // get back the survey and item list and display them on page - ISurveyService service = surveyService; - - List questions = null; - Survey survey = null; - - // Get contentFolderID and save to form. - String contentFolderID = WebUtil.readStrParam(request, AttributeNames.PARAM_CONTENT_FOLDER_ID); - startForm.setContentFolderID(contentFolderID); - - // initial Session Map - SessionMap sessionMap = new SessionMap<>(); - request.getSession().setAttribute(sessionMap.getSessionID(), sessionMap); - startForm.setSessionMapID(sessionMap.getSessionID()); - - survey = service.getSurveyByContentId(contentId); - // if survey does not exist, try to use default content instead. - if (survey == null) { - survey = service.getDefaultContent(contentId); - if (survey.getQuestions() != null) { - questions = new ArrayList<>(survey.getQuestions()); - } else { - questions = null; - } - } else { - questions = new ArrayList<>(survey.getQuestions()); - } - - startForm.setSurvey(survey); - - // init it to avoid null exception in following handling - if (questions == null) { - questions = new ArrayList(); - } else { - SurveyUser surveyUser = null; - // handle system default question: createBy is null, now set it to current user - for (SurveyQuestion question : questions) { - if (question.getCreateBy() == null) { - if (surveyUser == null) { - // get back login user DTO - HttpSession ss = SessionManager.getSession(); - UserDTO user = (UserDTO) ss.getAttribute(AttributeNames.USER); - surveyUser = new SurveyUser(user, survey); - } - question.setCreateBy(surveyUser); - } - } - } - // init survey item list - SortedSet surveyItemList = getSurveyItemList(sessionMap); - surveyItemList.clear(); - retriveQuestionListForDisplay(questions); - surveyItemList.addAll(questions); - - // init condition set - SortedSet conditionSet = getSurveyConditionSet(sessionMap); - conditionSet.clear(); - conditionSet.addAll(survey.getConditions()); - - sessionMap.put(SurveyConstants.ATTR_SURVEY_FORM, startForm); - request.getSession().setAttribute(AttributeNames.PARAM_NOTIFY_CLOSE_URL, - request.getParameter(AttributeNames.PARAM_NOTIFY_CLOSE_URL)); - request.setAttribute("startForm", startForm); - return "pages/authoring/start"; + return readDatabaseData(startForm, request); } @RequestMapping(value = "/definelater") public String definelater(SurveyForm startForm, HttpServletRequest request) throws Exception { - // update define later flag to true Long contentId = new Long(WebUtil.readLongParam(request, AttributeNames.PARAM_TOOL_CONTENT_ID)); - ISurveyService service = surveyService; - Survey survey = service.getSurveyByContentId(contentId); + Survey survey = surveyService.getSurveyByContentId(contentId); boolean isEditable = SurveyWebUtils.isSurveyEditable(survey); if (!isEditable) { @@ -436,22 +363,26 @@ if (!survey.isContentInUse()) { survey.setDefineLater(true); - service.saveOrUpdateSurvey(survey); + surveyService.saveOrUpdateSurvey(survey); // audit log the teacher has started editing activity in monitor - service.auditLogStartEditingActivityInMonitor(contentId); + surveyService.auditLogStartEditingActivityInMonitor(contentId); } request.setAttribute(AttributeNames.ATTR_MODE, ToolAccessMode.TEACHER.toString()); - + return readDatabaseData(startForm, request); + } + + /** + * Common method for "start" and "defineLater" + */ + private String readDatabaseData(SurveyForm startForm, HttpServletRequest request) throws SurveyApplicationException { // save toolContentID into HTTPSession - contentId = new Long(WebUtil.readLongParam(request, AttributeNames.PARAM_TOOL_CONTENT_ID)); + Long contentId = new Long(WebUtil.readLongParam(request, AttributeNames.PARAM_TOOL_CONTENT_ID)); // get back the survey and item list and display them on page - service = surveyService; - List questions = null; - survey = null; + Survey survey = null; // Get contentFolderID and save to form. String contentFolderID = WebUtil.readStrParam(request, AttributeNames.PARAM_CONTENT_FOLDER_ID); @@ -462,10 +393,10 @@ request.getSession().setAttribute(sessionMap.getSessionID(), sessionMap); startForm.setSessionMapID(sessionMap.getSessionID()); - survey = service.getSurveyByContentId(contentId); + survey = surveyService.getSurveyByContentId(contentId); // if survey does not exist, try to use default content instead. if (survey == null) { - survey = service.getDefaultContent(contentId); + survey = surveyService.getDefaultContent(contentId); if (survey.getQuestions() != null) { questions = new ArrayList<>(survey.getQuestions()); } else { Index: lams_tool_task/src/java/org/lamsfoundation/lams/tool/taskList/web/controller/AuthoringController.java =================================================================== diff -u -r7475d08afc280b5e2e5ddf04e8bf35e3166aaf80 -rfa0b7dec0f74e6b8eeb7b4b2ab193ba2cadc82d9 --- lams_tool_task/src/java/org/lamsfoundation/lams/tool/taskList/web/controller/AuthoringController.java (.../AuthoringController.java) (revision 7475d08afc280b5e2e5ddf04e8bf35e3166aaf80) +++ lams_tool_task/src/java/org/lamsfoundation/lams/tool/taskList/web/controller/AuthoringController.java (.../AuthoringController.java) (revision fa0b7dec0f74e6b8eeb7b4b2ab193ba2cadc82d9) @@ -95,98 +95,23 @@ @Qualifier("lataskMessageService") private MessageService messageService; - // ********************************************************** - // Solid taskList methods - // ********************************************************** - /** * Read taskList data from database and put them into HttpSession. It will * redirect to init.do directly after this method run successfully. * * This method will avoid read database again and lost un-saved resouce item * lost when user "refresh page", */ - @RequestMapping("/start") public String start(@ModelAttribute TaskListForm taskListForm, HttpServletRequest request) throws ServletException { - ToolAccessMode mode = WebUtil.readToolAccessModeAuthorDefaulted(request); request.setAttribute(AttributeNames.ATTR_MODE, mode.toString()); - - // save toolContentID into HTTPSession - Long contentId = new Long(WebUtil.readLongParam(request, TaskListConstants.PARAM_TOOL_CONTENT_ID)); - - List items = null; - TaskList taskList = null; - - // Get contentFolderID and save to form. - String contentFolderID = WebUtil.readStrParam(request, AttributeNames.PARAM_CONTENT_FOLDER_ID); - taskListForm.setContentFolderID(contentFolderID); - - // initial Session Map - SessionMap sessionMap = new SessionMap<>(); - request.getSession().setAttribute(sessionMap.getSessionID(), sessionMap); - taskListForm.setSessionMapID(sessionMap.getSessionID()); - - try { - taskList = taskListService.getTaskListByContentId(contentId); - // if taskList does not exist, try to use default content instead. - if (taskList == null) { - taskList = taskListService.getDefaultContent(contentId); - if (taskList.getTaskListItems() != null) { - items = new ArrayList(taskList.getTaskListItems()); - } else { - items = null; - } - } else { - items = taskListService.getAuthoredItems(taskList.getUid()); - } - - taskListForm.setTaskList(taskList); - } catch (Exception e) { - AuthoringController.log.error(e); - throw new ServletException(e); - } - - // initialize conditions list - SortedSet conditionList = getTaskListConditionList(sessionMap); - conditionList.clear(); - conditionList.addAll(taskList.getConditions()); - - // init it to avoid null exception in following handling - if (items == null) { - items = new ArrayList<>(); - } else { - TaskListUser taskListUser = null; - // handle system default question: createBy is null, now set it to current user - for (TaskListItem item : items) { - if (item.getCreateBy() == null) { - if (taskListUser == null) { - // get back login user DTO - HttpSession ss = SessionManager.getSession(); - UserDTO user = (UserDTO) ss.getAttribute(AttributeNames.USER); - taskListUser = new TaskListUser(user, taskList); - } - item.setCreateBy(taskListUser); - } - } - } - // init taskList item list - SortedSet taskListItemList = getTaskListItemList(sessionMap); - taskListItemList.clear(); - taskListItemList.addAll(items); - - sessionMap.put(TaskListConstants.ATTR_TASKLIST_FORM, taskListForm); - request.getSession().setAttribute(AttributeNames.PARAM_NOTIFY_CLOSE_URL, - request.getParameter(AttributeNames.PARAM_NOTIFY_CLOSE_URL)); - request.setAttribute("startForm", taskListForm); - return "pages/authoring/start"; + return readDatabaseData(taskListForm, request); } @RequestMapping("/definelater") public String defineLater(@ModelAttribute TaskListForm taskListForm, HttpServletRequest request) throws ServletException { - // update define later flag to true Long contentId = new Long(WebUtil.readLongParam(request, AttributeNames.PARAM_TOOL_CONTENT_ID)); TaskList taskList = taskListService.getTaskListByContentId(contentId); @@ -198,10 +123,19 @@ taskListService.auditLogStartEditingActivityInMonitor(contentId); request.setAttribute(AttributeNames.ATTR_MODE, ToolAccessMode.TEACHER.toString()); + return readDatabaseData(taskListForm, request); + } + + /** + * Common method for "start" and "defineLater" + */ + private String readDatabaseData(TaskListForm taskListForm, HttpServletRequest request) throws ServletException { // save toolContentID into HTTPSession + Long contentId = new Long(WebUtil.readLongParam(request, TaskListConstants.PARAM_TOOL_CONTENT_ID)); List items = null; + TaskList taskList = null; // Get contentFolderID and save to form. String contentFolderID = WebUtil.readStrParam(request, AttributeNames.PARAM_CONTENT_FOLDER_ID); @@ -263,8 +197,8 @@ sessionMap.put(TaskListConstants.ATTR_TASKLIST_FORM, taskListForm); request.getSession().setAttribute(AttributeNames.PARAM_NOTIFY_CLOSE_URL, request.getParameter(AttributeNames.PARAM_NOTIFY_CLOSE_URL)); + request.setAttribute("startForm", taskListForm); return "pages/authoring/start"; - } /**