Index: lams_gradebook/src/java/org/lamsfoundation/lams/gradebook/dto/GBUserGridRowDTO.java
===================================================================
RCS file: /usr/local/cvsroot/lams_gradebook/src/java/org/lamsfoundation/lams/gradebook/dto/GBUserGridRowDTO.java,v
diff -u -r1.7 -r1.8
--- lams_gradebook/src/java/org/lamsfoundation/lams/gradebook/dto/GBUserGridRowDTO.java 7 Jul 2011 22:07:37 -0000 1.7
+++ lams_gradebook/src/java/org/lamsfoundation/lams/gradebook/dto/GBUserGridRowDTO.java 12 Jan 2012 12:13:49 -0000 1.8
@@ -24,6 +24,7 @@
package org.lamsfoundation.lams.gradebook.dto;
import java.util.ArrayList;
+import java.util.Date;
import org.lamsfoundation.lams.gradebook.util.GBGridView;
@@ -33,6 +34,7 @@
String feedback;
// For activity view
+ Date startDate;
String output;
String activityUrl;
@@ -69,6 +71,7 @@
ret.add(rowName);
}
ret.add(status);
+ ret.add(startDate != null ? convertDateToString(startDate, DEFAULT_DATE_FORMAT) : CELL_EMPTY);
ret.add((timeTaken != null) ? convertTimeToString(timeTaken) : CELL_EMPTY);
ret.add((output != null) ? output.toString() : CELL_EMPTY);
ret.add(feedback);
@@ -143,4 +146,12 @@
this.currentActivity = currentActivity;
}
+ public Date getStartDate() {
+ return startDate;
+ }
+
+ public void setStartDate(Date startTime) {
+ this.startDate = startTime;
+ }
+
}
Index: lams_gradebook/src/java/org/lamsfoundation/lams/gradebook/dto/GradebookGridRowDTO.java
===================================================================
RCS file: /usr/local/cvsroot/lams_gradebook/src/java/org/lamsfoundation/lams/gradebook/dto/GradebookGridRowDTO.java,v
diff -u -r1.4 -r1.5
--- lams_gradebook/src/java/org/lamsfoundation/lams/gradebook/dto/GradebookGridRowDTO.java 2 Jul 2009 08:19:17 -0000 1.4
+++ lams_gradebook/src/java/org/lamsfoundation/lams/gradebook/dto/GradebookGridRowDTO.java 12 Jan 2012 12:13:49 -0000 1.5
@@ -23,8 +23,11 @@
/* $Id$ */
package org.lamsfoundation.lams.gradebook.dto;
+import java.text.DateFormat;
import java.text.DecimalFormat;
+import java.text.SimpleDateFormat;
import java.util.ArrayList;
+import java.util.Date;
import org.lamsfoundation.lams.gradebook.util.GBGridView;
@@ -34,6 +37,9 @@
public static final String CELL_EMPTY = "-";
+ public static final DateFormat DEFAULT_DATE_FORMAT = DateFormat.getDateTimeInstance(DateFormat.SHORT,
+ DateFormat.SHORT);
+
// The id for a row, might be activityId, userId, lessonID etc
public String id;
@@ -95,6 +101,20 @@
}
}
+ /**
+ * A shared function to convert date into a readable string
+ *
+ * @param date to format
+ * @return formatted date
+ */
+ protected String convertDateToString(Date date, DateFormat format) {
+ if (date != null) {
+ DateFormat usedFormat = format == null ? DEFAULT_DATE_FORMAT : format;
+ return usedFormat.format(date);
+ }
+ return null;
+ }
+
protected String markToString() {
if (mark != null) {
if (marksAvailable != null) {
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.17 -r1.18
--- lams_gradebook/src/java/org/lamsfoundation/lams/gradebook/service/GradebookService.java 19 Aug 2011 14:00:48 -0000 1.17
+++ lams_gradebook/src/java/org/lamsfoundation/lams/gradebook/service/GradebookService.java 12 Jan 2012 12:13:48 -0000 1.18
@@ -256,6 +256,7 @@
// Set the progress
LearnerProgress learnerProgress = getLearnerProgress(lesson, learner);
gUserDTO.setStatus(getActivityStatusStr(learnerProgress, activity));
+ gUserDTO.setStartDate(getActivityStartDate(learnerProgress, activity));
gUserDTO.setTimeTaken(getActivityDuration(learnerProgress, activity));
// Get the tool outputs for this user if there are any
@@ -1113,6 +1114,24 @@
return gactivityDTO;
}
+ /**
+ * Gets activity start time, either attempted or completed
+ * @param learnerProgress
+ * @param activity
+ * @return
+ */
+ private Date getActivityStartDate(LearnerProgress learnerProgress, Activity activity) {
+ Date startDate = null;
+ if (learnerProgress != null) {
+ startDate = learnerProgress.getAttemptedActivities().get(activity);
+ if (startDate == null) {
+ CompletedActivityProgress compProg = learnerProgress.getCompletedActivities().get(activity);
+ startDate = compProg.getStartDate();
+ }
+ }
+ return startDate;
+ }
+
private Long getActivityDuration(LearnerProgress learnerProgress, Activity activity) {
if (learnerProgress != null) {
if (learnerProgress.getCompletedActivities().get(activity) != null) {
Index: lams_gradebook/web/gradebookMonitor.jsp
===================================================================
RCS file: /usr/local/cvsroot/lams_gradebook/web/gradebookMonitor.jsp,v
diff -u -r1.6 -r1.7
--- lams_gradebook/web/gradebookMonitor.jsp 13 Nov 2009 03:13:51 -0000 1.6
+++ lams_gradebook/web/gradebookMonitor.jsp 12 Jan 2012 12:13:49 -0000 1.7
@@ -324,6 +324,7 @@
'',
"",
"",
+ "",
"",
"",
"",
@@ -333,7 +334,8 @@
{name:'id', index:'id', sortable:false, editable:false, hidden:true, search:false, hidedlg:true},
{name:'marksAvailable',index:'marksAvailable', sortable:false, editable:false, hidden:true, search:false, hidedlg:true},
{name:'rowName',index:'rowName', sortable:true, editable:false},
- {name:'status', align:'center', width:30, index:'status', sortable:false, editable:false, search:false, width:50, align:"center"},
+ {name:'status', index:'status', sortable:false, editable:false, search:false, width:30, align:"center"},
+ {name:'startDate', index:'startDate', sortable:true, editable: false, hidden:true, width:60, align:"center"},
{name:'timeTaken', index:'timeTaken', sortable:true, editable: false, width:80, align:"center"},
{name:'output', index:'output', sortable:false, editable: false, search:false, width:200, hidden:true},
{name:'feedback',index:'feedback', sortable:false, editable:true, edittype:'textarea', editoptions:{rows:'4',cols:'20'} , search:false, width:200, hidden:true},