Index: 3rdParty_sources/versions.txt
===================================================================
diff -u -r3e7c2afdc86f6b135b1c435ca17f31c8a3f3c841 -r9349bab097150a4a15cf4c6c10b7946400c3fbd0
--- 3rdParty_sources/versions.txt (.../versions.txt) (revision 3e7c2afdc86f6b135b1c435ca17f31c8a3f3c841)
+++ 3rdParty_sources/versions.txt (.../versions.txt) (revision 9349bab097150a4a15cf4c6c10b7946400c3fbd0)
@@ -35,7 +35,7 @@
JSP API 2.3
-MySQL Connector/J 5.1.43
+MySQL Connector/J 5.1.46
oauth 20100527
Index: lams_build/3rdParty.userlibraries
===================================================================
diff -u -r969b1185a18d028b10bb0bd4aa2af6ea93e0f8b5 -r9349bab097150a4a15cf4c6c10b7946400c3fbd0
--- lams_build/3rdParty.userlibraries (.../3rdParty.userlibraries) (revision 969b1185a18d028b10bb0bd4aa2af6ea93e0f8b5)
+++ lams_build/3rdParty.userlibraries (.../3rdParty.userlibraries) (revision 9349bab097150a4a15cf4c6c10b7946400c3fbd0)
@@ -15,7 +15,6 @@
-
@@ -34,5 +33,6 @@
+
Index: lams_build/lib/lams/lams-central.jar
===================================================================
diff -u -r433c3dff4f4c7961e4f90f7d370a399bedaadaf6 -r9349bab097150a4a15cf4c6c10b7946400c3fbd0
Binary files differ
Index: lams_build/lib/lams/lams-gradebook.jar
===================================================================
diff -u -ra949c337adc53b2df9207aa1de6e500281de7c20 -r9349bab097150a4a15cf4c6c10b7946400c3fbd0
Binary files differ
Index: lams_build/lib/lams/lams-learning.jar
===================================================================
diff -u -r83005805dfe5847c8578b56911f7e9f8ce08ff9f -r9349bab097150a4a15cf4c6c10b7946400c3fbd0
Binary files differ
Index: lams_build/lib/lams/lams-monitoring.jar
===================================================================
diff -u -r8daec7e047f7ea8404c6f16218b63a8e855a15b2 -r9349bab097150a4a15cf4c6c10b7946400c3fbd0
Binary files differ
Index: lams_build/lib/lams/lams.jar
===================================================================
diff -u -rbed16653a5d0b482d001200c1532d9f7e1b7f707 -r9349bab097150a4a15cf4c6c10b7946400c3fbd0
Binary files differ
Index: lams_build/liblist.txt
===================================================================
diff -u -r969b1185a18d028b10bb0bd4aa2af6ea93e0f8b5 -r9349bab097150a4a15cf4c6c10b7946400c3fbd0
--- lams_build/liblist.txt (.../liblist.txt) (revision 969b1185a18d028b10bb0bd4aa2af6ea93e0f8b5)
+++ lams_build/liblist.txt (.../liblist.txt) (revision 9349bab097150a4a15cf4c6c10b7946400c3fbd0)
@@ -31,7 +31,7 @@
json-simple json-simple-1.1.1.jar 1.1.1 Apache License 2.0 fangyidong A simple Java toolkit for JSON
-mysql mysql-connector-java-5.1.43-bin.jar 5.1.43 GPL Oracle Java connector for MySQL
+mysql mysql-connector-java-5.1.46-bin.jar 5.1.46 GPL Oracle Java connector for MySQL
odmg odmg-3.0.jar 3.0
Index: lams_central/src/java/org/lamsfoundation/lams/authoring/web/LamsAuthoringFinishController.java
===================================================================
diff -u -r433c3dff4f4c7961e4f90f7d370a399bedaadaf6 -r9349bab097150a4a15cf4c6c10b7946400c3fbd0
--- lams_central/src/java/org/lamsfoundation/lams/authoring/web/LamsAuthoringFinishController.java (.../LamsAuthoringFinishController.java) (revision 433c3dff4f4c7961e4f90f7d370a399bedaadaf6)
+++ lams_central/src/java/org/lamsfoundation/lams/authoring/web/LamsAuthoringFinishController.java (.../LamsAuthoringFinishController.java) (revision 9349bab097150a4a15cf4c6c10b7946400c3fbd0)
@@ -32,14 +32,14 @@
import org.apache.commons.lang.StringUtils;
import org.apache.log4j.Logger;
+import org.lamsfoundation.lams.logevent.service.ILogEventService;
import org.lamsfoundation.lams.tool.IToolVO;
import org.lamsfoundation.lams.tool.ToolAccessMode;
import org.lamsfoundation.lams.tool.ToolContentManager;
import org.lamsfoundation.lams.tool.service.ILamsToolService;
import org.lamsfoundation.lams.util.Configuration;
import org.lamsfoundation.lams.util.ConfigurationKeys;
import org.lamsfoundation.lams.util.WebUtil;
-import org.lamsfoundation.lams.util.audit.IAuditService;
import org.lamsfoundation.lams.web.util.AttributeNames;
import org.springframework.beans.factory.NoSuchBeanDefinitionException;
import org.springframework.context.ApplicationContext;
@@ -66,7 +66,7 @@
private static final String RE_EDIT_URL = "reEditUrl";
- private static IAuditService auditService;
+ private static ILogEventService logEventService;
/**
* Action method, will handle save/cancel action.
@@ -112,7 +112,7 @@
//audit log content has been finished being edited
if (StringUtils.equals(action, DEFINE_LATER_ACTION)) {
- getAuditService(applicationContext).logFinishEditingActivityInMonitor(toolContentId);
+ getLogEventService(applicationContext).logFinishEditingActivityInMonitor(toolContentId);
}
//reset defineLater task
@@ -122,7 +122,7 @@
ToolContentManager contentManager = (ToolContentManager) findToolService(applicationContext, signature);
contentManager.resetDefineLater(toolContentId);
- getAuditService(applicationContext).logCancelEditingActivityInMonitor(toolContentId);
+ getLogEventService(applicationContext).logCancelEditingActivityInMonitor(toolContentId);
}
}
@@ -157,13 +157,13 @@
}
/**
- * Get AuditService bean
+ * Get LogEventService bean
*/
- private IAuditService getAuditService(ApplicationContext applicationContext) {
- if (auditService == null) {
- auditService = (IAuditService) applicationContext.getBean("auditService");
+ private ILogEventService getLogEventService(ApplicationContext applicationContext) {
+ if (logEventService == null) {
+ logEventService = (ILogEventService) applicationContext.getBean("logEventService");
}
- return auditService;
+ return logEventService;
}
/**
Index: lams_learning/src/java/org/lamsfoundation/lams/learning/web/servlet/RepopulateProgressMarksServlet.java
===================================================================
diff -u -rfcc5eca8a605afdc9e927366827553a7862000cd -r9349bab097150a4a15cf4c6c10b7946400c3fbd0
--- lams_learning/src/java/org/lamsfoundation/lams/learning/web/servlet/RepopulateProgressMarksServlet.java (.../RepopulateProgressMarksServlet.java) (revision fcc5eca8a605afdc9e927366827553a7862000cd)
+++ lams_learning/src/java/org/lamsfoundation/lams/learning/web/servlet/RepopulateProgressMarksServlet.java (.../RepopulateProgressMarksServlet.java) (revision 9349bab097150a4a15cf4c6c10b7946400c3fbd0)
@@ -74,9 +74,10 @@
@Override
@SuppressWarnings("unchecked")
- protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
+ protected void doGet(HttpServletRequest request, HttpServletResponse response)
+ throws ServletException, IOException {
- String header="";
+ String header = "";
StringBuilder errorBuilder = new StringBuilder("");
StringBuilder auditLogBuilder = new StringBuilder("");
UserDTO userDTO = null;
@@ -98,10 +99,10 @@
return;
}
- header = new StringBuilder(
- "Learner progress and gradebook marks to be repopulated for lesson ").append(lessonId).append(" ")
- .append(lesson.getLessonName())
- .append(".\n----------------------------------------------------------------------------------\n\n").toString();
+ header = new StringBuilder("Learner progress and gradebook marks to be repopulated for lesson ")
+ .append(lessonId).append(" ").append(lesson.getLessonName())
+ .append(".\n----------------------------------------------------------------------------------\n\n")
+ .toString();
ActivitiesToCheckProcessor processor = new ActivitiesToCheckProcessor(lesson.getLearningDesign(),
learnerService.getActivityDAO());
@@ -115,7 +116,7 @@
auditLogBuilder.append("\n\n");
if (restrictToLearnerId == null) {
- Set progresses = (Set) lesson.getLearnerProgresses();
+ Set progresses = lesson.getLearnerProgresses();
for (LearnerProgress learnerProgress : progresses) {
processLearner(errorBuilder, auditLogBuilder, lesson, activityList, learnerProgress, gradebookAll);
}
@@ -139,9 +140,11 @@
String errors = errorBuilder.append("\n").toString();
String msg;
if (errors.length() > 1) {
- msg = new StringBuilder(header).append("Errors occured. Some data may be been updated.\n").append(errors).append(auditLogBuilder.toString()).toString();
+ msg = new StringBuilder(header).append("Errors occured. Some data may be been updated.\n").append(errors)
+ .append(auditLogBuilder.toString()).toString();
} else {
- msg = new StringBuilder(header).append("Successful run, no errors\n").append(auditLogBuilder.toString()).toString();
+ msg = new StringBuilder(header).append("Successful run, no errors\n").append(auditLogBuilder.toString())
+ .toString();
}
logEventService.logEvent(LogEvent.TYPE_MARK_UPDATED, userDTO != null ? userDTO.getUserID() : null, null, lessonId, null, msg);
out.println(msg);
@@ -151,23 +154,25 @@
private void processLearner(StringBuilder errorBuilder, StringBuilder auditLogBuilder, Lesson lesson,
ArrayList activityList, LearnerProgress learnerProgress, boolean updateGradebookForAll) {
try {
- String messages[] = learnerService.recalcProgressForLearner(lesson, activityList, learnerProgress, updateGradebookForAll);
+ String messages[] = learnerService.recalcProgressForLearner(lesson, activityList, learnerProgress,
+ updateGradebookForAll);
auditLogBuilder.append(messages[0]);
errorBuilder.append(messages[1]);
- } catch ( Throwable e ) {
- log.error("Error thrown while processing "+learnerProgress.getUser().getLogin(), e);
+ } catch (Throwable e) {
+ log.error("Error thrown while processing " + learnerProgress.getUser().getLogin(), e);
String msg = new StringBuilder("Error occured while processing user ")
- .append(learnerProgress.getUser().getLogin()).append(" ").append(learnerProgress.getUser().getFullName()).append(". Proceeding entries in log for this user may or may not have worked. Error was ")
- .append(e.getMessage()).append("\n")
- .toString();
+ .append(learnerProgress.getUser().getLogin()).append(" ")
+ .append(learnerProgress.getUser().getFullName())
+ .append(". Proceeding entries in log for this user may or may not have worked. Error was ")
+ .append(e.getMessage()).append("\n").toString();
auditLogBuilder.append(msg);
errorBuilder.append(msg);
}
}
@Override
- protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException,
- IOException {
+ protected void doPost(HttpServletRequest request, HttpServletResponse response)
+ throws ServletException, IOException {
doGet(request, response);
}
Index: lams_tool_vote/src/java/org/lamsfoundation/lams/tool/vote/service/VoteService.java
===================================================================
diff -u -r433c3dff4f4c7961e4f90f7d370a399bedaadaf6 -r9349bab097150a4a15cf4c6c10b7946400c3fbd0
--- lams_tool_vote/src/java/org/lamsfoundation/lams/tool/vote/service/VoteService.java (.../VoteService.java) (revision 433c3dff4f4c7961e4f90f7d370a399bedaadaf6)
+++ lams_tool_vote/src/java/org/lamsfoundation/lams/tool/vote/service/VoteService.java (.../VoteService.java) (revision 9349bab097150a4a15cf4c6c10b7946400c3fbd0)
@@ -43,13 +43,15 @@
import org.apache.commons.lang.StringUtils;
import org.apache.log4j.Logger;
+import org.lamsfoundation.lams.confidencelevel.ConfidenceLevelDTO;
import org.lamsfoundation.lams.contentrepository.client.IToolContentHandler;
import org.lamsfoundation.lams.learning.service.ILearnerService;
import org.lamsfoundation.lams.learningdesign.DataFlowObject;
import org.lamsfoundation.lams.learningdesign.dao.IDataFlowDAO;
import org.lamsfoundation.lams.learningdesign.service.ExportToolContentException;
import org.lamsfoundation.lams.learningdesign.service.IExportToolContentService;
import org.lamsfoundation.lams.learningdesign.service.ImportToolContentException;
+import org.lamsfoundation.lams.logevent.service.ILogEventService;
import org.lamsfoundation.lams.notebook.model.NotebookEntry;
import org.lamsfoundation.lams.notebook.service.CoreNotebookConstants;
import org.lamsfoundation.lams.notebook.service.ICoreNotebookService;
@@ -96,7 +98,6 @@
import org.lamsfoundation.lams.usermanagement.service.IUserManagementService;
import org.lamsfoundation.lams.util.JsonUtil;
import org.lamsfoundation.lams.util.MessageService;
-import org.lamsfoundation.lams.util.audit.IAuditService;
import org.lamsfoundation.lams.web.session.SessionManager;
import org.lamsfoundation.lams.web.util.AttributeNames;
import org.springframework.dao.DataAccessException;
@@ -122,7 +123,7 @@
private IUserManagementService userManagementService;
private ILearnerService learnerService;
- private IAuditService auditService;
+ private ILogEventService logEventService;
private ILamsToolService toolService;
private IExportToolContentService exportContentService;
@@ -1163,17 +1164,30 @@
*/
@Override
public void hideOpenVote(VoteUsrAttempt voteUsrAttempt) {
- auditService.logHideEntry(VoteAppConstants.MY_SIGNATURE, voteUsrAttempt.getQueUsrId(),
- voteUsrAttempt.getVoteQueUsr().getUsername(), voteUsrAttempt.getUserEntry());
+ Long toolContentId = null;
+ if (voteUsrAttempt.getVoteQueContent() != null && voteUsrAttempt.getVoteQueContent().getMcContent() != null) {
+ toolContentId = voteUsrAttempt.getVoteQueContent().getMcContent().getVoteContentId();
+ }
+
+ logEventService.logHideLearnerContent(voteUsrAttempt.getVoteQueUsr().getQueUsrId(),
+ voteUsrAttempt.getVoteQueUsr().getUsername(), toolContentId,
+ voteUsrAttempt.getUserEntry());
+
}
/**
* logs showing of a user entered vote
*/
@Override
public void showOpenVote(VoteUsrAttempt voteUsrAttempt) {
- auditService.logShowEntry(VoteAppConstants.MY_SIGNATURE, voteUsrAttempt.getQueUsrId(),
- voteUsrAttempt.getVoteQueUsr().getUsername(), voteUsrAttempt.getUserEntry());
+ Long toolContentId = null;
+ if (voteUsrAttempt.getVoteQueContent() != null && voteUsrAttempt.getVoteQueContent().getMcContent() != null) {
+ toolContentId = voteUsrAttempt.getVoteQueContent().getMcContent().getVoteContentId();
+ }
+
+ logEventService.logShowLearnerContent(voteUsrAttempt.getVoteQueUsr().getQueUsrId(),
+ voteUsrAttempt.getVoteQueUsr().getUsername(), toolContentId,
+ voteUsrAttempt.getUserEntry());
}
@Override
@@ -1611,6 +1625,11 @@
}
@Override
+ public List getConfidenceLevels(Long toolSessionId) {
+ return null;
+ }
+
+ @Override
public void forceCompleteUser(Long toolSessionId, User user) {
Long userId = user.getUserId().longValue();
@@ -1663,6 +1682,11 @@
}
@Override
+ public void updateEntry(NotebookEntry notebookEntry) {
+ coreNotebookService.updateEntry(notebookEntry);
+ }
+
+ @Override
public List getAllQuestionsSorted(final long voteContentId) {
return voteQueContentDAO.getAllQuestionsSorted(voteContentId);
}
@@ -1848,18 +1872,18 @@
}
/**
- * @return Returns the auditService.
+ * @return Returns the logEventService.
*/
- public IAuditService getAuditService() {
- return auditService;
+ public ILogEventService getLogEventService() {
+ return logEventService;
}
/**
- * @param auditService
- * The auditService to set.
+ * @param logEventService
+ * The logEventService to set.
*/
- public void setAuditService(IAuditService auditService) {
- this.auditService = auditService;
+ public void setLogEventService(ILogEventService logEventService) {
+ this.logEventService = logEventService;
}
public IExportToolContentService getExportContentService() {
Index: lams_tool_vote/src/java/org/lamsfoundation/lams/tool/vote/web/action/LearningController.java
===================================================================
diff -u -r433c3dff4f4c7961e4f90f7d370a399bedaadaf6 -r9349bab097150a4a15cf4c6c10b7946400c3fbd0
--- lams_tool_vote/src/java/org/lamsfoundation/lams/tool/vote/web/action/LearningController.java (.../LearningController.java) (revision 433c3dff4f4c7961e4f90f7d370a399bedaadaf6)
+++ lams_tool_vote/src/java/org/lamsfoundation/lams/tool/vote/web/action/LearningController.java (.../LearningController.java) (revision 9349bab097150a4a15cf4c6c10b7946400c3fbd0)
@@ -511,20 +511,31 @@
LearningController.repopulateRequestParameters(request, voteLearningForm);
- String toolSessionID = request.getParameter(AttributeNames.PARAM_TOOL_SESSION_ID);
- logger.info("Tool Session Id" + toolSessionID);
- voteLearningForm.setToolSessionID(toolSessionID);
+ String toolSessionIDString = request.getParameter(AttributeNames.PARAM_TOOL_SESSION_ID);
+ voteLearningForm.setToolSessionID(toolSessionIDString);
+ Long toolSessionID = new Long(toolSessionIDString);
- String userID = request.getParameter("userID");
- logger.info("User Id:" + userID);
- voteLearningForm.setUserID(userID);
+ String userIDString = request.getParameter("userID");
+ voteLearningForm.setUserID(userIDString);
+ Integer userID = new Integer(userIDString);
String reflectionEntry = request.getParameter(ENTRY_TEXT);
- logger.info("reflection entry: " + reflectionEntry);
- voteService.createNotebookEntry(new Long(toolSessionID), CoreNotebookConstants.NOTEBOOK_TOOL, MY_SIGNATURE,
- new Integer(userID), reflectionEntry);
+ // check for existing notebook entry
+ NotebookEntry entry = voteService.getEntry(toolSessionID, CoreNotebookConstants.NOTEBOOK_TOOL,
+ MY_SIGNATURE, userID);
+ if (entry == null) {
+ // create new entry
+ voteService.createNotebookEntry(toolSessionID, CoreNotebookConstants.NOTEBOOK_TOOL, MY_SIGNATURE,
+ userID, reflectionEntry);
+ } else {
+ // update existing entry
+ entry.setEntry(reflectionEntry);
+ entry.setLastModified(new Date());
+ voteService.updateEntry(entry);
+ }
+
voteLearningForm.resetUserActions(); /* resets all except submitAnswersContent */
return learnerFinished(voteLearningForm, request);
}
Index: lams_tool_vote/src/java/org/lamsfoundation/lams/tool/vote/web/action/MonitoringController.java
===================================================================
diff -u -r433c3dff4f4c7961e4f90f7d370a399bedaadaf6 -r9349bab097150a4a15cf4c6c10b7946400c3fbd0
--- lams_tool_vote/src/java/org/lamsfoundation/lams/tool/vote/web/action/MonitoringController.java (.../MonitoringController.java) (revision 433c3dff4f4c7961e4f90f7d370a399bedaadaf6)
+++ lams_tool_vote/src/java/org/lamsfoundation/lams/tool/vote/web/action/MonitoringController.java (.../MonitoringController.java) (revision 9349bab097150a4a15cf4c6c10b7946400c3fbd0)
@@ -34,7 +34,6 @@
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
-import org.apache.commons.lang.StringEscapeUtils;
import org.apache.log4j.Logger;
import org.lamsfoundation.lams.tool.vote.VoteAppConstants;
import org.lamsfoundation.lams.tool.vote.dto.OpenTextAnswerDTO;
@@ -61,6 +60,7 @@
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
+import org.springframework.web.util.HtmlUtils;
import com.fasterxml.jackson.databind.node.ArrayNode;
import com.fasterxml.jackson.databind.node.JsonNodeFactory;
@@ -173,7 +173,7 @@
ObjectNode responseRow = JsonNodeFactory.instance.objectNode();
responseRow.put(VoteAppConstants.ATTR_USER_ID, (Integer) userAndAnswers[0]);
- responseRow.put(VoteAppConstants.ATTR_USER_NAME, StringEscapeUtils.escapeHtml((String) userAndAnswers[2]));
+ responseRow.put(VoteAppConstants.ATTR_USER_NAME, HtmlUtils.htmlEscape((String) userAndAnswers[2]));
responseRow.put(VoteAppConstants.ATTR_ATTEMPT_TIME,
DateUtil.convertToStringForJSON((Date) userAndAnswers[3], request.getLocale()));
responseRow.put(VoteAppConstants.ATTR_ATTEMPT_TIME_TIMEAGO,
@@ -213,10 +213,9 @@
for (Object[] userAndReflection : users) {
ObjectNode responseRow = JsonNodeFactory.instance.objectNode();
responseRow.put(VoteAppConstants.ATTR_USER_ID, (Integer) userAndReflection[0]);
- responseRow.put(VoteAppConstants.ATTR_USER_NAME,
- StringEscapeUtils.escapeHtml((String) userAndReflection[2]));
+ responseRow.put(VoteAppConstants.ATTR_USER_NAME, HtmlUtils.htmlEscape((String) userAndReflection[2]));
if (userAndReflection.length > 3 && userAndReflection[3] != null) {
- String reflection = StringEscapeUtils.escapeHtml((String) userAndReflection[3]);
+ String reflection = HtmlUtils.htmlEscape((String) userAndReflection[3]);
responseRow.put(VoteAppConstants.NOTEBOOK, reflection.replaceAll("\n", "
"));
}
if (userAndReflection.length > 4) {
@@ -285,11 +284,10 @@
ObjectNode responseRow = JsonNodeFactory.instance.objectNode();
responseRow.put("uid", userAndAttempt.getUserUid());
- responseRow.put(VoteAppConstants.ATTR_USER_NAME,
- StringEscapeUtils.escapeHtml(userAndAttempt.getFullName()));
+ responseRow.put(VoteAppConstants.ATTR_USER_NAME, HtmlUtils.htmlEscape(userAndAttempt.getFullName()));
responseRow.put("userEntryUid", userAndAttempt.getUserEntryUid());
- responseRow.put("userEntry", StringEscapeUtils.escapeHtml(userAndAttempt.getUserEntry()));
+ responseRow.put("userEntry", HtmlUtils.htmlEscape(userAndAttempt.getUserEntry()));
responseRow.put(VoteAppConstants.ATTR_ATTEMPT_TIME,
DateUtil.convertToStringForJSON(userAndAttempt.getAttemptTime(), request.getLocale()));
responseRow.put(VoteAppConstants.ATTR_ATTEMPT_TIME_TIMEAGO,
Index: lams_tool_vote/web/WEB-INF/tags/CommentsAuthor.tag
===================================================================
diff -u -r500ae45f4243aa718eac7436bc903b4f137a3aa7 -r9349bab097150a4a15cf4c6c10b7946400c3fbd0
--- lams_tool_vote/web/WEB-INF/tags/CommentsAuthor.tag (.../CommentsAuthor.tag) (revision 500ae45f4243aa718eac7436bc903b4f137a3aa7)
+++ lams_tool_vote/web/WEB-INF/tags/CommentsAuthor.tag (.../CommentsAuthor.tag) (revision 9349bab097150a4a15cf4c6c10b7946400c3fbd0)
@@ -1,7 +1,7 @@
<%@ taglib uri="tags-core" prefix="c"%>
-<%@ taglib uri="tags-html" prefix="html"%>
<%@ taglib uri="tags-fmt" prefix="fmt"%>
<%@ taglib uri="tags-lams" prefix="lams"%>
+<%@ taglib uri="http://www.springframework.org/tags/form" prefix="form" %>
<%@ attribute name="allowCommentsVariableName" required="false" rtexprvalue="true"%>
<%@ attribute name="allowCommentLabelKey" required="false" rtexprvalue="true"%>
@@ -39,20 +39,18 @@
-
-
-
-
+
+