Index: lams_build/lib/lams/lams.jar
===================================================================
diff -u -rf026a3ceb687c0f4072980a88f37480a503c1199 -rec25cec0aae2211ee71688230aaa0dfd309018ad
Binary files differ
Index: lams_central/src/java/org/lamsfoundation/lams/web/RatingServlet.java
===================================================================
diff -u -r0cf0678d1f9a5cda177b0521808cfe0dfa8e5307 -rec25cec0aae2211ee71688230aaa0dfd309018ad
--- lams_central/src/java/org/lamsfoundation/lams/web/RatingServlet.java (.../RatingServlet.java) (revision 0cf0678d1f9a5cda177b0521808cfe0dfa8e5307)
+++ lams_central/src/java/org/lamsfoundation/lams/web/RatingServlet.java (.../RatingServlet.java) (revision ec25cec0aae2211ee71688230aaa0dfd309018ad)
@@ -83,7 +83,6 @@
} else {
float rating = Float.parseFloat((String) request.getParameter("rate"));
- boolean hasRatingLimists = WebUtil.readBooleanParam(request, "hasRatingLimists", false);
RatingCriteriaDTO averageRatingDTO = ratingService.rateItem(criteria, userId, itemId, rating);
@@ -92,18 +91,21 @@
JSONObject.put("userRating", numberFormat.format(rating));
JSONObject.put("averageRating", averageRatingDTO.getAverageRating());
JSONObject.put("numberOfVotes", averageRatingDTO.getNumberOfVotes());
+ }
+
- // refresh countRatedItems in case there is rating limit set
- if (hasRatingLimists) {
- // as long as this can be requested only for LEARNER_ITEM_CRITERIA_TYPE type, cast Criteria
- LearnerItemRatingCriteria learnerItemRatingCriteria = (LearnerItemRatingCriteria) criteria;
- Long toolContentId = learnerItemRatingCriteria.getToolContentId();
+ boolean hasRatingLimits = WebUtil.readBooleanParam(request, "hasRatingLimits", false);
- int countRatedItems = ratingService.getCountItemsRatedByActivityAndUser(toolContentId, userId);
- JSONObject.put("countRatedItems", countRatedItems);
- }
+ // refresh countRatedItems in case there is rating limit set
+ if (hasRatingLimits) {
+ // as long as this can be requested only for LEARNER_ITEM_CRITERIA_TYPE type, cast Criteria
+ LearnerItemRatingCriteria learnerItemRatingCriteria = (LearnerItemRatingCriteria) criteria;
+ Long toolContentId = learnerItemRatingCriteria.getToolContentId();
+ int countRatedItems = ratingService.getCountItemsRatedByUser(toolContentId, userId);
+ JSONObject.put("countRatedItems", countRatedItems);
}
+
} catch (JSONException e) {
throw new ServletException(e);
}
Index: lams_central/web/css/defaultHTML.css
===================================================================
diff -u -r523ee42825f76a1a82e0b3cae120a2d35de9f36b -rec25cec0aae2211ee71688230aaa0dfd309018ad
--- lams_central/web/css/defaultHTML.css (.../defaultHTML.css) (revision 523ee42825f76a1a82e0b3cae120a2d35de9f36b)
+++ lams_central/web/css/defaultHTML.css (.../defaultHTML.css) (revision ec25cec0aae2211ee71688230aaa0dfd309018ad)
@@ -1723,3 +1723,6 @@
div.delete-arrow {
background-image: url('../images/disposal.gif');
}
+.gray-color{
+ color: gray;
+}
Index: lams_central/web/css/jquery.jRating.css
===================================================================
diff -u -r0cf0678d1f9a5cda177b0521808cfe0dfa8e5307 -rec25cec0aae2211ee71688230aaa0dfd309018ad
--- lams_central/web/css/jquery.jRating.css (.../jquery.jRating.css) (revision 0cf0678d1f9a5cda177b0521808cfe0dfa8e5307)
+++ lams_central/web/css/jquery.jRating.css (.../jquery.jRating.css) (revision ec25cec0aae2211ee71688230aaa0dfd309018ad)
@@ -63,6 +63,10 @@
padding: 15px;
margin: 10px 0;
}
+.rating-info{
+ margin-top: 0;
+ margin-bottom: 12px;
+}
/** Remove the following once we move all tools to use Rating.tag. **/
.rating-stars-div {float:right; padding-right: 10px; margin-top: -8px; min-height: 45px;}
Index: lams_common/conf/hibernate/mappings/org/lamsfoundation/lams/rating/RatingCriteria.hbm.xml
===================================================================
diff -u -rf026a3ceb687c0f4072980a88f37480a503c1199 -rec25cec0aae2211ee71688230aaa0dfd309018ad
--- lams_common/conf/hibernate/mappings/org/lamsfoundation/lams/rating/RatingCriteria.hbm.xml (.../RatingCriteria.hbm.xml) (revision f026a3ceb687c0f4072980a88f37480a503c1199)
+++ lams_common/conf/hibernate/mappings/org/lamsfoundation/lams/rating/RatingCriteria.hbm.xml (.../RatingCriteria.hbm.xml) (revision ec25cec0aae2211ee71688230aaa0dfd309018ad)
@@ -42,6 +42,14 @@
column="comments_enabled"
/>
+
+
@hibernate.class
Index: lams_common/src/java/org/lamsfoundation/lams/dbupdates/patch02040041.sql
===================================================================
diff -u -r81eee2b8465a62a56bdfbad4401dafd6554dd934 -rec25cec0aae2211ee71688230aaa0dfd309018ad
--- lams_common/src/java/org/lamsfoundation/lams/dbupdates/patch02040041.sql (.../patch02040041.sql) (revision 81eee2b8465a62a56bdfbad4401dafd6554dd934)
+++ lams_common/src/java/org/lamsfoundation/lams/dbupdates/patch02040041.sql (.../patch02040041.sql) (revision ec25cec0aae2211ee71688230aaa0dfd309018ad)
@@ -15,6 +15,7 @@
, title VARCHAR(255)
, rating_criteria_type_id INT(11) NOT NULL DEFAULT 0
, comments_enabled TINYINT(1) NOT NULL DEFAULT 0
+ , comments_min_words_limit INT(11) DEFAULT 0
, order_id INT(11) NOT NULL
, tool_content_id BIGINT(20)
, item_id BIGINT(20)
Index: lams_common/src/java/org/lamsfoundation/lams/rating/dao/IRatingDAO.java
===================================================================
diff -u -rf026a3ceb687c0f4072980a88f37480a503c1199 -rec25cec0aae2211ee71688230aaa0dfd309018ad
--- lams_common/src/java/org/lamsfoundation/lams/rating/dao/IRatingDAO.java (.../IRatingDAO.java) (revision f026a3ceb687c0f4072980a88f37480a503c1199)
+++ lams_common/src/java/org/lamsfoundation/lams/rating/dao/IRatingDAO.java (.../IRatingDAO.java) (revision ec25cec0aae2211ee71688230aaa0dfd309018ad)
@@ -31,27 +31,29 @@
public interface IRatingDAO {
void saveOrUpdate(Object object);
-
+
Rating getRating(Long ratingCriteriaId, Integer userId, Long itemId);
-
+
/**
* Returns rating statistics by particular item
+ *
* @param itemId
* @return
*/
RatingCriteriaDTO getRatingAverageDTOByItem(Long ratingCriteriaId, Long itemId);
-
+
RatingCriteriaDTO getRatingAverageDTOByUser(Long ratingCriteriaId, Long itemId, Integer userId);
-
+
Rating get(Long uid);
-
+
/**
- * Returns number of images rated by specified user in a current activity. Applicable only for RatingCriterias of LEARNER_ITEM_CRITERIA_TYPE type.
+ * Returns number of images rated by specified user in a current activity. It counts comments as ratings. This method
+ * is applicable only for RatingCriterias of LEARNER_ITEM_CRITERIA_TYPE type.
*
* @param toolContentId
* @param userId
* @return
*/
- int getCountItemsRatedByActivityAndUser(Long toolContentId, Integer userId);
+ int getCountItemsRatedByUser(final Long toolContentId, final Integer userId);
}
Index: lams_common/src/java/org/lamsfoundation/lams/rating/dao/hibernate/RatingCommentDAO.java
===================================================================
diff -u -rf026a3ceb687c0f4072980a88f37480a503c1199 -rec25cec0aae2211ee71688230aaa0dfd309018ad
--- lams_common/src/java/org/lamsfoundation/lams/rating/dao/hibernate/RatingCommentDAO.java (.../RatingCommentDAO.java) (revision f026a3ceb687c0f4072980a88f37480a503c1199)
+++ lams_common/src/java/org/lamsfoundation/lams/rating/dao/hibernate/RatingCommentDAO.java (.../RatingCommentDAO.java) (revision ec25cec0aae2211ee71688230aaa0dfd309018ad)
@@ -28,7 +28,9 @@
import org.lamsfoundation.lams.dao.hibernate.BaseDAO;
import org.lamsfoundation.lams.rating.dao.IRatingCommentDAO;
import org.lamsfoundation.lams.rating.dto.RatingCriteriaDTO;
+import org.lamsfoundation.lams.rating.model.Rating;
import org.lamsfoundation.lams.rating.model.RatingComment;
+import org.lamsfoundation.lams.rating.model.ToolActivityRatingCriteria;
public class RatingCommentDAO extends BaseDAO implements IRatingCommentDAO {
private static final String FIND_RATING_BY_CRITERIA_AND_USER_AND_ITEM = "FROM " + RatingComment.class.getName()
@@ -37,6 +39,11 @@
private static final String FIND_COMMENTS_BY_CRITERIA_AND_ITEM = "FROM " + RatingComment.class.getName()
+ " AS r where r.ratingCriteria.ratingCriteriaId=? AND r.itemId=?";
+// private static final String COUNT_COMMENTS_BY_ITEM_AND_USER = "SELECT COUNT(r) FROM "
+// + RatingComment.class.getName()
+// + " AS r "
+// + " WHERE r.ratingCriteria.toolContentId = ? AND r.ratingCriteria.commentsEnabled IS TRUE AND r.itemId =? AND r.learner.userId =?";
+
private List getCommentsByCriteriaAndItem(Long ratingCriteriaId, Long itemId) {
return (List) (getHibernateTemplate().find(FIND_COMMENTS_BY_CRITERIA_AND_ITEM, new Object[] {
ratingCriteriaId, itemId }));
@@ -63,4 +70,15 @@
criteriaDto.setRatingComments(ratingComments);
return criteriaDto;
}
+
+// @Override
+// public boolean isUserCommentedItem(Long toolContentId, Long itemId, Integer userId) {
+// List list = getHibernateTemplate().find(COUNT_COMMENTS_BY_ITEM_AND_USER,
+// new Object[] { toolContentId, itemId, userId });
+// if (list == null || list.size() == 0) {
+// return false;
+// } else {
+// return ((Number) list.get(0)).intValue() > 0;
+// }
+// }
}
Index: lams_common/src/java/org/lamsfoundation/lams/rating/dao/hibernate/RatingDAO.java
===================================================================
diff -u -rf026a3ceb687c0f4072980a88f37480a503c1199 -rec25cec0aae2211ee71688230aaa0dfd309018ad
--- lams_common/src/java/org/lamsfoundation/lams/rating/dao/hibernate/RatingDAO.java (.../RatingDAO.java) (revision f026a3ceb687c0f4072980a88f37480a503c1199)
+++ lams_common/src/java/org/lamsfoundation/lams/rating/dao/hibernate/RatingDAO.java (.../RatingDAO.java) (revision ec25cec0aae2211ee71688230aaa0dfd309018ad)
@@ -26,14 +26,21 @@
package org.lamsfoundation.lams.rating.dao.hibernate;
import java.text.NumberFormat;
+import java.util.HashSet;
import java.util.List;
import java.util.Locale;
+import java.util.Set;
+import org.hibernate.HibernateException;
+import org.hibernate.Session;
import org.lamsfoundation.lams.dao.hibernate.BaseDAO;
import org.lamsfoundation.lams.rating.dao.IRatingDAO;
import org.lamsfoundation.lams.rating.dto.RatingCriteriaDTO;
import org.lamsfoundation.lams.rating.model.Rating;
+import org.lamsfoundation.lams.rating.model.RatingComment;
import org.lamsfoundation.lams.rating.model.ToolActivityRatingCriteria;
+import org.springframework.orm.hibernate3.HibernateCallback;
+import org.springframework.orm.hibernate3.HibernateTemplate;
public class RatingDAO extends BaseDAO implements IRatingDAO {
@@ -49,12 +56,13 @@
private static final String FIND_RATING_AVERAGE_BY_ITEM = "SELECT AVG(r.rating), COUNT(*) FROM "
+ Rating.class.getName() + " AS r where r.ratingCriteria.ratingCriteriaId=? AND r.itemId=?";
- private static final String COUNT_ITEMS_RATED_BY_ACTIVITY_AND_USER = "SELECT COUNT(DISTINCT r.itemId) FROM "
- + Rating.class.getName()
- + " AS r, "
- + ToolActivityRatingCriteria.class.getName()
- + " AS cr "
- + " WHERE r.ratingCriteria.ratingCriteriaId = cr.ratingCriteriaId AND cr.toolContentId = ? AND r.learner.userId =?";
+ private static final String COUNT_ITEMS_RATED_BY_ACTIVITY_AND_USER = "SELECT COUNT(DISTINCT r.itemId)+(SELECT COUNT(comment) FROM "
+ + RatingComment.class.getName()
+ + " AS comment "
+ + " WHERE comment.ratingCriteria.toolContentId = :toolContentId AND comment.learner.userId =:userId AND comment.itemId =:itemId AND cr.commentsEnabled IS TRUE ) FROM "
+ + Rating.class.getName()
+ + " AS r "
+ + " WHERE r.ratingCriteria.toolContentId = :toolContentId AND r.learner.userId =:userId";
@Override
public void saveOrUpdate(Object object) {
@@ -131,14 +139,26 @@
}
@Override
- public int getCountItemsRatedByActivityAndUser(Long toolContentId, Integer userId) {
+ public int getCountItemsRatedByUser(final Long toolContentId, final Integer userId) {
+
+ //unions don't work in HQL so doing 2 separate DB queries (http://stackoverflow.com/a/3940445)
+ String FIND_ITEM_IDS_RATED_BY_USER = "SELECT DISTINCT r.itemId FROM " + Rating.class.getName() + " AS r "
+ + " WHERE r.ratingCriteria.toolContentId = :toolContentId AND r.learner.userId =:userId";
- List list = getHibernateTemplate().find(COUNT_ITEMS_RATED_BY_ACTIVITY_AND_USER,
- new Object[] { toolContentId, userId });
- if (list == null || list.size() == 0) {
- return 0;
- } else {
- return ((Number) list.get(0)).intValue();
- }
+ String FIND_ITEM_IDS_COMMENTED_BY_USER = "SELECT DISTINCT comment.itemId FROM "
+ + RatingComment.class.getName()
+ + " AS comment "
+ + " WHERE comment.ratingCriteria.toolContentId = :toolContentId AND comment.learner.userId =:userId AND comment.ratingCriteria.commentsEnabled IS TRUE";
+
+ List ratedItemIds = this.getSession().createQuery(FIND_ITEM_IDS_RATED_BY_USER)
+ .setLong("toolContentId", toolContentId).setInteger("userId", userId).list();
+
+ List commentedItemIds = this.getSession().createQuery(FIND_ITEM_IDS_COMMENTED_BY_USER)
+ .setLong("toolContentId", toolContentId).setInteger("userId", userId).list();
+
+ Set unionItemIds = new HashSet(ratedItemIds);
+ unionItemIds.addAll(commentedItemIds);
+
+ return unionItemIds.size();
}
}
Index: lams_common/src/java/org/lamsfoundation/lams/rating/dto/RatingCriteriaDTO.java
===================================================================
diff -u -rf026a3ceb687c0f4072980a88f37480a503c1199 -rec25cec0aae2211ee71688230aaa0dfd309018ad
--- lams_common/src/java/org/lamsfoundation/lams/rating/dto/RatingCriteriaDTO.java (.../RatingCriteriaDTO.java) (revision f026a3ceb687c0f4072980a88f37480a503c1199)
+++ lams_common/src/java/org/lamsfoundation/lams/rating/dto/RatingCriteriaDTO.java (.../RatingCriteriaDTO.java) (revision ec25cec0aae2211ee71688230aaa0dfd309018ad)
@@ -41,6 +41,7 @@
//comments rating properties
private List ratingComments;
+ private int commentsMinWordsLimit;
public RatingCriteriaDTO() {
}
@@ -97,5 +98,13 @@
public void setRatingComments(List ratingComments) {
this.ratingComments = ratingComments;
}
+
+ public int getCommentsMinWordsLimit() {
+ return commentsMinWordsLimit;
+ }
+
+ public void setCommentsMinWordsLimit(int commentsMinWordsLimit) {
+ this.commentsMinWordsLimit = commentsMinWordsLimit;
+ }
}
Index: lams_common/src/java/org/lamsfoundation/lams/rating/model/RatingCriteria.java
===================================================================
diff -u -rf026a3ceb687c0f4072980a88f37480a503c1199 -rec25cec0aae2211ee71688230aaa0dfd309018ad
--- lams_common/src/java/org/lamsfoundation/lams/rating/model/RatingCriteria.java (.../RatingCriteria.java) (revision f026a3ceb687c0f4072980a88f37480a503c1199)
+++ lams_common/src/java/org/lamsfoundation/lams/rating/model/RatingCriteria.java (.../RatingCriteria.java) (revision ec25cec0aae2211ee71688230aaa0dfd309018ad)
@@ -84,6 +84,8 @@
private Integer ratingCriteriaTypeId;
private boolean commentsEnabled;
+
+ private int commentsMinWordsLimit;
// ---------------------------------------------------------------------
// Object constructors
@@ -179,7 +181,15 @@
public void setCommentsEnabled(boolean commentsEnabled) {
this.commentsEnabled = commentsEnabled;
}
+
+ public int getCommentsMinWordsLimit() {
+ return commentsMinWordsLimit;
+ }
+ public void setCommentsMinWordsLimit(int commentsMinWordsLimit) {
+ this.commentsMinWordsLimit = commentsMinWordsLimit;
+ }
+
@Override
public String toString() {
return new ToStringBuilder(this).append("ratingCriteriaId", ratingCriteriaId).toString();
Index: lams_common/src/java/org/lamsfoundation/lams/rating/service/IRatingService.java
===================================================================
diff -u -rf026a3ceb687c0f4072980a88f37480a503c1199 -rec25cec0aae2211ee71688230aaa0dfd309018ad
--- lams_common/src/java/org/lamsfoundation/lams/rating/service/IRatingService.java (.../IRatingService.java) (revision f026a3ceb687c0f4072980a88f37480a503c1199)
+++ lams_common/src/java/org/lamsfoundation/lams/rating/service/IRatingService.java (.../IRatingService.java) (revision ec25cec0aae2211ee71688230aaa0dfd309018ad)
@@ -33,34 +33,18 @@
public interface IRatingService {
-// Long createRating(Long id, Integer idType, String signature, Integer userID, String title, String entry);
-//
-// TreeMap> getEntryByLesson(Integer userID, Integer idType);
-//
-// List getEntry(Long id, Integer idType, String signature, Integer userID);
-//
-// List getEntry(Long id, Integer idType, String signature);
-//
-// List getEntry(Long id, Integer idType, Integer userID);
-//
-// List getEntry(Integer userID);
-//
-// List getEntry(Integer userID, Integer idType);
-//
-// List getEntry(Integer userID, Long lessonID);
-
void saveOrUpdateRating(Rating rating);
-
+
void saveOrUpdateRatingCriteria(RatingCriteria criteria);
-
+
void deleteRatingCriteria(Long ratingCriteriaId);
-
+
List getCriteriasByToolContentId(Long toolContentId);
-
+
RatingCriteria getCriteriaByCriteriaId(Long ratingCriteriaId);
-
+
RatingCriteria getCriteriaByCriteriaId(Long ratingCriteriaId, Class clasz);
-
+
/**
* Return Rating by the given itemId and userId.
*
@@ -77,20 +61,21 @@
* @return
*/
List getRatingsByItem(Long itemId);
-
+
RatingCriteriaDTO rateItem(RatingCriteria criteria, Integer userId, Long itemId, float ratingFloat);
-
+
void commentItem(RatingCriteria ratingCriteria, Integer userId, Long itemId, String comment);
-
+
RatingCriteriaDTO getCriteriaDTOByUser(RatingCriteria criteria, Long itemId, Integer userId);
-
+
/**
- * Returns number of images rated by specified user in a current activity. Applicable only for RatingCriterias of LEARNER_ITEM_CRITERIA_TYPE type.
+ * Returns number of images rated by specified user in a current activity. It counts comments as ratings. This
+ * method is applicable only for RatingCriterias of LEARNER_ITEM_CRITERIA_TYPE type.
*
* @param toolContentId
* @param userId
* @return
*/
- int getCountItemsRatedByActivityAndUser(Long toolContentId, Integer userId);
+ int getCountItemsRatedByUser(final Long toolContentId, final Integer userId);
}
Index: lams_common/src/java/org/lamsfoundation/lams/rating/service/RatingService.java
===================================================================
diff -u -rf026a3ceb687c0f4072980a88f37480a503c1199 -rec25cec0aae2211ee71688230aaa0dfd309018ad
--- lams_common/src/java/org/lamsfoundation/lams/rating/service/RatingService.java (.../RatingService.java) (revision f026a3ceb687c0f4072980a88f37480a503c1199)
+++ lams_common/src/java/org/lamsfoundation/lams/rating/service/RatingService.java (.../RatingService.java) (revision ec25cec0aae2211ee71688230aaa0dfd309018ad)
@@ -64,8 +64,8 @@
}
@Override
- public int getCountItemsRatedByActivityAndUser(Long toolContentId, Integer userId) {
- return ratingDAO.getCountItemsRatedByActivityAndUser(toolContentId, userId);
+ public int getCountItemsRatedByUser(final Long toolContentId, final Integer userId) {
+ return ratingDAO.getCountItemsRatedByUser(toolContentId, userId);
}
@Override
@@ -123,6 +123,7 @@
RatingCriteriaDTO criteriaDto;
if (criteria.isCommentsEnabled()) {
criteriaDto = ratingCommentDAO.getCommentsRatingDTO(criteriaId, itemId, userId);
+ criteriaDto.setCommentsMinWordsLimit(criteria.getCommentsMinWordsLimit());
} else {
criteriaDto = ratingDAO.getRatingAverageDTOByUser(criteriaId, itemId, userId);
Index: lams_common/src/java/org/lamsfoundation/lams/tool/OutputFactory.java
===================================================================
diff -u -r1a5446e3a1f962f1bb831c1bbaef14acf9d3635c -rec25cec0aae2211ee71688230aaa0dfd309018ad
--- lams_common/src/java/org/lamsfoundation/lams/tool/OutputFactory.java (.../OutputFactory.java) (revision 1a5446e3a1f962f1bb831c1bbaef14acf9d3635c)
+++ lams_common/src/java/org/lamsfoundation/lams/tool/OutputFactory.java (.../OutputFactory.java) (revision ec25cec0aae2211ee71688230aaa0dfd309018ad)
@@ -201,7 +201,7 @@
Object endValue, Object complexValue, Boolean showConditionNameOnly, Class valueClass) {
ToolOutputDefinition definition = new ToolOutputDefinition();
definition.setName(definitionName);
- definition.setDescription(getI18NText(definitionName, true));
+ definition.setDescription(definitionName);
definition.setType(type);
definition.setStartValue(startValue);
definition.setEndValue(endValue);
Index: lams_tool_images/conf/language/lams/ApplicationResources_en_AU.properties
===================================================================
diff -u -r0cf0678d1f9a5cda177b0521808cfe0dfa8e5307 -rec25cec0aae2211ee71688230aaa0dfd309018ad
--- lams_tool_images/conf/language/lams/ApplicationResources_en_AU.properties (.../ApplicationResources_en_AU.properties) (revision 0cf0678d1f9a5cda177b0521808cfe0dfa8e5307)
+++ lams_tool_images/conf/language/lams/ApplicationResources_en_AU.properties (.../ApplicationResources_en_AU.properties) (revision ec25cec0aae2211ee71688230aaa0dfd309018ad)
@@ -172,7 +172,6 @@
label.add.criteria =Add Criteria
label.your.rating =Your rating is {0}
Avg rating {1} out of {2} votes
label.average.rating =Average rating {0}/{1} votes
-
label.rate.limits.reminder =Rating limitation: Minimum {0} and Maximum {1}.
label.rate.limits.topic.reminder =You have rated {0} images already.
label.rate.limits.reminder.min = You must rate at least {0} images.
@@ -182,5 +181,7 @@
label.maximum =Maximum:
label.no.minimum =No minimum
label.no.maximum =No maximum
+label.minimum.number.words =Minimum number of words in a comment {0}
+warning.minimum.number.words =There is a minimum required number of words in a comment: {0}. So far you've entered {1} word(s).
#======= End labels: Exported 161 labels for en AU =====
Index: lams_tool_images/src/java/org/lamsfoundation/lams/tool/imageGallery/service/IImageGalleryService.java
===================================================================
diff -u -rf026a3ceb687c0f4072980a88f37480a503c1199 -rec25cec0aae2211ee71688230aaa0dfd309018ad
--- lams_tool_images/src/java/org/lamsfoundation/lams/tool/imageGallery/service/IImageGalleryService.java (.../IImageGalleryService.java) (revision f026a3ceb687c0f4072980a88f37480a503c1199)
+++ lams_tool_images/src/java/org/lamsfoundation/lams/tool/imageGallery/service/IImageGalleryService.java (.../IImageGalleryService.java) (revision ec25cec0aae2211ee71688230aaa0dfd309018ad)
@@ -45,7 +45,7 @@
/**
* @author Dapeng.Ni
*
- * Interface that defines the contract that all ShareImageGallery service provider must follow.
+ * Interface that defines the contract that all ShareImageGallery service provider must follow.
*/
public interface IImageGalleryService {
@@ -122,7 +122,7 @@
* @return
*/
Set getImagesForGroup(ImageGallery imageGallery, Long sessionId);
-
+
/**
* Calculates average rating and number of rating for the current group.
*
@@ -140,31 +140,31 @@
* @return
*/
void saveOrUpdateImageGalleryItem(ImageGalleryItem item);
-
+
/**
* Delete image with the given uid from imageGallery.
*
* @param toolSessionId
* @param imageUid
*/
void deleteImage(Long toolSessionId, Long imageUid);
-
+
List getRatingCriterias(Long toolContentId);
-
+
void saveOrUpdateRatingCriteria(RatingCriteria criteria);
-
+
void deleteRatingCriteria(Long ratingCriteriaId);
-
+
List getRatingCriteriaDtos(Long contentId, Long imageUid, Long userId);
-
+
/**
- * Returns number of images rated by specified user in a current activity.
+ * Returns number of images rated by specified user in a current activity. It counts comments as ratings.
*
* @param toolContentId
* @param userId
* @return
*/
- int getCountImagesRatedByActivityAndUser(Long toolContentId, Integer userId);
+ int getCountImagesRatedByUser(Long toolContentId, Integer userId);
/**
* Save/update ImageVote.
@@ -182,22 +182,22 @@
* @return
*/
ImageGallery getImageGalleryBySessionId(Long sessionId);
-
+
/**
* Get imageComment by the given uid.
*
* @param commentUid
* @return
*/
ImageComment getImageCommentByUid(Long commentUid);
-
+
/**
* Updates imageComment by the given uid.
*
* @param comment
*/
void saveImageComment(ImageComment comment);
-
+
/**
* Delete imageComment by the given uid.
*
@@ -212,15 +212,15 @@
* @return
*/
ImageGallerySession getImageGallerySessionBySessionId(Long sessionId);
-
+
/**
* Get ImageGallery
by toolContentID.
*
* @param contentId
* @return
*/
ImageGallery getImageGalleryByContentId(Long contentId);
-
+
/**
* Returns imageVote by the given imageUid and userId
*
@@ -229,7 +229,7 @@
* @return
*/
ImageVote getImageVoteByImageAndUser(Long imageUid, Long userId);
-
+
/**
* Return number of imageVotes made by user.
*
@@ -282,7 +282,7 @@
*
* @param itemUid
* @param visible
- * true, item is visible. False, item is invisible.
+ * true, item is visible. False, item is invisible.
*/
void setItemVisible(Long itemUid, boolean visible);
@@ -291,8 +291,8 @@
*
* @param sessionId
* @param skipHide
- * true, don't get imageGallery item if its isHide
flag is true. Otherwise, get all
- * imageGallery item
+ * true, don't get imageGallery item if its isHide
flag is true. Otherwise, get all
+ * imageGallery item
* @return
*/
List>> exportBySessionId(Long sessionId, ImageGalleryUser user, boolean skipHide);
@@ -347,9 +347,9 @@
* Gets a message from imageGallery bundle. Same as
in JSP pages.
*
* @param key
- * key of the message
+ * key of the message
* @param args
- * arguments for the message
+ * arguments for the message
* @return message content
*/
String getLocalisedMessage(String key, Object[] args);
@@ -368,9 +368,9 @@
* @param item
*/
void saveOrUpdateImageGalleryConfigItem(ImageGalleryConfigItem item);
-
+
void notifyTeachersOnImageSumbit(Long sessionId, ImageGalleryUser imageGalleryUser);
-
+
/**
* Returns whether activity is grouped and therefore it is expected more than one tool session.
*
Index: lams_tool_images/src/java/org/lamsfoundation/lams/tool/imageGallery/service/ImageGalleryServiceImpl.java
===================================================================
diff -u -rf026a3ceb687c0f4072980a88f37480a503c1199 -rec25cec0aae2211ee71688230aaa0dfd309018ad
--- lams_tool_images/src/java/org/lamsfoundation/lams/tool/imageGallery/service/ImageGalleryServiceImpl.java (.../ImageGalleryServiceImpl.java) (revision f026a3ceb687c0f4072980a88f37480a503c1199)
+++ lams_tool_images/src/java/org/lamsfoundation/lams/tool/imageGallery/service/ImageGalleryServiceImpl.java (.../ImageGalleryServiceImpl.java) (revision ec25cec0aae2211ee71688230aaa0dfd309018ad)
@@ -1184,8 +1184,8 @@
}
@Override
- public int getCountImagesRatedByActivityAndUser(Long toolContentId, Integer userId) {
- return ratingService.getCountItemsRatedByActivityAndUser(toolContentId, userId);
+ public int getCountImagesRatedByUser(Long toolContentId, Integer userId) {
+ return ratingService.getCountItemsRatedByUser(toolContentId, userId);
}
// *****************************************************************************
Index: lams_tool_images/src/java/org/lamsfoundation/lams/tool/imageGallery/web/action/AuthoringAction.java
===================================================================
diff -u -rf026a3ceb687c0f4072980a88f37480a503c1199 -rec25cec0aae2211ee71688230aaa0dfd309018ad
--- lams_tool_images/src/java/org/lamsfoundation/lams/tool/imageGallery/web/action/AuthoringAction.java (.../AuthoringAction.java) (revision f026a3ceb687c0f4072980a88f37480a503c1199)
+++ lams_tool_images/src/java/org/lamsfoundation/lams/tool/imageGallery/web/action/AuthoringAction.java (.../AuthoringAction.java) (revision ec25cec0aae2211ee71688230aaa0dfd309018ad)
@@ -435,6 +435,10 @@
commentsResponsibleCriteria.setOrderId(0);
commentsResponsibleCriteria.setCommentsEnabled(true);
}
+
+ int commentsMinWordsLimit = WebUtil.readIntParam(request, "commentsMinWordsLimit");
+ commentsResponsibleCriteria.setCommentsMinWordsLimit(commentsMinWordsLimit);
+
service.saveOrUpdateRatingCriteria(commentsResponsibleCriteria);
// delete commentsRatingCriteria if it's not required
Index: lams_tool_images/src/java/org/lamsfoundation/lams/tool/imageGallery/web/action/LearningAction.java
===================================================================
diff -u -rf026a3ceb687c0f4072980a88f37480a503c1199 -rec25cec0aae2211ee71688230aaa0dfd309018ad
--- lams_tool_images/src/java/org/lamsfoundation/lams/tool/imageGallery/web/action/LearningAction.java (.../LearningAction.java) (revision f026a3ceb687c0f4072980a88f37480a503c1199)
+++ lams_tool_images/src/java/org/lamsfoundation/lams/tool/imageGallery/web/action/LearningAction.java (.../LearningAction.java) (revision ec25cec0aae2211ee71688230aaa0dfd309018ad)
@@ -223,7 +223,7 @@
// store how many items are rated
if (imageGallery.isAllowRank()) {
- int countRatedImages = service.getCountImagesRatedByActivityAndUser(imageGallery.getContentId(), userId);
+ int countRatedImages = service.getCountImagesRatedByUser(imageGallery.getContentId(), userId.intValue());
sessionMap.put(ImageGalleryConstants.ATTR_COUNT_RATED_IMAGES, countRatedImages);
}
@@ -503,13 +503,13 @@
sessionMap.put(ImageGalleryConstants.ATTR_RATING_DTOS, ratingDtos);
// store how many items are rated
- int countRatedImages = service.getCountImagesRatedByActivityAndUser(imageGallery.getContentId(), userId.intValue());
+ int countRatedImages = service.getCountImagesRatedByUser(imageGallery.getContentId(), userId.intValue());
sessionMap.put(ImageGalleryConstants.ATTR_COUNT_RATED_IMAGES, countRatedImages);
}
if (!isTeacher && imageGallery.isAllowVote()) {
boolean isVotedForThisImage = false;
- ImageVote imageVote = service.getImageVoteByImageAndUser(image.getUid(), userId);
+ ImageVote imageVote = service.getImageVoteByImageAndUser(imageUid, userId);
if (imageVote != null && imageVote.isVoted()) {
isVotedForThisImage = true;
}
Index: lams_tool_images/web/WEB-INF/tags/AuthoringRatingCriteria.tag
===================================================================
diff -u -rf026a3ceb687c0f4072980a88f37480a503c1199 -rec25cec0aae2211ee71688230aaa0dfd309018ad
--- lams_tool_images/web/WEB-INF/tags/AuthoringRatingCriteria.tag (.../AuthoringRatingCriteria.tag) (revision f026a3ceb687c0f4072980a88f37480a503c1199)
+++ lams_tool_images/web/WEB-INF/tags/AuthoringRatingCriteria.tag (.../AuthoringRatingCriteria.tag) (revision ec25cec0aae2211ee71688230aaa0dfd309018ad)
@@ -28,6 +28,7 @@
<%@ attribute name="noMaximumLabel" required="false" rtexprvalue="true" %>
<%@ attribute name="jsWarningLabel" required="false" rtexprvalue="true" %>
<%@ attribute name="allowCommentsLabel" required="false" rtexprvalue="true" %>
+<%@ attribute name="minNumberWordsLabel" required="false" rtexprvalue="true" %>
<%-- Default value for message key --%>
@@ -66,7 +67,20 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+