Index: lams_gradebook/src/java/org/lamsfoundation/lams/gradebook/service/GradebookService.java =================================================================== RCS file: /usr/local/cvsroot/lams_gradebook/src/java/org/lamsfoundation/lams/gradebook/service/GradebookService.java,v diff -u -r1.29 -r1.30 --- lams_gradebook/src/java/org/lamsfoundation/lams/gradebook/service/GradebookService.java 20 Dec 2012 15:07:31 -0000 1.29 +++ lams_gradebook/src/java/org/lamsfoundation/lams/gradebook/service/GradebookService.java 18 Feb 2013 13:17:29 -0000 1.30 @@ -335,8 +335,15 @@ return gradebookDAO.getGradebookUserDataForActivity(activityID, userID); } - public Double getAverageMarkForActivity(Long activityID) { - return gradebookDAO.getAverageMarkForActivity(activityID); + public Double getAverageMarkForActivity(Long activityID, Long groupID) { + //return AverageMarkForActivity if groupId is null and AverageMarkForGroupedActivity if groupId is specified + Double averageMark; + if (groupID == null) { + averageMark = gradebookDAO.getAverageMarkForActivity(activityID); + } else { + averageMark = gradebookDAO.getAverageMarkForGroupedActivity(activityID, groupID); + } + return averageMark; } public Double getAverageMarkForLesson(Long lessonID) { Index: lams_gradebook/src/java/org/lamsfoundation/lams/gradebook/service/IGradebookService.java =================================================================== RCS file: /usr/local/cvsroot/lams_gradebook/src/java/org/lamsfoundation/lams/gradebook/service/IGradebookService.java,v diff -u -r1.8 -r1.9 --- lams_gradebook/src/java/org/lamsfoundation/lams/gradebook/service/IGradebookService.java 20 Dec 2012 15:07:31 -0000 1.8 +++ lams_gradebook/src/java/org/lamsfoundation/lams/gradebook/service/IGradebookService.java 18 Feb 2013 13:17:29 -0000 1.9 @@ -157,12 +157,14 @@ GradebookUserActivity getGradebookUserActivity(Long activityID, Integer userID); /** - * Returns the average mark for a given activity + * Returns the average mark for a given activity. Activity can be grouped - then supply according groupId to receive + * AverageMarkForGroupedActivity. * * @param activityID + * @param groupID return AverageMarkForActivity if groupId is null and AverageMarkForGroupedActivity if groupId is specified * @return */ - Double getAverageMarkForActivity(Long activityID); + Double getAverageMarkForActivity(Long activityID, Long groupID); /** * Returns the average mark for a lesson Index: lams_gradebook/src/java/org/lamsfoundation/lams/gradebook/web/action/GradebookAction.java =================================================================== RCS file: /usr/local/cvsroot/lams_gradebook/src/java/org/lamsfoundation/lams/gradebook/web/action/GradebookAction.java,v diff -u -r1.6 -r1.7 --- lams_gradebook/src/java/org/lamsfoundation/lams/gradebook/web/action/GradebookAction.java 18 Feb 2013 10:39:53 -0000 1.6 +++ lams_gradebook/src/java/org/lamsfoundation/lams/gradebook/web/action/GradebookAction.java 18 Feb 2013 13:17:29 -0000 1.7 @@ -389,20 +389,21 @@ String rowID = WebUtil.readStrParam(request, AttributeNames.PARAM_ACTIVITY_ID); Long activityID = null; + Long groupID = null; // Splitting the rowID param to get the activity/group id pair String[] split = rowID.split("_"); if (split.length == 2) { activityID = Long.parseLong(split[0]); + groupID = Long.parseLong(split[1]); } else { activityID = Long.parseLong(rowID); } Activity activity = gradebookService.getActivityById(activityID); if (activity != null) { - Double averageMark = gradebookService.getAverageMarkForActivity(activityID); - + Double averageMark = gradebookService.getAverageMarkForActivity(activityID, groupID); if (averageMark != null) { writeResponse(response, CONTENT_TYPE_TEXT_PLAIN, ENCODING_UTF8, averageMark.toString());