Index: lams_tool_forum/build.properties =================================================================== RCS file: /usr/local/cvsroot/lams_tool_forum/build.properties,v diff -u -r1.24.8.2 -r1.24.8.3 --- lams_tool_forum/build.properties 27 Oct 2010 15:18:44 -0000 1.24.8.2 +++ lams_tool_forum/build.properties 3 Mar 2011 19:43:35 -0000 1.24.8.3 @@ -9,7 +9,7 @@ ### project properties ### signature=lafrum11 project.displayname = lams forum tool -tool.version=20101025 +tool.version=20110228 # hide tool option hideTool=false Index: lams_tool_forum/conf/hibernate/mappings/org/lamsfoundation/lams/tool/forum/persistence/Forum.hbm.xml =================================================================== RCS file: /usr/local/cvsroot/lams_tool_forum/conf/hibernate/mappings/org/lamsfoundation/lams/tool/forum/persistence/Attic/Forum.hbm.xml,v diff -u -r1.19.10.1 -r1.19.10.2 --- lams_tool_forum/conf/hibernate/mappings/org/lamsfoundation/lams/tool/forum/persistence/Forum.hbm.xml 27 Oct 2010 15:18:44 -0000 1.19.10.1 +++ lams_tool_forum/conf/hibernate/mappings/org/lamsfoundation/lams/tool/forum/persistence/Forum.hbm.xml 3 Mar 2011 19:43:35 -0000 1.19.10.2 @@ -221,6 +221,14 @@ /> + + + + + + + + + + @@ -91,6 +97,9 @@ + + + @@ -160,6 +169,7 @@ PROPAGATION_REQUIRED,-java.lang.Exception PROPAGATION_REQUIRED,-java.lang.Exception + PROPAGATION_REQUIRED,-java.lang.Exception PROPAGATION_REQUIRED,-java.lang.Exception PROPAGATION_REQUIRED,-java.lang.Exception Fisheye: Tag 1.1 refers to a dead (removed) revision in file `lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/dbupdates/patch20110228_updateTo236.sql'. Fisheye: No comparison available. Pass `N' to diff? Fisheye: Tag 1.1 refers to a dead (removed) revision in file `lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/dto/AverageRatingDTO.java'. Fisheye: No comparison available. Pass `N' to diff? Index: lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/dto/MessageDTO.java =================================================================== RCS file: /usr/local/cvsroot/lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/dto/MessageDTO.java,v diff -u -r1.18 -r1.18.8.1 --- lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/dto/MessageDTO.java 2 Feb 2009 03:21:24 -0000 1.18 +++ lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/dto/MessageDTO.java 3 Mar 2011 19:41:21 -0000 1.18.8.1 @@ -46,6 +46,10 @@ private String comment; private boolean released; + //rating fields + private String averageRating; + private String numberOfVotes; + // number of posts the learner has made in this topic. // used when this message is a root topic. private int numOfPosts; @@ -181,6 +185,22 @@ public void setReleased(boolean isReleased) { this.released = isReleased; } + + public String getAverageRating() { + return averageRating; + } + + public void setAverageRating(String averageRating) { + this.averageRating = averageRating; + } + + public String getNumberOfVotes() { + return numberOfVotes; + } + + public void setNumberOfVotes(String numberOfVotes) { + this.numberOfVotes = numberOfVotes; + } public String getAttachmentLocalUrl() { return attachmentLocalUrl; Index: lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/persistence/Forum.hbm.xml =================================================================== RCS file: /usr/local/cvsroot/lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/persistence/Attic/Forum.hbm.xml,v diff -u -r1.19.10.1 -r1.19.10.2 --- lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/persistence/Forum.hbm.xml 27 Oct 2010 15:18:43 -0000 1.19.10.1 +++ lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/persistence/Forum.hbm.xml 3 Mar 2011 19:41:21 -0000 1.19.10.2 @@ -221,6 +221,14 @@ /> + + map) { Iterator iter; MessageSeq msgSeq; + Message message; List msgDtoList = new ArrayList(); iter = map.entrySet().iterator(); while (iter.hasNext()) { Map.Entry entry = (Entry) iter.next(); msgSeq = (MessageSeq) entry.getKey(); - MessageDTO dto = MessageDTO.getMessageDTO((Message) entry.getValue()); + message = (Message) entry.getValue(); + MessageDTO dto = MessageDTO.getMessageDTO(message); dto.setLevel(msgSeq.getMessageLevel()); + + //set averageRating + if (message.getForum().isAllowRateMessages()) { + AverageRatingDTO averageRating = getAverageRatingDTOByMessage(message.getUid()); + dto.setAverageRating(averageRating.getRating()); + dto.setNumberOfVotes(averageRating.getNumberOfVotes()); + } + msgDtoList.add(dto); } return msgDtoList; @@ -1038,6 +1075,7 @@ toolContentObj.setAllowNewTopic(Boolean.TRUE); toolContentObj.setAllowRichEditor(Boolean.FALSE); toolContentObj.setAllowUpload(Boolean.TRUE); // this is the default value + toolContentObj.setAllowRateMessages(Boolean.FALSE); // this is the default value toolContentObj.setContentId(toolContentId); toolContentObj.setContentInUse(Boolean.FALSE); toolContentObj.setCreated(now); @@ -1230,7 +1268,15 @@ public void setMessageSeqDao(MessageSeqDao messageSeqDao) { this.messageSeqDao = messageSeqDao; } + + public MessageRatingDAO getMessageRatingDao() { + return messageRatingDao; + } + public void setMessageRatingDao(MessageRatingDAO messageRatingDao) { + this.messageRatingDao = messageRatingDao; + } + public ForumToolSessionDao getForumToolSessionDao() { return forumToolSessionDao; } Index: lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/service/IForumService.java =================================================================== RCS file: /usr/local/cvsroot/lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/service/IForumService.java,v diff -u -r1.44.4.2.4.2 -r1.44.4.2.4.3 --- lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/service/IForumService.java 27 Oct 2010 15:18:44 -0000 1.44.4.2.4.2 +++ lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/service/IForumService.java 3 Mar 2011 19:41:21 -0000 1.44.4.2.4.3 @@ -31,6 +31,7 @@ import org.apache.struts.upload.FormFile; import org.lamsfoundation.lams.events.IEventNotificationService; import org.lamsfoundation.lams.notebook.model.NotebookEntry; +import org.lamsfoundation.lams.tool.forum.dto.AverageRatingDTO; import org.lamsfoundation.lams.tool.forum.dto.MessageDTO; import org.lamsfoundation.lams.tool.forum.persistence.Attachment; import org.lamsfoundation.lams.tool.forum.persistence.Forum; @@ -433,4 +434,8 @@ public void deleteCondition(ForumCondition condition) throws PersistenceException; void sendNotificationsOnNewPosting(Long forumId, Long sessionId, Message message); + + AverageRatingDTO rateMessage(Long messageId, Long userId, Long toolSessionID, float rating); + + AverageRatingDTO getAverageRatingDTOByMessage(Long responseId); } Index: lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/util/ForumConstants.java =================================================================== RCS file: /usr/local/cvsroot/lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/util/ForumConstants.java,v diff -u -r1.52.4.1.2.1 -r1.52.4.1.2.2 --- lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/util/ForumConstants.java 19 Nov 2010 19:56:13 -0000 1.52.4.1.2.1 +++ lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/util/ForumConstants.java 3 Mar 2011 19:41:21 -0000 1.52.4.1.2.2 @@ -76,6 +76,8 @@ public static final String ATTR_ALLOW_NEW_TOPICS = "allowNewTopics"; public static final String ATTR_ALLOW_RICH_EDITOR = "allowRichEditor"; + + public static final String ATTR_ALLOW_RATE_MESSAGES = "allowRateMessages"; public static final String ATTR_LIMITED_CHARS = "limitedChars"; Index: lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/web/actions/LearningAction.java =================================================================== RCS file: /usr/local/cvsroot/lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/web/actions/LearningAction.java,v diff -u -r1.65.8.3 -r1.65.8.4 --- lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/web/actions/LearningAction.java 6 Feb 2011 11:15:51 -0000 1.65.8.3 +++ lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/web/actions/LearningAction.java 3 Mar 2011 19:41:21 -0000 1.65.8.4 @@ -49,13 +49,16 @@ import org.apache.struts.action.ActionMessage; import org.apache.struts.action.ActionMessages; import org.hibernate.Session; +import org.json.JSONException; +import org.json.JSONObject; import org.lamsfoundation.lams.events.IEventNotificationService; import org.lamsfoundation.lams.notebook.model.NotebookEntry; import org.lamsfoundation.lams.notebook.service.CoreNotebookConstants; import org.lamsfoundation.lams.tool.ToolAccessMode; import org.lamsfoundation.lams.tool.ToolSessionManager; import org.lamsfoundation.lams.tool.exception.DataMissingException; import org.lamsfoundation.lams.tool.exception.ToolException; +import org.lamsfoundation.lams.tool.forum.dto.AverageRatingDTO; import org.lamsfoundation.lams.tool.forum.dto.MessageDTO; import org.lamsfoundation.lams.tool.forum.persistence.Attachment; import org.lamsfoundation.lams.tool.forum.persistence.Forum; @@ -129,6 +132,9 @@ if (param.equals("updateMessageHideFlag")) { return updateMessageHideFlag(mapping, form, request, response); } + if (param.equals("rateMessage")) { + return rateMessage(mapping, form, request, response); + } //================ Reflection ======================= if (param.equals("newReflection")) { @@ -211,6 +217,7 @@ sessionMap.put(ForumConstants.ATTR_USER_FINISHED, forumUser.isSessionFinished()); sessionMap.put(ForumConstants.ATTR_ALLOW_EDIT, forum.isAllowEdit()); sessionMap.put(ForumConstants.ATTR_ALLOW_UPLOAD, forum.isAllowUpload()); + sessionMap.put(ForumConstants.ATTR_ALLOW_RATE_MESSAGES, forum.isAllowRateMessages()); sessionMap.put(ForumConstants.ATTR_ALLOW_NEW_TOPICS, forum.isAllowNewTopic()); sessionMap.put(ForumConstants.ATTR_ALLOW_RICH_EDITOR, allowRichEditor); sessionMap.put(ForumConstants.ATTR_LIMITED_CHARS, new Integer(allowNumber)); @@ -895,7 +902,41 @@ return mapping.findForward("success"); } + + /** + * Rates postings submitted by other learners. + * + * @param mapping + * @param form + * @param request + * @param response + * @return + * @throws JSONException + * @throws IOException + * @throws ServletException + * @throws ToolException + */ + public ActionForward rateMessage(ActionMapping mapping, ActionForm form, HttpServletRequest request, + HttpServletResponse response) throws JSONException, IOException { + forumService = getForumManager(); + + float rating = Float.parseFloat((String) request.getParameter("rate")); + Long responseId = WebUtil.readLongParam(request, "idBox"); + Long toolSessionID = WebUtil.readLongParam(request, AttributeNames.PARAM_TOOL_SESSION_ID); + UserDTO user = (UserDTO) SessionManager.getSession().getAttribute(AttributeNames.USER); + Long userId = new Long(user.getUserID().intValue()); + + AverageRatingDTO averageRatingDTO = forumService.rateMessage(responseId, userId, toolSessionID, rating); + + JSONObject JSONObject = new JSONObject(); + JSONObject.put("averageRating", averageRatingDTO.getRating()); + JSONObject.put("numberOfVotes", averageRatingDTO.getNumberOfVotes()); + response.setContentType("application/x-json"); + response.getWriter().print(JSONObject); + return null; + } + // ========================================================================================== // Utility methods // ========================================================================================== Index: lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/web/forms/ForumForm.java =================================================================== RCS file: /usr/local/cvsroot/lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/web/forms/ForumForm.java,v diff -u -r1.17 -r1.17.12.1 --- lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/web/forms/ForumForm.java 17 Sep 2006 06:22:30 -0000 1.17 +++ lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/web/forms/ForumForm.java 3 Mar 2011 19:41:21 -0000 1.17.12.1 @@ -118,6 +118,7 @@ forum.setLockWhenFinished(false); forum.setAllowNewTopic(false); forum.setAllowUpload(false); + forum.setAllowRateMessages(false); forum.setReflectOnActivity(false); } //-------------------------get/set methods---------------- Index: lams_tool_forum/web/WEB-INF/struts-config.xml =================================================================== RCS file: /usr/local/cvsroot/lams_tool_forum/web/WEB-INF/Attic/struts-config.xml,v diff -u -r1.54.8.1 -r1.54.8.2 --- lams_tool_forum/web/WEB-INF/struts-config.xml 1 Apr 2010 17:08:32 -0000 1.54.8.1 +++ lams_tool_forum/web/WEB-INF/struts-config.xml 3 Mar 2011 19:43:34 -0000 1.54.8.2 @@ -317,6 +317,10 @@ scope="request"> + + - - - - + Index: lams_tool_forum/web/images/bg_jRatingInfos.png =================================================================== RCS file: /usr/local/cvsroot/lams_tool_forum/web/images/Attic/bg_jRatingInfos.png,v diff -u -r1.1 -r1.1.2.1 Binary files differ Index: lams_tool_forum/web/images/small.png =================================================================== RCS file: /usr/local/cvsroot/lams_tool_forum/web/images/Attic/small.png,v diff -u -r1.1 -r1.1.2.1 Binary files differ Index: lams_tool_forum/web/images/stars.png =================================================================== RCS file: /usr/local/cvsroot/lams_tool_forum/web/images/Attic/stars.png,v diff -u -r1.1 -r1.1.2.1 Binary files differ Fisheye: Tag 1.1 refers to a dead (removed) revision in file `lams_tool_forum/web/includes/css/jRating.jquery.css'. Fisheye: No comparison available. Pass `N' to diff? Fisheye: Tag 1.1 refers to a dead (removed) revision in file `lams_tool_forum/web/includes/css/ratingStars.css'. Fisheye: No comparison available. Pass `N' to diff? Fisheye: Tag 1.1 refers to a dead (removed) revision in file `lams_tool_forum/web/includes/javascript/jRating.jquery.js'. Fisheye: No comparison available. Pass `N' to diff? Fisheye: Tag 1.1 refers to a dead (removed) revision in file `lams_tool_forum/web/includes/javascript/jquery.js'. Fisheye: No comparison available. Pass `N' to diff? Index: lams_tool_forum/web/jsps/authoring/advance.jsp =================================================================== RCS file: /usr/local/cvsroot/lams_tool_forum/web/jsps/authoring/advance.jsp,v diff -u -r1.24.10.2 -r1.24.10.3 --- lams_tool_forum/web/jsps/authoring/advance.jsp 27 Oct 2010 15:18:44 -0000 1.24.10.2 +++ lams_tool_forum/web/jsps/authoring/advance.jsp 3 Mar 2011 19:43:34 -0000 1.24.10.3 @@ -23,6 +23,15 @@

+ + + +

+ +

Index: lams_tool_forum/web/jsps/learning/viewtopic.jsp =================================================================== RCS file: /usr/local/cvsroot/lams_tool_forum/web/jsps/learning/viewtopic.jsp,v diff -u -r1.17.6.1.4.2 -r1.17.6.1.4.3 --- lams_tool_forum/web/jsps/learning/viewtopic.jsp 1 Apr 2010 17:08:32 -0000 1.17.6.1.4.2 +++ lams_tool_forum/web/jsps/learning/viewtopic.jsp 3 Mar 2011 19:43:35 -0000 1.17.6.1.4.3 @@ -1,92 +1,177 @@ + + <%@ include file="/common/taglibs.jsp"%> + + + + + + + - + + + <fmt:message key="activity.title" /> + + + + + + + + + + + + + + + + + + <%@ include file="/common/fckeditorheader.jsp"%> + + + + + + + + + +

+

+ ${sessionMap.title} +

+ +
+
+ + + + + + +
+

+ +

+ +
+ + + + +
+ + + + + + +
+
+ +
+ + + + + +
+
+ +
+ + + + + +
+
+
+
+
+ + <%@ include file="message/topicview.jsp"%> + + + +
+ +
+ + + + + + +
+ + + +
+
-
+ + -

- ${sessionMap.title} -

-
-
- - - - - - -
-

- -

-
- - - -
- - - - - - -
-
- -
- - - - - -
-
- -
- - - - - -
-
-
-
-
- - <%@ include file="message/topicview.jsp"%> - - -
-
- - - - - - -
- -
-
+ + + + + Index: lams_tool_forum/web/jsps/learning/message/topicview.jsp =================================================================== RCS file: /usr/local/cvsroot/lams_tool_forum/web/jsps/learning/message/topicview.jsp,v diff -u -r1.32 -r1.32.8.1 --- lams_tool_forum/web/jsps/learning/message/topicview.jsp 16 Dec 2008 04:09:33 -0000 1.32 +++ lams_tool_forum/web/jsps/learning/message/topicview.jsp 3 Mar 2011 19:43:34 -0000 1.32.8.1 @@ -96,16 +96,26 @@
+ + + + <%@ include file="/jsps/learning/rating/ratingStarsDisabled.jsp"%> + + + <%@ include file="/jsps/learning/rating/ratingStars.jsp"%> + + + - + @@ -139,7 +149,7 @@ - + Fisheye: Tag 1.1 refers to a dead (removed) revision in file `lams_tool_forum/web/jsps/learning/rating/ratingStars.jsp'. Fisheye: No comparison available. Pass `N' to diff? Fisheye: Tag 1.1 refers to a dead (removed) revision in file `lams_tool_forum/web/jsps/learning/rating/ratingStarsDisabled.jsp'. Fisheye: No comparison available. Pass `N' to diff? Index: lams_tool_forum/web/jsps/monitoring/summary.jsp =================================================================== RCS file: /usr/local/cvsroot/lams_tool_forum/web/jsps/monitoring/summary.jsp,v diff -u -r1.15.10.1 -r1.15.10.2 --- lams_tool_forum/web/jsps/monitoring/summary.jsp 28 Oct 2010 07:49:28 -0000 1.15.10.1 +++ lams_tool_forum/web/jsps/monitoring/summary.jsp 3 Mar 2011 19:43:35 -0000 1.15.10.2 @@ -97,6 +97,23 @@ + + + + + + + + + + + + + + + + +