Index: lams_tool_gmap/src/java/org/lamsfoundation/lams/tool/gmap/web/actions/LearningAction.java
===================================================================
diff -u -r71dee7d765407942d4d1d88cba29319277e40b20 -r2e5708a7cd242f72aecf91251e52dde68a72017f
--- lams_tool_gmap/src/java/org/lamsfoundation/lams/tool/gmap/web/actions/LearningAction.java (.../LearningAction.java) (revision 71dee7d765407942d4d1d88cba29319277e40b20)
+++ lams_tool_gmap/src/java/org/lamsfoundation/lams/tool/gmap/web/actions/LearningAction.java (.../LearningAction.java) (revision 2e5708a7cd242f72aecf91251e52dde68a72017f)
@@ -156,6 +156,11 @@
return mapping.findForward("gmap");
}
+ /**
+ * Get the current user
+ * @param toolSessionId
+ * @return
+ */
private GmapUser getCurrentUser(Long toolSessionId) {
UserDTO user = (UserDTO) SessionManager.getSession().getAttribute(
AttributeNames.USER);
@@ -223,7 +228,15 @@
return null; // TODO need to return proper page.
}
-
+ /**
+ * This saves any new/edited markers on the map, without finishing the activity
+ * @param mapping
+ * @param form
+ * @param request
+ * @param response
+ * @return
+ * @throws Exception
+ */
public ActionForward saveMarkers(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) throws Exception
{
@@ -245,7 +258,6 @@
// update the marker list
Gmap gmap = gmapSession.getGmap();
gmapService.updateMarkerListFromXML(learningForm.getMarkersXML(), gmap, gmapUser, false, gmapSession);
- //updateMarkerListFromXML(learningForm.getMarkersXML(), gmap, gmapUser, gmapSession);
} else {
log.error("saveMarkers(): couldn't find GmapUser with id: "
Index: lams_tool_gmap/src/java/org/lamsfoundation/lams/tool/gmap/web/actions/MonitoringAction.java
===================================================================
diff -u -rfb0eec778efbbc27bfbd1fb926b91bc2f10e6860 -r2e5708a7cd242f72aecf91251e52dde68a72017f
--- lams_tool_gmap/src/java/org/lamsfoundation/lams/tool/gmap/web/actions/MonitoringAction.java (.../MonitoringAction.java) (revision fb0eec778efbbc27bfbd1fb926b91bc2f10e6860)
+++ lams_tool_gmap/src/java/org/lamsfoundation/lams/tool/gmap/web/actions/MonitoringAction.java (.../MonitoringAction.java) (revision 2e5708a7cd242f72aecf91251e52dde68a72017f)
@@ -34,10 +34,16 @@
import org.lamsfoundation.lams.tool.gmap.dto.GmapDTO;
import org.lamsfoundation.lams.tool.gmap.dto.GmapSessionDTO;
import org.lamsfoundation.lams.tool.gmap.model.Gmap;
+import org.lamsfoundation.lams.tool.gmap.model.GmapSession;
+import org.lamsfoundation.lams.tool.gmap.model.GmapUser;
import org.lamsfoundation.lams.tool.gmap.service.IGmapService;
import org.lamsfoundation.lams.tool.gmap.service.GmapServiceProxy;
+import org.lamsfoundation.lams.tool.gmap.util.GmapException;
+import org.lamsfoundation.lams.tool.gmap.web.forms.MonitoringForm;
+import org.lamsfoundation.lams.usermanagement.dto.UserDTO;
import org.lamsfoundation.lams.util.WebUtil;
import org.lamsfoundation.lams.web.action.LamsDispatchAction;
+import org.lamsfoundation.lams.web.session.SessionManager;
import org.lamsfoundation.lams.web.util.AttributeNames;
/**
@@ -97,4 +103,70 @@
.getServlet().getServletContext());
}
}
+
+ /**
+ * Allows teachers to edit/remove existing markers
+ * @param mapping
+ * @param form
+ * @param request
+ * @param response
+ * @return
+ * @throws Exception
+ */
+ public ActionForward saveMarkers(ActionMapping mapping, ActionForm form,
+ HttpServletRequest request, HttpServletResponse response) throws Exception
+ {
+
+ MonitoringForm monitoringForm = (MonitoringForm) form;
+ Long toolSessionID = monitoringForm.getToolSessionID();
+ //Long toolSessionID = WebUtil.readLongParam(request, "toolSessionID");
+
+ GmapUser gmapUser = getCurrentUser(toolSessionID);
+
+ if (gmapUser != null) {
+
+ //MonitoringForm monitoringForm = (MonitoringForm) form;
+
+ // Retrieve the session and content.
+ GmapSession gmapSession = gmapService.getSessionBySessionId(toolSessionID);
+ if (gmapSession == null) {
+ throw new GmapException("Cannot retreive session with toolSessionID"+ toolSessionID);
+ }
+
+ // update the marker list
+ Gmap gmap = gmapSession.getGmap();
+ gmapService.updateMarkerListFromXML(monitoringForm.getMarkersXML(), gmap, gmapUser, true, gmapSession);
+
+ } else {
+ log.error("saveMarkers(): couldn't find GmapUser with id: "
+ + gmapUser.getUserId() + "and toolSessionID: "
+ + toolSessionID);
+ }
+
+ return unspecified(mapping, form, request, response);
+ }
+
+ /**
+ * Get the current user
+ * @param toolSessionId
+ * @return
+ */
+ private GmapUser getCurrentUser(Long toolSessionId) {
+ UserDTO user = (UserDTO) SessionManager.getSession().getAttribute(
+ AttributeNames.USER);
+
+ // attempt to retrieve user using userId and toolSessionId
+ GmapUser gmapUser = gmapService
+ .getUserByUserIdAndSessionId(new Long(user.getUserID()
+ .intValue()), toolSessionId);
+
+ if (gmapUser == null) {
+ GmapSession gmapSession = gmapService
+ .getSessionBySessionId(toolSessionId);
+ gmapUser = gmapService.createGmapUser(user,
+ gmapSession);
+ }
+
+ return gmapUser;
+ }
}
Index: lams_tool_gmap/src/java/org/lamsfoundation/lams/tool/gmap/web/forms/MonitoringForm.java
===================================================================
diff -u -r9ed689d51b8f41ba820bd7e6be8e3253703096a8 -r2e5708a7cd242f72aecf91251e52dde68a72017f
--- lams_tool_gmap/src/java/org/lamsfoundation/lams/tool/gmap/web/forms/MonitoringForm.java (.../MonitoringForm.java) (revision 9ed689d51b8f41ba820bd7e6be8e3253703096a8)
+++ lams_tool_gmap/src/java/org/lamsfoundation/lams/tool/gmap/web/forms/MonitoringForm.java (.../MonitoringForm.java) (revision 2e5708a7cd242f72aecf91251e52dde68a72017f)
@@ -37,6 +37,9 @@
String dispatch;
boolean teacherVisible;
Long toolSessionID;
+ String markersXML;
+ Long toolContentID;
+ String contentFolderID;
// editing message page.
Long messageUID;
@@ -79,5 +82,22 @@
public void setMessageHidden(boolean messageHidden) {
this.messageHidden = messageHidden;
}
-
+ public String getMarkersXML() {
+ return markersXML;
+ }
+ public void setMarkersXML(String markersXML) {
+ this.markersXML = markersXML;
+ }
+ public Long getToolContentID() {
+ return toolContentID;
+ }
+ public void setToolContentID(Long toolContentID) {
+ this.toolContentID = toolContentID;
+ }
+ public String getContentFolderID() {
+ return contentFolderID;
+ }
+ public void setContentFolderID(String contentFolderID) {
+ this.contentFolderID = contentFolderID;
+ }
}
Index: lams_tool_gmap/web/common/learnerheader.jsp
===================================================================
diff -u -rbd7ebfdcdd0361d3b1d07f7cec1f296033473452 -r2e5708a7cd242f72aecf91251e52dde68a72017f
--- lams_tool_gmap/web/common/learnerheader.jsp (.../learnerheader.jsp) (revision bd7ebfdcdd0361d3b1d07f7cec1f296033473452)
+++ lams_tool_gmap/web/common/learnerheader.jsp (.../learnerheader.jsp) (revision 2e5708a7cd242f72aecf91251e52dde68a72017f)
@@ -46,7 +46,6 @@
var currUserId;
var userMarkerCount =0;
var limitMarkers = ${gmapDTO.limitMarkers};
- var markerLimit = 0;
var markerLimit = ${gmapDTO.maxMarkers};
Index: lams_tool_gmap/web/pages/monitoring/headItems.jsp
===================================================================
diff -u -re1053836420dd4940305875bd72be4639bab407e -r2e5708a7cd242f72aecf91251e52dde68a72017f
--- lams_tool_gmap/web/pages/monitoring/headItems.jsp (.../headItems.jsp) (revision e1053836420dd4940305875bd72be4639bab407e)
+++ lams_tool_gmap/web/pages/monitoring/headItems.jsp (.../headItems.jsp) (revision 2e5708a7cd242f72aecf91251e52dde68a72017f)
@@ -5,9 +5,11 @@
-
<%@ include file="/includes/jsp/mapFunctions.jsp"%>
+<%-- learning javascript map functions library is sufficient for monitor --%>
+
+
-
-
-
-
-
-
-
Index: lams_tool_gmap/web/pages/monitoring/summary.jsp
===================================================================
diff -u -rd697a4de98c3915e665e06207c1e382f24a7ff79 -r2e5708a7cd242f72aecf91251e52dde68a72017f
--- lams_tool_gmap/web/pages/monitoring/summary.jsp (.../summary.jsp) (revision d697a4de98c3915e665e06207c1e382f24a7ff79)
+++ lams_tool_gmap/web/pages/monitoring/summary.jsp (.../summary.jsp) (revision 2e5708a7cd242f72aecf91251e52dde68a72017f)
@@ -2,6 +2,7 @@
+
@@ -147,78 +148,96 @@
-
-
-
+
+
+
+
+
+
+
+
+
+ |
+
+
+ |
+
+
+
+ No groups found for lesson. |
+
+
+
+
+ ${session.sessionName}
+ |
+
+ ${session.numberOfLearners}
+ |
+
+
+
+
-
-
-
-
- |
-
-
- |
-
-
-
- No groups found for lesson. |
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
- |
-
-
-
-
-
- |
-
-
-
-
-
-
-
-
+