Index: lams_tool_task/src/java/org/lamsfoundation/lams/tool/taskList/web/controller/AuthoringController.java
===================================================================
diff -u -r164c032372fe265498f5492088122cc0e7df6058 -rf33abf1a2f52fc5a168127033f927174d83a2124
--- lams_tool_task/src/java/org/lamsfoundation/lams/tool/taskList/web/controller/AuthoringController.java (.../AuthoringController.java) (revision 164c032372fe265498f5492088122cc0e7df6058)
+++ lams_tool_task/src/java/org/lamsfoundation/lams/tool/taskList/web/controller/AuthoringController.java (.../AuthoringController.java) (revision f33abf1a2f52fc5a168127033f927174d83a2124)
@@ -454,10 +454,6 @@
/**
* Display edit page for existed taskList item.
- *
- * @param taskListForm
- * @param request
- * @return
*/
@RequestMapping("editItemInit")
public String editItemInit(@ModelAttribute TaskListItemForm taskListItemForm, HttpServletRequest request) {
@@ -487,17 +483,11 @@
* is not persist them into database, just save HttpSession
* temporarily. Only they will be persist when the entire authoring page is
* being persisted.
- *
- * @param form
- * @param request
- * @return
- * @throws ServletException
*/
@RequestMapping(path = "/saveOrUpdateItem", method = RequestMethod.POST)
public String saveOrUpdateItem(@ModelAttribute TaskListItemForm taskListItemForm, HttpServletRequest request) {
- MultiValueMap errorMap = new LinkedMultiValueMap<>();
- errorMap = validateTaskListItem(taskListItemForm);
+ MultiValueMap errorMap = validateTaskListItem(taskListItemForm);
if (!errorMap.isEmpty()) {
request.setAttribute("errorMap", errorMap);
@@ -773,7 +763,7 @@
MultiValueMap errorMap = new LinkedMultiValueMap<>();
if (StringUtils.isBlank(itemForm.getTitle())) {
- errorMap.add("GLOBAL", TaskListConstants.ERROR_MSG_TITLE_BLANK);
+ errorMap.add("GLOBAL", messageService.getMessage("error.resource.item.title.blank"));
}
return errorMap;
}
@@ -790,9 +780,9 @@
@RequestMapping(path = "/saveOrUpdatePedagogicalPlannerForm", method = RequestMethod.POST)
public String saveOrUpdatePedagogicalPlannerForm(@ModelAttribute TaskListPedagogicalPlannerForm plannerForm,
HttpServletRequest request) throws IOException {
-
- MultiValueMap errorMap = new LinkedMultiValueMap<>();
- errorMap = plannerForm.validate();
+
+ MultiValueMap errorMap = plannerForm.validate();
+
if (!errorMap.isEmpty()) {
TaskList taskList = taskListService.getTaskListByContentId(plannerForm.getToolContentID());
Index: lams_tool_task/src/java/org/lamsfoundation/lams/tool/taskList/web/controller/AuthoringTaskListConditionController.java
===================================================================
diff -u -r164c032372fe265498f5492088122cc0e7df6058 -rf33abf1a2f52fc5a168127033f927174d83a2124
--- lams_tool_task/src/java/org/lamsfoundation/lams/tool/taskList/web/controller/AuthoringTaskListConditionController.java (.../AuthoringTaskListConditionController.java) (revision 164c032372fe265498f5492088122cc0e7df6058)
+++ lams_tool_task/src/java/org/lamsfoundation/lams/tool/taskList/web/controller/AuthoringTaskListConditionController.java (.../AuthoringTaskListConditionController.java) (revision f33abf1a2f52fc5a168127033f927174d83a2124)
@@ -36,17 +36,23 @@
import org.apache.commons.beanutils.PropertyUtils;
import org.apache.commons.lang.StringUtils;
import org.apache.commons.lang.math.NumberUtils;
+import org.lamsfoundation.lams.tool.ToolAccessMode;
import org.lamsfoundation.lams.tool.taskList.TaskListConstants;
import org.lamsfoundation.lams.tool.taskList.model.TaskListCondition;
import org.lamsfoundation.lams.tool.taskList.model.TaskListItem;
import org.lamsfoundation.lams.tool.taskList.util.TaskListConditionComparator;
import org.lamsfoundation.lams.tool.taskList.util.TaskListItemComparator;
import org.lamsfoundation.lams.tool.taskList.web.form.TaskListConditionForm;
import org.lamsfoundation.lams.tool.taskList.web.form.TaskListForm;
+import org.lamsfoundation.lams.util.MessageService;
import org.lamsfoundation.lams.util.WebUtil;
+import org.lamsfoundation.lams.web.util.AttributeNames;
import org.lamsfoundation.lams.web.util.SessionMap;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.stereotype.Controller;
-import org.springframework.validation.Errors;
+import org.springframework.util.LinkedMultiValueMap;
+import org.springframework.util.MultiValueMap;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.RequestMapping;
@@ -62,6 +68,10 @@
@RequestMapping("/authoringCondition")
public class AuthoringTaskListConditionController {
+ @Autowired
+ @Qualifier("lataskMessageService")
+ private MessageService messageService;
+
/**
* Display same entire authoring page content from HttpSession variable.
*/
@@ -131,11 +141,12 @@
* persisted.
*/
@RequestMapping("/saveOrUpdateCondition")
- public String saveOrUpdateCondition(@ModelAttribute TaskListConditionForm taskListConditionForm, Errors errors,
+ public String saveOrUpdateCondition(@ModelAttribute TaskListConditionForm taskListConditionForm,
HttpServletRequest request) {
- validateTaskListCondition(taskListConditionForm, errors, request);
- if (errors.hasErrors()) {
+ MultiValueMap errorMap = new LinkedMultiValueMap<>();
+ validateTaskListCondition(taskListConditionForm, request);
+ if (!errorMap.isEmpty()) {
populateFormWithPossibleItems(taskListConditionForm, request);
return "pages/authoring/parts/addcondition";
}
@@ -144,8 +155,8 @@
extractFormToTaskListCondition(request, taskListConditionForm);
} catch (Exception e) {
// any upload exception will display as normal error message rather then throw exception directly
- errors.reject(e.getMessage());
- if (errors.hasErrors()) {
+ errorMap.add("GLOBAL", messageService.getMessage("error.upload.faile"));
+ if (!errorMap.isEmpty()) {
populateFormWithPossibleItems(taskListConditionForm, request);
return "pages/authoring/parts/addcondition";
}
@@ -381,14 +392,14 @@
/**
* Validate taskListCondition
*/
- private void validateTaskListCondition(TaskListConditionForm taskListConditionForm, Errors errors,
- HttpServletRequest request) {
+ private void validateTaskListCondition(TaskListConditionForm taskListConditionForm, HttpServletRequest request) {
+ MultiValueMap errorMap = new LinkedMultiValueMap<>();
String formConditionName = taskListConditionForm.getName();
if (StringUtils.isBlank(formConditionName)) {
- errors.reject(TaskListConstants.ERROR_MSG_NAME_BLANK);
+ errorMap.add("GLOBAL", messageService.getMessage("error.condition.name.blank"));
} else if (StringUtils.contains(formConditionName, '#')) {
- errors.reject(TaskListConstants.ERROR_MSG_NAME_CONTAINS_WRONG_SYMBOL);
+ errorMap.add("GLOBAL", messageService.getMessage("error.condition.name.contains.wrong.symbol"));
} else {
String formConditionSequenceId = taskListConditionForm.getSequenceId();
@@ -400,7 +411,8 @@
for (TaskListCondition condition : conditionList) {
if (formConditionName.equals(condition.getName())
&& !formConditionSequenceId.equals((new Integer(condition.getSequenceId() - 1)).toString())) {
- errors.reject(TaskListConstants.ERROR_MSG_NAME_DUPLICATED);
+ errorMap.add("GLOBAL", "error.condition.duplicated.name");
+ ;
break;
}
}
@@ -409,9 +421,27 @@
// should be selected at least one TaskListItem
String[] selectedItems = taskListConditionForm.getSelectedItems();
if (selectedItems == null || selectedItems.length == 0) {
- errors.reject(TaskListConstants.ERROR_MSG_NO_TASK_LIST_ITEMS);
+ errorMap.add("GLOBAL", "error.condition.no.tasklistitems.selected");
}
}
+ private MultiValueMap validate(TaskListForm taskListForm, HttpServletRequest request) {
+ MultiValueMap errorMap = new LinkedMultiValueMap<>();
+ // if (StringUtils.isBlank(taskListForm.getTaskList().getTitle())) {
+ // ActionMessage error = new ActionMessage("error.resource.item.title.blank");
+ // errors.add(ActionMessages.GLOBAL_MESSAGE, error);
+ // }
+
+ // define it later mode(TEACHER) skip below validation.
+ String modeStr = request.getParameter(AttributeNames.ATTR_MODE);
+ if (StringUtils.equals(modeStr, ToolAccessMode.TEACHER.toString())) {
+ return errorMap;
+ }
+
+ // Some other validation outside basic Tab.
+
+ return errorMap;
+ }
+
}
Index: lams_tool_task/src/java/org/lamsfoundation/lams/tool/taskList/web/controller/LearningController.java
===================================================================
diff -u -r1cd70f70a558b132cd8142d85edf0979a7883400 -rf33abf1a2f52fc5a168127033f927174d83a2124
--- lams_tool_task/src/java/org/lamsfoundation/lams/tool/taskList/web/controller/LearningController.java (.../LearningController.java) (revision 1cd70f70a558b132cd8142d85edf0979a7883400)
+++ lams_tool_task/src/java/org/lamsfoundation/lams/tool/taskList/web/controller/LearningController.java (.../LearningController.java) (revision f33abf1a2f52fc5a168127033f927174d83a2124)
@@ -76,7 +76,6 @@
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
-import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.context.WebApplicationContext;
import org.springframework.web.multipart.MultipartFile;
@@ -380,8 +379,7 @@
}
if (!validateBeforeFinish(request, sessionMapID)) {
- return "redirect:/";
- // getInputForward
+ return "/pages/learning/learning";
}
// get sessionId from HttpServletRequest
@@ -422,8 +420,7 @@
SessionMap sessionMap = (SessionMap) request.getSession()
.getAttribute(sessionMapID);
- MultiValueMap errorMap = new LinkedMultiValueMap<>();
- errorMap = validateTaskListItem(taskListItemForm);
+ MultiValueMap errorMap = validateTaskListItem(taskListItemForm);
if (!errorMap.isEmpty()) {
request.setAttribute("errorMap", errorMap);
@@ -508,16 +505,16 @@
* Uploads specified file to repository and associates it with current TaskListItem.
*/
@RequestMapping(path = "/uploadFile", method = RequestMethod.POST)
- public String uploadFile(@ModelAttribute TaskListItemForm taskListItemForm,
- @RequestParam("file") MultipartFile file, HttpServletRequest request) throws UploadTaskListFileException {
+ public String uploadFile(@ModelAttribute TaskListItemForm taskListItemForm, HttpServletRequest request)
+ throws UploadTaskListFileException {
String mode = request.getParameter(AttributeNames.ATTR_MODE);
SessionMap sessionMap = (SessionMap) request.getSession()
.getAttribute(taskListItemForm.getSessionMapID());
request.setAttribute(TaskListConstants.ATTR_SESSION_MAP_ID, sessionMap.getSessionID());
Long sessionId = (Long) sessionMap.get(TaskListConstants.ATTR_TOOL_SESSION_ID);
- file = taskListItemForm.getUploadedFile();
+ MultipartFile file = taskListItemForm.getUploadedFile();
if (file == null || StringUtils.isBlank(file.getName())) {
return "pages/learning/learning";
@@ -565,7 +562,7 @@
String sessionMapID = WebUtil.readStrParam(request, TaskListConstants.ATTR_SESSION_MAP_ID);
if (!validateBeforeFinish(request, sessionMapID)) {
- return "redirect:/";
+ return "pages/learning/learning";
}
HttpSession ss = SessionManager.getSession();
@@ -652,7 +649,7 @@
MultiValueMap errorMap = new LinkedMultiValueMap<>();
if (StringUtils.isBlank(itemForm.getTitle())) {
- errorMap.add("GLOBAL", TaskListConstants.ERROR_MSG_TITLE_BLANK);
+ errorMap.add("GLOBAL", messageService.getMessage("error.resource.item.title.blank"));
}
return errorMap;
}
@@ -671,7 +668,7 @@
// if current user view less than reqired view count number, then just return error message.
if ((minimumNumberTasks - numberCompletedTasks) > 0) {
MultiValueMap errorMap = new LinkedMultiValueMap<>();
- errorMap.add("GLOBAL", "lable.learning.minimum.view.number");
+ errorMap.add("GLOBAL", messageService.getMessage("lable.learning.minimum.view.number"));
request.setAttribute("errorMap", errorMap);
return false;
}
Index: lams_tool_task/web/WEB-INF/tags/Page.tag
===================================================================
diff -u -rb32cbfc76a3cd150823b3696160d5fd4fa6cde84 -rf33abf1a2f52fc5a168127033f927174d83a2124
--- lams_tool_task/web/WEB-INF/tags/Page.tag (.../Page.tag) (revision b32cbfc76a3cd150823b3696160d5fd4fa6cde84)
+++ lams_tool_task/web/WEB-INF/tags/Page.tag (.../Page.tag) (revision f33abf1a2f52fc5a168127033f927174d83a2124)
@@ -4,6 +4,7 @@
<%@ taglib uri="tags-lams" prefix="lams"%>
<%@ attribute name="type" required="true" rtexprvalue="true"%>
+<%@ attribute name="formID" required="false" rtexprvalue="true"%>
<%@ attribute name="style" required="false" rtexprvalue="true"%>
<%@ attribute name="title" required="false" rtexprvalue="true"%>
<%@ attribute name="titleHelpURL" required="false" rtexprvalue="true"%>
@@ -88,8 +89,8 @@
-
-
+
+
${toolForm.toolSessionID}
@@ -434,4 +435,4 @@
-
+
\ No newline at end of file
Index: lams_tool_task/web/WEB-INF/tags/TextSearch.tag
===================================================================
diff -u -r74467b8916b85a9d0376e4c2d8f7deaf4511450c -rf33abf1a2f52fc5a168127033f927174d83a2124
--- lams_tool_task/web/WEB-INF/tags/TextSearch.tag (.../TextSearch.tag) (revision 74467b8916b85a9d0376e4c2d8f7deaf4511450c)
+++ lams_tool_task/web/WEB-INF/tags/TextSearch.tag (.../TextSearch.tag) (revision f33abf1a2f52fc5a168127033f927174d83a2124)
@@ -32,12 +32,11 @@
<%@ tag body-content="scriptless" %>
<%@ taglib uri="tags-core" prefix="c" %>
<%@ taglib uri="tags-fmt" prefix="fmt" %>
+<%@ taglib uri="http://www.springframework.org/tags/form" prefix="form" %>
<%@ taglib uri="tags-lams" prefix="lams" %>
-<%@ taglib uri="http://www.springframework.org/tags/form" prefix="form" %>
<%-- Required attributes --%>
<%@ attribute name="sessionMapID" required="true" rtexprvalue="true" %>
-<%@ attribute name="wrapInFormTag" required="true" rtexprvalue="true" %>
<%-- Optional attributes --%>
<%@ attribute name="action" required="false" rtexprvalue="true" %>
@@ -53,10 +52,10 @@
<%-- Default value for message key --%>
-
+
-
+
@@ -85,52 +84,40 @@
-
-
-
-
-
-
-
-
-
- |
-
-
- |
-
-
-
-
- |
-
-
- |
-
-
-
-
- |
-
-
- |
-
-
-
-
- |
-
-
- |
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+ |
+
+
+ |
+
+
+
+
+ |
+
+
+ |
+
+
+
+
+ |
+
+
+ |
+
+
+
+
+ |
+
+
+ |
+
+
\ No newline at end of file
Index: lams_tool_task/web/WEB-INF/tlds/lams/lams.tld
===================================================================
diff -u -r60d9a173d5590295376322fc3e857ae2dca37717 -rf33abf1a2f52fc5a168127033f927174d83a2124
--- lams_tool_task/web/WEB-INF/tlds/lams/lams.tld (.../lams.tld) (revision 60d9a173d5590295376322fc3e857ae2dca37717)
+++ lams_tool_task/web/WEB-INF/tlds/lams/lams.tld (.../lams.tld) (revision f33abf1a2f52fc5a168127033f927174d83a2124)
@@ -212,192 +212,6 @@
-
- STRUTS-textarea
- org.lamsfoundation.lams.web.tag.MultiLinesTextareaTag
- empty
-
- accesskey
- false
- true
-
-
- alt
- false
- true
-
-
- altKey
- false
- true
-
-
- bundle
- false
- true
-
-
- cols
- false
- true
-
-
- disabled
- false
- true
-
-
- errorKey
- false
- true
-
-
- errorStyle
- false
- true
-
-
- errorStyleClass
- false
- true
-
-
- errorStyleId
- false
- true
-
-
- index
- false
- true
-
-
- indexed
- false
- true
-
-
- name
- false
- true
-
-
- onblur
- false
- true
-
-
- onchange
- false
- true
-
-
- onclick
- false
- true
-
-
- ondblclick
- false
- true
-
-
- onfocus
- false
- true
-
-
- onkeydown
- false
- true
-
-
- onkeypress
- false
- true
-
-
- onkeyup
- false
- true
-
-
- onmousedown
- false
- true
-
-
- onmousemove
- false
- true
-
-
- onmouseout
- false
- true
-
-
- onmouseover
- false
- true
-
-
- onmouseup
- false
- true
-
-
- property
- true
- true
-
-
- readonly
- false
- true
-
-
- rows
- false
- true
-
-
- style
- false
- true
-
-
- styleClass
- false
- true
-
-
- styleId
- false
- true
-
-
- tabindex
- false
- true
-
-
- title
- false
- true
-
-
- titleKey
- false
- true
-
-
- value
- false
- true
-
-
-
Small portrait of a user
User Portrait
Fisheye: Tag f33abf1a2f52fc5a168127033f927174d83a2124 refers to a dead (removed) revision in file `lams_tool_task/web/WEB-INF/validation.xml'.
Fisheye: No comparison available. Pass `N' to diff?
Index: lams_tool_task/web/common/messages.jsp
===================================================================
diff -u -r164c032372fe265498f5492088122cc0e7df6058 -rf33abf1a2f52fc5a168127033f927174d83a2124
--- lams_tool_task/web/common/messages.jsp (.../messages.jsp) (revision 164c032372fe265498f5492088122cc0e7df6058)
+++ lams_tool_task/web/common/messages.jsp (.../messages.jsp) (revision f33abf1a2f52fc5a168127033f927174d83a2124)
@@ -7,11 +7,3 @@
-<%-- Success Messages -
-
-
-
-
-
---%>
-
Index: lams_tool_task/web/pages/authoring/authoring.jsp
===================================================================
diff -u -re4625a3ec2ff39bfe424a857788a54497ff64b7a -rf33abf1a2f52fc5a168127033f927174d83a2124
--- lams_tool_task/web/pages/authoring/authoring.jsp (.../authoring.jsp) (revision e4625a3ec2ff39bfe424a857788a54497ff64b7a)
+++ lams_tool_task/web/pages/authoring/authoring.jsp (.../authoring.jsp) (revision f33abf1a2f52fc5a168127033f927174d83a2124)
@@ -72,7 +72,8 @@
-
+
+
Index: lams_tool_task/web/pages/learning/learning.jsp
===================================================================
diff -u -re4625a3ec2ff39bfe424a857788a54497ff64b7a -rf33abf1a2f52fc5a168127033f927174d83a2124
--- lams_tool_task/web/pages/learning/learning.jsp (.../learning.jsp) (revision e4625a3ec2ff39bfe424a857788a54497ff64b7a)
+++ lams_tool_task/web/pages/learning/learning.jsp (.../learning.jsp) (revision f33abf1a2f52fc5a168127033f927174d83a2124)
@@ -112,7 +112,7 @@
-
+
Index: lams_tool_task/web/pages/learning/parts/addtask.jsp
===================================================================
diff -u -r74467b8916b85a9d0376e4c2d8f7deaf4511450c -rf33abf1a2f52fc5a168127033f927174d83a2124
--- lams_tool_task/web/pages/learning/parts/addtask.jsp (.../addtask.jsp) (revision 74467b8916b85a9d0376e4c2d8f7deaf4511450c)
+++ lams_tool_task/web/pages/learning/parts/addtask.jsp (.../addtask.jsp) (revision f33abf1a2f52fc5a168127033f927174d83a2124)
@@ -28,8 +28,8 @@
-
-
+
+
Index: lams_tool_task/web/pages/learning/parts/notebook.jsp
===================================================================
diff -u -r74467b8916b85a9d0376e4c2d8f7deaf4511450c -rf33abf1a2f52fc5a168127033f927174d83a2124
--- lams_tool_task/web/pages/learning/parts/notebook.jsp (.../notebook.jsp) (revision 74467b8916b85a9d0376e4c2d8f7deaf4511450c)
+++ lams_tool_task/web/pages/learning/parts/notebook.jsp (.../notebook.jsp) (revision f33abf1a2f52fc5a168127033f927174d83a2124)
@@ -22,7 +22,7 @@
-
+
<%@ include file="/common/messages.jsp"%>